The LegStar Mainframe Adapter Runtime provides a general purpose remote call mechanism to mainframe programs from Java clients.
The Adapter Runtime deals with raw mainframe data. Upper level modules are in charge of converting that data to java and vice versa. Of course they can use COBOL Transformers for that purpose.
The Adapter Runtime has the capability to call single input/single output programs such as CICS commarea-driven programs but it can also call multiple input/multiple output programs such as CICS container-driven programs.
At runtime, the invoker must be configured to use one of the available transports (Sockets, HTTP, etc.).
The following mainframe side C/370 programs perform the actual call to the target program:
Some transports (such WebSphere MQ with CICS MQ Bridge) do not use the LegStar messaging and therefore do not need the LegStar z/OS modules to be installed.
The Adapter Runtime expects a configuration file such as the legstar-invoker-config.xml sample provided. A configuration file is an XML file with one endpoint per target mainframe. Read the comments in the sample to help you setup your own configuration.
The Address received by the invoker specifies which host enpoint to use. If the Address is empty, the first endpoint definition is used. The Address can also override host credentials.
Mainframe programs to call are described by configuration beans. You can build such a bean using the HostProgramProperties class which takes its input from a properties files such as the lsfileae.properties sample file provided. Such a properties file is expected to be available from the classpath.
Two host access strategies are provided: direct and pooled. With a direct access strategy, there are no intermediate engines, clients connect to the host directly. With the pooled access strategy, an Connection Pooling Engine manages a pool of connections.
The strategy chosen is configurable at the host endpoint level in the configuration file.
To select a direct access strategy you would add the following element:
<hostAccessStrategy>direct</hostAccessStrategy>
For a pooled access strategy, the element would be:
<hostAccessStrategy>pooled</hostAccessStrategy>
The host access strategy is independent from the underlying transport.
Pooling allows host connections to be reused. For details, refer to Connection Pooling Engine.
For answers to common questions about LegStar Adapter Runtime, see the FAQ.