Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom scanner implementation for Dialog Tag Language #174

Merged
merged 10 commits into from
Dec 4, 2023
Merged

Custom scanner implementation for Dialog Tag Language #174

merged 10 commits into from
Dec 4, 2023

Conversation

dennis-behm
Copy link
Member

DBB has an extensibility mechanism to contribute your own dependency scanner for languages that either is not covered by the DBB product itself or that you might use some custom syntax, that is custom to your environment.

This contribution from @campagboy is outlining how to build a customer scanner using the AbstractDependencyScanner API of DBB for the Dialog Tag Language in ISPF.

The DTL scanner comes with the java project, that you need to build with then add to the JAVA classpath.

Also combining the default DependencyScanner is possible with your own parsing logic is possible by writing a new scanner that invokes the default DependencyScanner then adds your own dependencies.

Liam Doherty and others added 6 commits July 24, 2023 15:39
Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
@dennis-behm dennis-behm marked this pull request as ready for review December 1, 2023 16:14
@dennis-behm
Copy link
Member Author

This PR has been validated by N. Latif and is (finally) ready for a review.

Copy link
Collaborator

@M-DLB M-DLB left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few comments, otherwise it looks OK.
Should the README be revised too?

* Clone the IBM/DBB repository into IDZ/Eclipse.
* Import the scanner implementation as a JAVA project
* Download the `<DBB-HOME>/lib/dbb.core_2.0.x.x.jar` package from your IBM DBB toolkit installation to your development environment
* Fix the build setup and of the scanner project.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small typo here

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix in 2adfcc5


* Clone the IBM/DBB repository into IDZ/Eclipse.
* Import the scanner implementation as a JAVA project
* Download the `<DBB-HOME>/lib/dbb.core_2.0.x.x.jar` package from your IBM DBB toolkit installation to your development environment
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should explicitly say "from your IBM DBB toolkit installation on z/OS Unix System Services to..."

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix in 2adfcc5

* Select the previously created runner configuration
* Select the export destination
* In the Library handling section, select to `Copy required libraries into a sub-folder next to the generated JAR` option
* Upload the generated JAR to z/OS Unix system services
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Copy the generated JAR to z/OS Unix system services as binary"

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix in 2adfcc5

.project Outdated
Comment on lines 1 to 11
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>dbb</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
</buildSpec>
<natures>
</natures>
</projectDescription>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to have a .project for the whole dbb repository?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix in 2adfcc5

Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
@dennis-behm
Copy link
Member Author

Thanks @M-DLB . Included your feedback via 2adfcc5.

Copy link
Collaborator

@M-DLB M-DLB left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry I missed one typo in my previous review.


Sample | Description
--- | ---
[DTL Scanner](DTL%20Scanner) | A custom scanner implementation for z/OS ISPF Dialog Tag Language to detect it's dependencies. zAppBuild contains the language script for DTL. The scanner implementation leverages regex patterns to identify the referenced include files.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small typo here: it's dependencies --> its dependencies
Sorry I missed that.

Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
Copy link
Collaborator

@M-DLB M-DLB left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thank you!

Signed-off-by: Dennis Behm <dennis.behm@de.ibm.com>
@dennis-behm dennis-behm merged commit 96b4974 into IBM:main Dec 4, 2023
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants