Using the PL/I Wrapper in Command-line Mode


Command-line Options

See Using EntireX in the Designer Command-line Mode for the general command-line syntax. The table below shows the command-line options for the PL/I Wrapper.

Task Command Option Description
Generate a PL/I client from the specified IDL file. -pli:client -folder Folder where the PL/I files will be stored.
-help Display this usage message.
-target Target platform, one of BATCH_ZOS, CICS_ZOS, IMS_ZOS. See Target Platform for more information.
Generate a PL/I server from the specified IDL file. -pli:server -folder Folder where the PL/I files will be stored.
-help Display this usage message.
-target Target platform; for more information, see above.

Example Generating an RPC Client

<workbench> -pli:client /Demo/example.idl -target CICS_ZOS

where <workbench> is a placeholder for the actual EntireX design-time starter as described under Using EntireX in the Designer Command-line Mode.

The name of the Software AG IDL file includes the project name. In the example, the project Demo is used. If the IDL file name describes a file inside the Eclipse workspace, the name is case-sensitive.

If the first part of the IDL file name is not a project name in the current workspace, the IDL file name is used as a relative (based on the IDL file) or absolute file name in the file system. Thus, the IDL files do not need to be part of an Eclipse project.

If you do not specify a folder (option -folder), the generated PL/I source files (client interface objects and the RPC client declarations) will be stored in parallel to the IDL file, in the generated subfolders client and include, e.g. Demo/client and Demo/include.

Example Generating an RPC Server

<workbench> -pli:server /Demo/example.idl -target IMS_ZOS

where <workbench> is a placeholder for the actual EntireX design-time starter as described under Using EntireX in the Designer Command-line Mode.

The generated PL/I source files (server interface objects and the server (skeletons))

  • will be stored in parallel to the Software AG IDL file, in the generated subfolders server and server_stubs, e.g. Demo/server and Demo/server_stubs.

  • will overwrite existing files from a previous command-line mode generation.

    Warning:
    Take care not to overwrite an existing server implementation with a server skeleton.We recommend you move your server implementation to a different folder.

Further Examples

Windows

Example 1

<workbench> -pli:client C:\Temp\example.idl -folder src -target CICS_ZOS

Uses the IDL file C:\Temp\example.idl and generates the PL/I source files to the subfolder src of the IDL file. Slashes and backslashes are permitted in the file name. Output to standard output:

Using workspace file:/C:/myWorkspace/.
Run PL/I client wrapper with C:/Temp/example.idl and target CICS_ZOS.
Processing IDL file C:/Temp/example.idl
Store PL/I Source (1/2): C:\Temp\src/include/CALC
Store PL/I Source (2/2): C:\Temp\src/client/CALC
Exit value: 0

Example 2

<workbench> -pli:client C:\Temp\*idl -folder C:\Temp\src -target CICS_ZOS

Generates PL/I source files for all IDL files in C:\Temp.

Example 3

<workbench> -pli:client /Demo/example.idl -target CICS_ZOS

Uses the IDL file /Demo/example.idl and generates the PL/I source files in parallel to the IDL file, here to the project /Demo.

Example 4

<workbench> -pli:client -help

or

<workbench> -help -pli:client

Both show a short help for the PL/I client wrapper.

Linux

Example 1

<workbench> -pli:client /Demo/example.idl -folder src -target CICS_ZOS

If the project Demo exists in the workspace and example.idl exists in this project, this file is used. Otherwise, /Demo/example.idl is used from file system. The generated output will be stored in /Demo/src, the subfolder of /Demo.

Example 2

<workbench> -pli:client /Demo/*.idl -folder src -target CICS_ZOS

Generates PL/I client files for all IDL files in project Demo (or in folder /Demo if the project does not exist). The generated files are in /Demo/src.

Example 3

<workbench> -pli:client -help

or

<workbench> -help -pli:client

Both show a short help for the PL/I client wrapper.