com.ibm.di.systemqueue.driver
Class JMSScriptDriver

java.lang.Object
  extended by com.ibm.di.systemqueue.driver.JMSScriptDriver
All Implemented Interfaces:
JMSDriver

public class JMSScriptDriver
extends java.lang.Object
implements JMSDriver

The Script JMS Driver implementation. This driver will act as a bridge between the System Queue and user-specified script It initialize the JMS Driver from script and provides specific way for obtaining JMS QueueConnectionFactory.


Nested Class Summary
static class JMSScriptDriver.Ret
          Class used for returning object that holds QueueConnectionFactory, TopicConnectionFactory or error message from the script.
 
Field Summary
protected  JMSDriverLog log
           
static java.lang.String PROP_JS_SCRIPT
           
 
Fields inherited from interface com.ibm.di.systemqueue.driver.JMSDriver
ENVIRONMENT_LOG, JMS_DRIVER_TMS_FILE
 
Constructor Summary
JMSScriptDriver()
           
 
Method Summary
 javax.jms.QueueConnectionFactory getQueueFactory()
          This method retrieves the provider-specific javax.jms.QueueConnectionFactory object
 javax.jms.TopicConnectionFactory getTopicFactory()
          This method retrieves the provider-specific javax.jms.TopicConnectionFactory object
 void initialize(java.util.Hashtable env)
          The initialize(Hashtable env) method is passed a java.util.Hashtable object which stores provider-specific parameters, which can be used for connecting to a specific instance of the JMS server.
 void terminate()
          This is a call-back method used to notify the JMS Driver so it could clean any used resources.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PROP_JS_SCRIPT

public static final java.lang.String PROP_JS_SCRIPT
See Also:
Constant Field Values

log

protected JMSDriverLog log
Constructor Detail

JMSScriptDriver

public JMSScriptDriver()
Method Detail

initialize

public void initialize(java.util.Hashtable env)
                throws java.lang.Exception
The initialize(Hashtable env) method is passed a java.util.Hashtable object which stores provider-specific parameters, which can be used for connecting to a specific instance of the JMS server. Normally this method would use the supplied parameters to connect to the JMS server and obtain a javax.jms.TopicConnectionFactory object and/or a javax.jms.QueueConnectionFactory object. Then the method would store the object(s) in member variables so that it/they can be later retrieved via the getQueueFactory() and/or the getTopicFactory() method.

Specified by:
initialize in interface JMSDriver
Parameters:
env - Hashtable that holds Driver properties
Throws:
java.lang.Exception - if JMS Driver cannot be initialized

getQueueFactory

public javax.jms.QueueConnectionFactory getQueueFactory()
                                                 throws java.lang.Exception
This method retrieves the provider-specific javax.jms.QueueConnectionFactory object

Specified by:
getQueueFactory in interface JMSDriver
Returns:
QueueConnectionFactory object of the JMS Driver
Throws:
java.lang.Exception - if QueueConnectionFactory cannot be created

getTopicFactory

public javax.jms.TopicConnectionFactory getTopicFactory()
                                                 throws java.lang.Exception
This method retrieves the provider-specific javax.jms.TopicConnectionFactory object

Specified by:
getTopicFactory in interface JMSDriver
Returns:
TopicConnectionFactory object of the JMS Driver
Throws:
java.lang.Exception - if TopicConnectionFactory cannot be created

terminate

public void terminate()
               throws java.lang.Exception
This is a call-back method used to notify the JMS Driver so it could clean any used resources. This method should be used in very rare cases.

Specified by:
terminate in interface JMSDriver
Throws:
java.lang.Exception - if error while terminating occurs.