Topaz Java API
The Topaz API is a Java library that can be used in Java applications to programmatically access and perform operations on datasets and perform JES operations, as well as launch and communicate with their own z/OS programs.
If you are using the Topaz API for plug-ins meant to be run in a Topaz Workbench environment, you should use the Topaz Workbench SDK instead.
The Compuware Topaz API Specification (Javadoc) can be found here.
Version History
Version | Release Date | Description |
---|---|---|
1.0.0 | 7/29/2014 | Initial Release of Host Services API. |
1.0.1 | 4/1/2019 | Added following additional functionality to allocate PDS or sequential dataset, create and delete members in a PDS and write to a sequential dataset or a member in a PDS. |
2.0.1 | 6/27/2019 | Renamed to Topaz API and removed Eclipse dependencies. See the migration guide for guidance on upgrading to the new API. |
2.0.2 | 7/1/2020 | Non-displayable binary data can now be read from and written to a sequential dataset or a PDS member. Non-displayable binary data is substituted with Unicode characters outside of the EBCDIC range when read, and is converted back to binary data on write. |
2.1.0 | 1/6/2021 | Added API for Generation Data Groups. |
2.2.0 | 4/1/2021 | Added APIs for finding lists of JES jobs and retrieving a job's sysout data definitions (DDs). Added APIs for reading the JES output of a job and reading the contents of a DD of a job. Added APIs to delete partitioned, sequential, migrated or VSAM datasets. Added API to execute TSO commands. |
2.5.0 | 1/1/2022 | Added APIS to read system logs, cancel a job and copy a PDS member to another member in the same PDS, or a different one. |
Dataset API
The Compuware Topaz API provides users with methods to programmatically access and perform actions on datasets and generation data groups. These API’s do not provide the capability to manipulate the Topaz Workbench UI. Sequential
, Partitioned
and VSAM
are supported.
The following actions are provided regarding datasets:
- Allocate a partitioned or sequential dataset
- Delete a partitioned, sequential, migrated or VSAM dataset
- Create or delete a PDS member
- Obtain dataset and PDS member objects by name/pattern and type
- Read the content of a sequential dataset or a PDS member
- Write content to a sequential dataset or a PDS member
- Obtain the characteristics of a dataset or the statistics of a PDS member
- Recall a migrated dataset
- Define a generation data group
- Obtain generation dataset objects from generation data groups
- Copy a PDS member to another member, or to another PDS
JES API
The Compuware Topaz API provides users with methods to programmatically perform JES actions. The following actions are provided regarding JES:
- Submit JCL
- Track a job’s status
- Obtain job objects by job name and/or owner filters
- Obtain execution and queue data of jobs
- Obtain sysout data definition (DD) objects of jobs
- Read the JES output of a job
- Read the contents of a DD of a job
- Read the currently active system log, or any available system log
- Cancel a job
z/OS User Program API
The Compuware Topaz API provides users with methods to programmatically launch and communicate with their own z/OS programs.
The following actions are provided regarding z/OS user programs:
- Launch a z/OS user program
- Write/read user-defined data to/from the z/OS user program
- Be notified of when the z/OS user program has ended
TSO Command API
The Compuware Topaz API provides users with methods to programmatically submit TSO commands The following actions are provided regarding TSO commands
- Execute a TSO command
Dependencies
The Topaz API depends on (and is packaged with) other internal Compuware libraries and 3rd party libraries. The internal Compuware libraries are likely to change without notice, and any use of them is not supported.
This is the list of dependent libraries you must include in your class path, in order to use the Topaz API:
Library | Version | Description |
---|---|---|
com.compuware.api.topaz | 2.5.0 | The Topaz API |
com.compuware.frameworks.hostservices.common | 20.9.1 | Internal Compuware library |
com.compuware.frameworks.hostservices.core.messages | 20.9.1 | Internal Compuware Library |
com.compuware.frameworks.hostservices.crypto | 20.9.1 | Internal Compuware library |
com.compuware.frameworks.hostservices.css | 20.9.1 | Internal Compuware library |
com.compuware.frameworks.hostservices.hci | 20.9.1 | Internal Compuware library |
com.compuware.frameworks.hostservices.message.resources | 20.9.1 | Internal Compuware library |
com.compuware.frameworks.nls | 20.9.1 | Internal Compuware library |
com.compuware.java.utilities | 20.9.1 | Internal Compuware library |
com.compuware.java.utilities.icu | 20.9.1 | Internal Compuware library |
ch.qos.logback.classic | 1.0.7 | 3rd party logging library |
ch.qos.logback.core | 1.0.7 | 3rd party logging library |
org.apache.commons.codec | 1.10.0 | 3rd party encoding/decoding library |
org.apache.commons.lang | 2.6.0 | 3rd party language utilities library |
org.slf4j.api | 1.7.2 | 3rd party logging library |
Coding Examples
Topaz Workbench SDK Code Snippets provides may useful examples on using the Topaz API. Though a few of the examples are specific for writing plug-ins running in a Topaz Workbench client, most of the examples are also applicable for writing Java applications.