com.ibm.connector2.ims.ico
Class IMSInteractionSpec
- java.lang.Object
com.ibm.connector2.ims.ico.IMSInteractionSpec
- public class IMSInteractionSpec
- extends java.lang.Object
- implements java.io.Serializable, IMSInteractionSpecProperties, com.ibm.ims.ico.IMSICOProperties
com.ibm.connector2.ims.ico.IMSInteraction#execute(InteractionSpec, Record, Record)
,
Serialized FormField Summary
Modifier and Type | Field and Description |
---|---|
|
propertyChange
IMS TM Resource Adapter internal use only.
|
Fields inherited from interface com.ibm.ims.ico.IMSICOProperties |
---|
COMMIT_THEN_SEND, DEFAULT_ALTCLIENTID_NAME, DEFAULT_CANCELTIMER, DEFAULT_CM0DEDICATED, DEFAULT_CM0RESPONSE, DEFAULT_COMMIT_MODE, DEFAULT_CONVID_HEX_ZEROES, DEFAULT_CONVID_STRING, DEFAULT_CURRENT_SEGMENT, DEFAULT_DATASTORE_NAME, DEFAULT_ENCRYPTYPE, DEFAULT_GROUPNAME, DEFAULT_HOSTNAME, DEFAULT_IGNORE_PURG_CALL, DEFAULT_IMSCONNNAME, DEFAULT_ISSSL, DEFAULT_KEYSTORENAME, DEFAULT_KEYSTOREPASSWD, DEFAULT_LTERM_NAME, DEFAULT_MAP_NAME, DEFAULT_PASSWORD, DEFAULT_PORTNUMBER, DEFAULT_REROUTE_NAME, DEFAULT_TRANSEXPIRATION, DEFAULT_TRUSTSTORENAME, DEFAULT_TRUSTSTOREPASSWD, DEFAULT_USECONVID, DEFAULT_USERNAME, ENCRYPTYPE_0, ENCRYPTYPE_1, ENCRYPTYPE_2, IBM_SSL_CERT_TYPE, MAX_ALTCLIENTIDNAME, MAX_CIPHER_ARRAY, MAX_CLIENTID, MAX_CONVID_STRING, MAX_DATASTORENAME, MAX_GROUPNAME, MAX_IMSCONNNAME, MAX_LTERMNAME, MAX_MAPNAME, MAX_PASSWORD, MAX_REROUTENAME, MAX_SSLSTOREPASSWORD, MAX_USERNAME, MODE_ACK_TEXT, MODE_COMMIT_TEXT, MODE_END_CONVERSATION_TEXT, MODE_FORGET_TEXT, MODE_NACK_TEXT, MODE_PREPARE_TEXT, MODE_RECEIVE_ASYNCOUTPUT_AUTO_TEXT, MODE_RECEIVE_ASYNCOUTPUT_SINGLE_NOWAIT_TEXT, MODE_RECEIVE_ASYNCOUTPUT_SINGLE_WAIT_TEXT, MODE_RECEIVE_ASYNCOUTPUT_TEXT, MODE_RECEIVE_TEXT, MODE_RECOVER_TEXT, MODE_ROLLBACK_TEXT, MODE_SEND_ONLY_TEXT, MODE_SEND_RECEIVE_TEXT, MODE_SYNCCAL_RESPONSE_TEXT, SEND_THEN_COMMIT, SSL_PROVIDER, SSL_STORE_TYPE_JCE4758RACFKS, SSL_STORE_TYPE_JCERACFKS, SSL_STORE_TYPE_JKS, SUN_SSL_CERT_TYPE, SYNC_LEVEL_CONFIRM, SYNC_LEVEL_NONE, SYNC_LEVEL_SYNCPT |
Constructor Summary
Constructor and Description |
---|
IMSInteractionSpec()
The default constructor.
|
Method Summary
Modifier and Type | Method and Description |
---|---|
|
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Adds a PropertyChangeListener for all the properties.
|
|
addPropertyChangeListener(java.lang.String propertyName,java.beans.PropertyChangeListener listener)
Adds a PropertyChangeListener for a property.
|
|
firePropertyChange(java.beans.PropertyChangeEvent evt)
Fires a PropertyChangeEvent to listeners.
|
|
firePropertyChange(java.lang.String propertyName,boolean oldValue,boolean newValue)
Reports a boolean bound property update to any
registered listeners.
|
|
firePropertyChange(java.lang.String propertyName,int oldValue,int newValue)
Reports an int bound property update to any
registered listeners.
|
|
firePropertyChange(java.lang.String propertyName,java.lang.Object oldValue,java.lang.Object newValue)
Reports a String bound property update to any
registered listeners.
|
|
getAltClientID()
Returns the String representation of the altClientID property.
|
|
getAsyncOutputAvailable()
Returns the value of the asyncOutputAvailable property,
indicating whether there are any asynchronous output messages available
(true) or not
(false).
|
|
getCalloutRequestType()
Returns the type of callout request messages the
Java application is to retrieve.
|
|
getCm0Response()
Returns the value of the CM0Response property.
|
|
getCommitMode()
Returns the value of the commitMode
property.
|
|
getConvEnded()
Returns the value of the convEnded property,
indicating whether an IMS conversation has
ended (true) or is still in progress
(false).
|
|
getConvID()
Returns the byte array representation of the convID property.
|
|
getExecutionTimeout()
Returns the value of the executionTimeout
property.
|
|
getIgnorePURGCall()
Returns the value of the ignorePURGCall
property.
|
|
getImsRequestType()
Returns the value of the imsRequestType
property.
|
|
getInteractionVerb()
Returns the value of the interactionVerb
property.
|
|
getInteractionVerbText(int interactionVerb)
Returns the String representation of the interactionVerb property.
|
|
getLtermName()
Returns the String representation of the ltermName property.
|
|
getMapName()
Returns the value of the mapName property,
typically the name of an MFS Message Output Descriptor
(MFS MOD).
|
|
getPropertyChange()
Accessor for the propertyChange field.
|
|
getPurgeAsyncOutput()
Returns the value of the purgeAsyncOutput property,
indicating whether IMS Connect will purge asynchronous output
messages (true) or not (false).
|
|
getReRoute()
Returns the value of the reRoute property,
indicating whether asynchronous output will be rerouted to
an alternate destination (true) or not (false).
|
|
getReRouteName()
Returns the String representation of the reRouteName property.
|
|
getSocketTimeout()
Returns the value of the socketTimeout property.
|
|
getSyncCalloutCorrelatorToken()
Returns the correlation token that is generated by IMS Connect
and attached to the synchronous callout request message.
|
|
getSyncCalloutStatusCode()
Returns a user-specified status code when the Java application
sends an error response message to the IMS application.
|
|
getSyncLevel()
Returns the value of the syncLevel
property.
|
|
getTransExpiration()
Returns the value of the transExpiration property.
|
|
getUseConvID()
Returns the value of the useConvID property,
indicating whether an IMS conversation will be using the same connection
for all the iterations (false) OR may be using any connection (shareable
connection from the same connection pool) for all the iterations (true).
|
|
hasListeners(java.lang.String propertyName)
Checks if there are any listeners for a specific property.
|
|
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Removes a PropertyChangeListener from the listener list.
|
|
removePropertyChangeListener(java.lang.String propertyName,java.beans.PropertyChangeListener listener)
Removes a PropertyChangeListener for a specific property.
|
|
setAltClientID(java.lang.String newAltClientID)
Sets the value of the altClientID property.
|
|
setAsyncOutputAvailable(boolean newAsyncOutputAvailable)
Sets the value of the asyncOutputAvailable property.
|
|
setCalloutRequestType(int requestType)
Specifies the type of callout request messages the Java application
is to retrieve.
|
|
setCm0Response(boolean newCM0Response)
Sets the value of the CM0Response property.
|
|
setCommitMode(int newCommitMode)
Sets the commitMode property to a specified
value.
|
|
setConvEnded(boolean newConvEnded)
Sets the value of the convEnded property.
|
|
setConvID(java.lang.String newConvID)
Sets the value of the convID property.
|
|
setExecutionTimeout(int newTimeout)
Sets the value of the executionTimeout
property, which is the time it takes for IMS Connect
to send an interaction to IMS and receive a response.
|
|
setIgnorePURGCall(boolean newIgnorePURGCall)
Sets the value of the ignorePURGCall property.
|
|
setImsRequestType(int newImsRequestType)
Sets the value of the imsRequestType property.
|
|
setInteractionVerb(int newVerb)
Sets the value of the interactionVerb
property.
|
|
setLtermName(java.lang.String newLtermName)
Sets the value of the ltermName property.
|
|
setMapName(java.lang.String newMapName)
Sets the value of the mapName property,
typically the name of an MFS Message Output Descriptor
(MFS MOD).
|
|
setPurgeAsyncOutput(boolean newPurgeAsyncOutput)
Sets the value of the purgeAsyncOutput property.
|
|
setReRoute(boolean newReRoute)
Sets the value of the reRoute property.
|
|
setReRouteName(java.lang.String newReRouteName)
Sets the value of the reRouteName property.
|
|
setSocketTimeout(int newSoTimeout)
Sets the value of the socketTimeout
property, which is the time IMS TM Resource Adapter
will wait on behalf of the client, to receive a reply
after sending a message to IMS Connect.
|
|
setSyncCalloutCorrelatorToken(byte[] token)
Sets the correlation token that is generated by IMS Connect to
associate the synchronous callout request with the response.
|
|
setSyncCalloutStatusCode(int statusCode)
Specifies a user-specified status code when the Java application
sends an error response message to the IMS application.
|
|
setSyncLevel(int newSyncLevel)
Sets the value of the syncLevel property.
|
|
setTransExpiration(boolean newTransExpire)
Sets the value of the transExpiration property.
|
|
setUseConvID(boolean newUseConvID)
Sets the value of the useConvID property.
|
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail
propertyChange
- public transient java.beans.PropertyChangeSupport propertyChange
Constructor Detail
IMSInteractionSpec
- public IMSInteractionSpec()
Method Detail
addPropertyChangeListener
- public void addPropertyChangeListener( java.beans.PropertyChangeListener listener)
listener
- The PropertyChangeListener to be added. addPropertyChangeListener
- public void addPropertyChangeListener( java.lang.String propertyName,
- java.beans.PropertyChangeListener listener)
listener
- The PropertyChangeListener to be added. propertyName
- The name of the property to listen on. firePropertyChange
- public void firePropertyChange( java.beans.PropertyChangeEvent evt)
evt
- The PropertyChangeEvent object. firePropertyChange
- public void firePropertyChange( java.lang.String propertyName,
- int oldValue,
- int newValue)
propertyName
- The name of the property that was changed. oldValue
- The old value of the property. newValue
- The new value of the property. firePropertyChange
- public void firePropertyChange( java.lang.String propertyName,
- java.lang.Object oldValue,
- java.lang.Object newValue)
propertyName
- The name of the property that was changed. oldValue
- The old value of the property. newValue
- The new value of the property. firePropertyChange
- public void firePropertyChange( java.lang.String propertyName,
- boolean oldValue,
- boolean newValue)
propertyName
- The name of the property that was changed. oldValue
- The old value of the property. newValue
- The new value of the property. getAsyncOutputAvailable
- public final boolean getAsyncOutputAvailable( )
getPurgeAsyncOutput
- public final boolean getPurgeAsyncOutput( )
getReRoute
- public final boolean getReRoute( )
getCommitMode
- public final int getCommitMode( )
getConvEnded
- public final boolean getConvEnded( )
getExecutionTimeout
- public final int getExecutionTimeout( )
getSocketTimeout
- public int getSocketTimeout()
getImsRequestType
- public final int getImsRequestType( )
getInteractionVerb
- public final int getInteractionVerb( )
getInteractionVerbText
- public static java.lang.String getInteractionVerbText( int interactionVerb)
Note: This method is for IMS TM Resource Adapter internal use only.
interactionVerb
- The value of the interactionVerb property. getLtermName
- public final java.lang.String getLtermName( )
getMapName
- public final java.lang.String getMapName( )
Note: The mapName property should not be used by Java applications that use an enterprise service whose input and output messages are generated by WebSphere Studio's MFS support.
getReRouteName
- public final java.lang.String getReRouteName( )
getAltClientID
- public final java.lang.String getAltClientID( )
getConvID
- public java.lang.String getConvID( )
com.ibm.connector2.ims.ico.IMSInteractionSpec#setConvID(byte[])
getUseConvID
- public final boolean getUseConvID( )
getPropertyChange
- public java.beans.PropertyChangeSupport getPropertyChange( )
hasListeners
- public boolean hasListeners(java.lang.String propertyName)
propertyName
- The name of the property. removePropertyChangeListener
- public void removePropertyChangeListener( java.beans.PropertyChangeListener listener)
listener
- The PropertyChangeListener to be removed. removePropertyChangeListener
- public void removePropertyChangeListener( java.lang.String propertyName,
- java.beans.PropertyChangeListener listener)
propertyName
- The name of the property that was listened on. listener
- The PropertyChangeListener to be removed. setAsyncOutputAvailable
- public void setAsyncOutputAvailable( boolean newAsyncOutputAvailable)
newAsyncOutputAvailable
- The new value for the
asyncOutputAvailable the property. setPurgeAsyncOutput
- public void setPurgeAsyncOutput( boolean newPurgeAsyncOutput)
newPurgeAsyncOutput
- The new value for the
purgeAsyncOutput the property. setReRoute
- public void setReRoute(boolean newReRoute)
newReRoute
- The new value for the
reRoute the property. setCommitMode
- public void setCommitMode(int newCommitMode)
- throws javax.resource.ResourceException
- SEND_THEN_COMMIT (value 1)
- IMS processes the transaction and sends a response back before committing the data.
- COMMIT_THEN_SEND (value 0)
- IMS processes the transaction and commits the data before sending a response.
newCommitMode
- The new value for the
commitMode property. javax.resource.ResourceException
- If an invalid commitMode
value is specified. setConvEnded
- public void setConvEnded(boolean newConvEnded)
Note: This method is for IMS TM Resource Adapter use only. The convEnded property is an output-only property and should not be set, on input, by the application component.
newConvEnded
- The new value for the convEnded
the property. setExecutionTimeout
- public void setExecutionTimeout( int newTimeout)
- throws javax.resource.ResourceException
The executionTimeout value is represented in milliseconds and must be a decimal integer that is either -2, -1, 0, or between 1 and 3600000 (one hour), inclusively.
- If the value is set to 0, the actual timeout value is determined by IMS Connect.
- If the value is set to -1, the interaction will run without a time limit.
- If the value is set to -2:
- If the interaction type is SYNC_RECEIVE_CALLOUT, the callout request message is retrieved by using the OTMA RESUME TPIPE call with the SINGLE option and a timer of NOWAIT. If no callout request message exists on the OTMA hold queue, the IMS TM Resource Adapter does not wait for the callout request and immediately returns the control back to the Java application.
newTimeout
- The new value for the
executionTimeout property. javax.resource.ResourceException
- If an invalid executionTimeout
value is specified. javax.resource.NotSupportedException
- If an executionTimeout value is
specified that is valid for the
architecture but not supported
by IMS TM Resource Adapter, this
derivative of ResourceException
is thrown. setSocketTimeout
- public void setSocketTimeout(int newSoTimeout)
- throws javax.resource.ResourceException
newSoTimeout
- The new value for the
socketTimeout property. javax.resource.ResourceException
- If an invalid executionTimeout
value is specified. javax.resource.spi.CommException
- If socketTimeout has occurred for
the interaction. setImsRequestType
- public void setImsRequestType(int newImsRequestType)
- throws javax.resource.ResourceException
- IMS_REQUEST_TYPE_IMS_TRANSACTION (value 1)
- The request is an IMS transaction. Normal transaction output returned by IMS is used to populate the application's output message. If IMS returns a "DFS" message, the IMS resource adapter throws an IMSDFSMessageException. Value 1 is used for applications that are not generated using WebSphere Studio MFS support.
- IMS_REQUEST_TYPE_IMS_COMMAND (value 2)
- The request is an IMS command. Command output returned by IMS, including "DFS" messages, is used to populate the application's output message. The IMSDFSMessageException is not thrown. Value 2 is used for applications that submit IMS commands.
- IMS_REQUEST_TYPE_MFS_TRANSACTION (value 3)
- Value 3 is reserved for applications that are generated using WebSphere Studio MFS support. Normal transaction output returned by IMS, as well as "DFS" messages, are used to populate the application's output message. The IMSDFSMessageException is not thrown.
newImsRequestType
- The new value for the
imsRequestType property. javax.resource.ResourceException
- If an invalid imsRequestType
value is specified. setInteractionVerb
- public void setInteractionVerb( int newVerb)
- throws javax.resource.ResourceException
- SYNC_SEND (value 0)
- Used to send a request to IMS when a response is not expected, in another words, perform a send only interaction. This interaction is also used to send callout responses (including error response messages) to IMS, because no further response is expected from IMS.
- SYNC_SEND_RECEIVE (value 1)
- Used for the single iteration of a non-conversational IMS transaction and for each iteration of a conversational IMS transaction.
- SYNC_END_CONVERSATION (value 3)
- Used to force the end of an IMS conversational transaction.
- SYNC_RECEIVE_ASYNCOUTPUT (value 4)
- Used to retrieve asynchronous output messages. With this type of interaction, the Java client can only receive a single message. If there are no messages in the IMS OTMA Asynchronous Queue for the clientID when the request is made, no further attempts are made to retrieve the message. No message is returned and a timeout will occur after the length of time specified in the executionTimeout property of the SYNC_RECEIVE_ASYNCOUTPUT interaction.
- SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_NOWAIT (value 5)
- Used to retrieve asynchronous output messages. With this type of interaction, the Java client can only receive a single message. If there are no messages in the IMS OTMA Asynchronous Queue for the clientID when the request is made, no further attempts are made to retrieve the message. No message is returned and a timeout will occur after the length of time specified in the executionTimeout property of the SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_NOWAIT interaction.
- SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_WAIT (value 6)
- Used to retrieve asynchronous output messages. With this type of interaction, the Java client can only receive a single message. If there are no messages in the IMS OTMA Asynchronous Queue for the clientID when the request is made, IMS Connect waits for OTMA to return a message. IMS Connect waits the length of time specified in the executionTimeout property of the SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_WAIT interaction before returning an exception.
- SYNC_RECEIVE_CALLOUT (value 7)
- Used to retrieve synchronous and asynchronous callout
requests from IMS. Use the calloutRequestType property to
specify whether only synchronous, only asynchronous, or both
synchronous and asynchronous callout messages are to be retrieved.
With this type of interaction, the Java client can receive only a single message. If there are no messages in the IMS OTMA hold queue for the specified client ID (tpipe name) when the request is made, no further attempts are made to retrieve the message. No message is returned, and a timeout occurs after the length of time specified in the executionTimeout property passes.
Note: SYNC_RECEIVE (value 2)is currently not supported.
newVerb
- The new value for the
interactionVerb property. javax.resource.ResourceException
- If an invalid interactionVerb
value is specified. javax.resource.NotSupportedException
- If an interactionVerb value is
specified that is valid for the
architecture but not supported
by IMS TM Resource Adapter, this
derivative of ResourceException
is thrown. setLtermName
- public void setLtermName(java.lang.String newLtermName)
- throws javax.resource.ResourceException
newLtermName
- The new value for the
ltermName property.
Use of ltermName is optional. javax.resource.ResourceException
- If an invalid ltermName
value is specified. setMapName
- public void setMapName(java.lang.String newMapName)
- throws javax.resource.ResourceException
Note: The mapName property should not be used by Java applications that use an enterprise serive whose input and output messages are generated by WebSphere Studio's MFS support.
newMapName
- The new value for the mapName
property; typically the name of
an MFS MOD.
Use of mapName is optional. javax.resource.ResourceException
- If an invalid mapName
value is specified. setReRouteName
- public void setReRouteName(java.lang.String newReRouteName)
- throws javax.resource.ResourceException
newReRouteName
- The new value for the reRouteName
property javax.resource.ResourceException
- If an invalid reRouteName
value is specified. setAltClientID
- public void setAltClientID(java.lang.String newAltClientID)
- throws javax.resource.ResourceException
newAltClientID
- The new value for the altClientID
property javax.resource.ResourceException
- If an invalid altClientID
value is specified. setConvID
- public void setConvID(java.lang.String newConvID)
- throws javax.resource.ResourceException
newConvID
- The new value for the convID property. javax.resource.ResourceException
setUseConvID
- public void setUseConvID(boolean newUseConvID)
newUseConvID
- The new value for the useConvID property. getSyncLevel
- public int getSyncLevel()
setSyncLevel
- public void setSyncLevel(int newSyncLevel)
- throws javax.resource.NotSupportedException
The syncLevel property only applies for values SYNC_SEND_RECEIVE and SYNC_SEND of the interactionVerb property and is used in combination with the commitMode property.
newSyncLevel
- The syncLevel to set. javax.resource.NotSupportedException
getIgnorePURGCall
- public boolean getIgnorePURGCall( )
setIgnorePURGCall
- public void setIgnorePURGCall(boolean newIgnorePURGCall)
The flag is valid for SYNC_SEND and SYNC_SEND_RECEIVE interactions on shareable persistent socket connections and is applicable with commit mode 0. For commit mode 1, the PURG calls will always be ignored regardless of the value of this flag.
newIgnorePURGCall
- The new value for the
ignorePURGCall property. getSyncCalloutCorrelatorToken
- public byte[] getSyncCalloutCorrelatorToken( )
setSyncCalloutCorrelatorToken
- public void setSyncCalloutCorrelatorToken( byte[] token)
getCalloutRequestType
- public int getCalloutRequestType( )
setCalloutRequestType
- public void setCalloutRequestType( int requestType)
Valid values are:
- CALLOUT_REQUEST_ASYNC – Retrieve only asynchronous callout request messages
- CALLOUT_REQUEST_BOTH - Retrieve both synchronous and asynchronous callout request messages
- CALLOUT_REQUEST_SYNC - Retrieve only synchronous callout request messages
getSyncCalloutStatusCode
- public int getSyncCalloutStatusCode( )
setSyncCalloutStatusCode
- public void setSyncCalloutStatusCode( int statusCode)
- throws NotSupportedException
NotSupportedException
setTransExpiration
- public void setTransExpiration( boolean newTransExpire)
getTransExpiration
- public boolean getTransExpiration( )
setCm0Response
- public void setCm0Response(boolean newCM0Response)
newCM0Response
- - The flag to indicate if OTMA should return a DFS2082I message for a CM0 application. getCm0Response
- public boolean getCm0Response()