com.ibm.di.connector.disb
Class DISBConnector

java.lang.Object
  extended by com.ibm.di.connector.Connector
      extended by com.ibm.di.connector.JMSConnector
          extended by com.ibm.di.connector.disb.DISBConnector
All Implemented Interfaces:
ConnectorInterface, VersionInfoInterface, javax.jms.MessageListener

public class DISBConnector
extends JMSConnector

The class DISBConnector facilitates the communication to the Data Integration Services Bus that will be accessed by IBM Tivoli Directory Integrator. It extends the JMS connector class (JMSConnector) and overrides some of its methods to implement DIS-specific functionality.

Note: This class is for internal usage only. Any dependency from the end-user will not be supported. Changes to this class will happen without a warning.

Since:
7.1.1

Field Summary
 
Fields inherited from class com.ibm.di.connector.JMSConnector
JMS_BROKER, JMS_MESSAGE_PROPERTY, JMS_PASSWORD, JMS_Q_MANAGER, JMS_SERVER_CHANNEL, JMS_SSL_CIPHER, JMS_SSL_SERVER_CHANNEL, JMS_SSL_USE_FLAG, JMS_USERNAME, MESSAGE_ATTRIBUTE
 
Fields inherited from class com.ibm.di.connector.Connector
ALL_MODES, myLog, PROPERTY_MESSAGE, PROPERTY_READER, PROPERTY_WRITER
 
Constructor Summary
DISBConnector()
          Constructor.
 
Method Summary
protected  void buildEntryCiAttributes(Entry entry, HashMap<String,Object> attr, Attribute entryAttr)
          Method populates the Entry with the Configuration items.
protected  void buildEntryForOperation(Entry entry, BaseOperation operation, Attribute operAttr, boolean isRefresh)
          Method populates the Entry with the configuration items based on the Topic types along with the relationships if existing.
protected  void buildEntryForProperties(Entry rcvdEntry, Entry toBeBuiltEntry, String[] props, boolean isAttribute)
          Builds the Entry with the JMS properties based on the relevant DISB Topic Types in Iterator mode.
 Entry getNextEntry()
          Gets the nextEntry attribute of the JMSConnector object
static ResourceHash getResHash()
           
 String getVersion()
          Return version information
 void initialize(Object o)
          Initialize the Connector
 void putEntry(Entry entry)
          Send an entry to the JMS server.
 
Methods inherited from class com.ibm.di.connector.JMSConnector
acknowledge, entry2message, findEntry, getIBMCharset, getQueue, getReadQueue, getSendQueue, getSession, getTopic, message2entry, onMessage, queryReply, reconnect, selectEntries, setFactory, setReadQueue, setSendQueue, setTopic, terminate
 
Methods inherited from class com.ibm.di.connector.Connector
addFindEntry, allModes, clearFindEntries, debug, debugMode, deleteEntry, findEntry, getBoolean, getClassInstance, getConfiguration, getContext, getFindEntryCount, getFirstFindEntry, getLog, getMaxDuplicateEntries, getModes, getModes, getName, getNextClient, getNextFindEntry, getParam, getParser, getProperty, getPushbackEntry, getRawConnectorConfiguration, getRSInterface, getUI, hasConfigValue, hasParser, initParser, isDeltaSupported, isExceptionFatal, isIOException, logError, logmsg, modEntry, modEntry, pushback, queryOperations, querySchema, queryTables, reconnect, registerScriptBeans, replyEntry, setConfiguration, setContext, setCurrent, setDebugMode, setLog, setMaxDuplicateEntries, setModes, setModes, setName, setParam, setParser, setProperty, setRSInterface, terminateServer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.di.connector.ConnectorInterface
deleteEntry, getConfiguration, getContext, getFindEntryCount, getFirstFindEntry, getMaxDuplicateEntries, getName, getNextClient, getNextFindEntry, getParam, getPushbackEntry, getRawConnectorConfiguration, isDeltaSupported, isExceptionFatal, isIOException, modEntry, modEntry, pushback, queryOperations, querySchema, reconnect, registerScriptBeans, replyEntry, setConfiguration, setContext, setCurrent, setLog, setMaxDuplicateEntries, setName, setParam, setRSInterface, terminateServer
 

Constructor Detail

DISBConnector

public DISBConnector()
Constructor. Initializes the connector to work in AddOnly and Iterator Modes.

Method Detail

initialize

public void initialize(Object o)
                throws Exception
Initialize the Connector

Specified by:
initialize in interface ConnectorInterface
Overrides:
initialize in class JMSConnector
Parameters:
o - The mode of the Connector
Throws:
Exception - if the initialization fails

getNextEntry

public Entry getNextEntry()
                   throws Exception
Gets the nextEntry attribute of the JMSConnector object

Specified by:
getNextEntry in interface ConnectorInterface
Overrides:
getNextEntry in class JMSConnector
Returns:
The nextEntry value
Throws:
Exception - if the operation does not succeed
See Also:
ConnectorInterface.selectEntries()

putEntry

public void putEntry(Entry entry)
              throws Exception
Send an entry to the JMS server.

Specified by:
putEntry in interface ConnectorInterface
Overrides:
putEntry in class JMSConnector
Parameters:
entry - The entry to send
Throws:
Exception - If the sending of a message fails

buildEntryForProperties

protected void buildEntryForProperties(Entry rcvdEntry,
                                       Entry toBeBuiltEntry,
                                       String[] props,
                                       boolean isAttribute)
                                throws Exception
Builds the Entry with the JMS properties based on the relevant DISB Topic Types in Iterator mode.

Parameters:
rcvdEntry - The Entry containing the JMS properties with the prefix ".jms" for the attribute names
toBeBuiltEntry - The Entry that will contain the message properties with the prefix ".jms" for the attribute names removed.
props - The String array containing the attribute names of the JMS properties
isAttribute - Flag that tells whether the property is part of Entry Property or Attribute.
Throws:
Exception - If a problem occurs.

buildEntryForOperation

protected void buildEntryForOperation(Entry entry,
                                      BaseOperation operation,
                                      Attribute operAttr,
                                      boolean isRefresh)
Method populates the Entry with the configuration items based on the Topic types along with the relationships if existing. If it's Instance Topic, builds the "configurationItem". If its Model Topic, builds the "modelItem". If its GuidLifeCycleTopic, builds the "guid". If relationships exist then the "relationship" is built.

Parameters:
entry - The Entry that needs to be populated.
operation - The DIS model BaseOperation object.
operAttr - The Attribute that needs to be populated.
instanceTopicMsg - The flag to identify the DIS instance topic.
isRefresh - The flag to identify the refresh instance topic object.

buildEntryCiAttributes

protected void buildEntryCiAttributes(Entry entry,
                                      HashMap<String,Object> attr,
                                      Attribute entryAttr)
Method populates the Entry with the Configuration items. The method recursively calls itself to build the entry.

Parameters:
entry - The Entry that needs to be populated.
attr - The HashMap containing the CI Attributes
entryAttr - The Attribute that will contain the built attributes.

getResHash

public static ResourceHash getResHash()
Returns:
The container with Connector's messages.

getVersion

public String getVersion()
Return version information

Specified by:
getVersion in interface VersionInfoInterface
Overrides:
getVersion in class JMSConnector
Returns:
The version value