public final class ECIInteractionSpec
extends java.lang.Object
implements javax.resource.cci.InteractionSpec
Constructor and Description |
---|
ECIInteractionSpec()
Default constructor.
|
ECIInteractionSpec(int verb,
java.lang.String prog)
Simple constructor.
|
ECIInteractionSpec(int verb,
java.lang.String prog,
int timeout,
int commLen,
int repLen)
Complete constructor allows specification of all properties.
|
Modifier and Type | Method and Description |
---|---|
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add a listener to those that are informed when a
bound property is changed.
|
int |
getCommareaLength()
Returns the COMMAREA length.
|
int |
getExecuteTimeout()
Returns the execute timeout.
|
java.lang.String |
getFunctionName()
Returns the function name.
|
int |
getInteractionVerb()
Returns the interaction verb.
|
int |
getReplyLength()
Returns the reply length.
|
java.lang.String |
getTPNName()
Returns the transaction name TPNName.
|
java.lang.String |
getTranName()
Returns the transaction name tranName.
|
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove a registered listener from the list.
|
void |
setCommareaLength(int length)
Sets the COMMAREA length.
|
void |
setExecuteTimeout(int time)
Sets the execute timeout.
|
void |
setFunctionName(java.lang.String name)
Sets the function name.
|
void |
setInteractionVerb(int verb)
Sets the interaction verb.
|
void |
setReplyLength(int length)
Sets the reply length.
|
void |
setTPNName(java.lang.String newTPNName)
Sets the transaction name TPNName.
|
void |
setTranName(java.lang.String newTranName)
Sets the transaction name tranName.
|
java.lang.String |
toString()
Provides a string representation of this object.
|
public ECIInteractionSpec(int verb, java.lang.String prog, int timeout, int commLen, int repLen) throws javax.resource.ResourceException
Note: The value specified for timeout will be rounded down to the nearest second except for values less than one second which will have a timeout of one second. A value less than or equal to zero will result in no timeout.
verb
- The interaction verb to use.prog
- The name of the CICS program to call.timeout
- The interaction timeout value in milliseconds.commLen
- The length of the COMMAREA being passed to CICS.repLen
- The length of reply wanted from CICS.javax.resource.ResourceException
- If there is a problem creating the InteractionSpec.public ECIInteractionSpec(int verb, java.lang.String prog) throws javax.resource.ResourceException
verb
- The interaction verb to useprog
- The name of the CICS program to calljavax.resource.ResourceException
- If there is a problem creating the InteractionSpec.public ECIInteractionSpec()
public java.lang.String toString()
toString
in class java.lang.Object
public int getInteractionVerb()
The current interaction verb is SYNC_SEND, SYNC_RECEIVE or SYNC_SEND_RECEIVE.
public java.lang.String getFunctionName()
When SYNC_SEND or SYNC_SEND_RECEIVE is specified in the interaction verb property, FunctionName needs to contain the name of the program to execute on CICS.
public int getExecuteTimeout()
This property holds the timeout value for interactions with CICS. Possible values include:
ExecuteTimeout is not used on the z/OS operating system with the EXCI protocol.
public int getCommareaLength()
The length of the COMMAREA being passed to CICS inside your input record. If this is not supplied a default is used:
public int getReplyLength()
The length of the datastream to be returned back from the Gateway daemon to the JCA application. Setting the reply length property can reduce the data transmitted over the network if the data returned by CICS is less than the full COMMAREA size, and you know the size of the data in advance. The JCA application still receives a full COMMAREA of the size specified in commareaLength; only the amount of data sent over the network is reduced. This method is equivalent to the getCommareaInboundLength() method available for the ECIRequest class.
If the reply length is not set, the CICS Transaction Gateway automatically strips trailing null characters from the COMMAREA sent from the Gateway daemon to the JCA application, without needing to know the size of the data in advance. See the product documentation for details on null stripping.
public java.lang.String getTranName()
The called program runs under the default mirror transaction, but is linked to under the tranName transaction name. This name is available to the called program in the exec interface block (EIB) for querying the transaction ID.
public java.lang.String getTPNName()
This is the name of the CICS mirror transaction that the called program runs under.
public void setInteractionVerb(int verb) throws javax.resource.ResourceException
The interaction verb values are SYNC_SEND, SYNC_RECEIVE and SYNC_SEND_RECEIVE.
verb
- The interaction verb for the InteractionSpec.javax.resource.ResourceException
- An incorrect interaction verb is specified.public void setFunctionName(java.lang.String name)
When SYNC_SEND or SYNC_SEND_RECEIVE is specified in the interaction verb property, function name needs to contain the name of the program to execute on CICS.
name
- The name of the program to execute on CICS.public void setExecuteTimeout(int time) throws javax.resource.ResourceException
Sets the execute timeout.
This property holds the timeout value for interactions with CICS. Possible values include:
The value specified is rounded down to the nearest second except for values less than one second which are set to one second.
ExecuteTimeout is not used on the z/OS operating system with the EXCI protocol.
time
- The timeout for the interaction with CICS.javax.resource.ResourceException
- If a negative timeout value is specified.public void setCommareaLength(int length)
The length of the COMMAREA being passed to CICS inside your input record. If this is not supplied a default is used:
Application developers are advised to use a maximum size of 32500 bytes, as this is guaranteed to be flowed successfully across all protocols. COMMAREA sizes greater than this might generate an ECI_ERR_INVALID_DATA_LENGTH return code.
length
- The length of the COMMAREA.public void setReplyLength(int length)
The length of the data to be returned back from the Gateway daemon to the JCA application. Use of this method can reduce the data transmitted over the network if the data returned by CICS is less than the full COMMAREA size, and you know the size of the data in advance. The JCA application still receives a full COMMAREA of the size specified in commareaLength; only the amount of data sent over the network is reduced. This method is equivalent to the setCommareaInboundLength() method available for the ECIRequest class.
If the reply length is not set, the CICS Transaction Gateway automatically strips trailing null characters from the COMMAREA sent from the Gateway daemon to the JCA application, without needing to know the size of the data in advance. See the product documentation for details on null stripping.
length
- The length of the returned COMMAREA.public void setTranName(java.lang.String newTranName)
The called program runs under the default mirror transaction, but is linked to under the tranName transaction name. This name is available to the called program in the EXEC interface block (EIB) for querying the transaction ID. Setting the tranName in the ECIInteractionSpec overrides any value set at deployment time, or on the ManagedConnectionFactory, in a non-managed environment.Note that if both TranName and TPNName are specified, TPNName takes precedence.
newTranName
- The tranName for the interaction.public void setTPNName(java.lang.String newTPNName)
This is the name of the CICS mirror transaction that the called program runs under. This option is like the TRANSID option on an EXEC CICS LINK command. A transaction definition in CICS for this TRANSID must point to the DFHMIRS program. Setting the TPNName in the ECIInteractionSpec overrides any value set at deployment time, or on the ManagedConnectionFactory, if a non-managed environment.
If the interaction is performed within a transaction scope, this field has a meaning only for the first interaction within the transaction. Subsequent interactions within the same transaction use the mirror transaction specified on the first interaction.
newTPNName
- The name of the mirror transaction for the interaction.public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)