Package com.ibm.di.connector
Class NetscapeChangelogConnector
- java.lang.Object
-
- com.ibm.di.connector.Connector
-
- com.ibm.di.connector.LDAPConnector
-
- com.ibm.di.connector.ChangelogConnector
-
- com.ibm.di.connector.NetscapeChangelogConnector
-
- All Implemented Interfaces:
ChangelogInterface,ConnectorInterface,VersionInfoInterface,java.util.EventListener,javax.naming.event.NamespaceChangeListener,javax.naming.event.NamingListener,javax.naming.event.ObjectChangeListener
public class NetscapeChangelogConnector extends ChangelogConnector implements javax.naming.event.NamespaceChangeListener, javax.naming.event.ObjectChangeListener, ConnectorInterface, ChangelogInterface
The NetscapeChangelogConnector is a specialized instance of the LDAP Connector. In earlier versions of iPlanet Directory Server, the change log was accessible through LDAP. Now the changelog is intended for internal use by the server only. If you have applications that must read the changelog, you will need to use the iPlanet Retro Change Log Plug-in for backward compatibility.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringATTRIBUTE_CHANGENUMBERAttribute name: "changenumber"static java.lang.StringATTRIBUTE_CPRAttribute name: "changeNumber"static java.lang.StringPARAM_BATCH_RETRIEVALParameter Name: "batchRetrieval"static java.lang.StringPARAM_DELIVERY_MODEParameter Name: "deliveryMode"static java.lang.StringPARAM_LDAP_SEARCH_BASEParameter Name: "ldapSearchBase"static java.lang.StringPARAM_PAGE_SIZEParameter Name: "pageSize"static java.lang.StringPARAM_SLEEP_INTERVALParameter Name: "nsSleepInterval"static java.lang.StringPARAM_START_ATParameter Name: "nsChangenumber"static java.lang.StringPARAM_STORE_PARAM_NAMEParameter Name: "iteratorStateKey"static java.lang.StringPARAM_TIMEOUTParameter Name: "nsTimeout"static java.lang.StringPARAM_USE_NOTIFICATIONSParameter Name: "useNotifications"-
Fields inherited from class com.ibm.di.connector.ChangelogConnector
bothSeparated, defaultMerge, mLdifParser, onlyChanges, PARAM_MERGE_MODE
-
Fields inherited from class com.ibm.di.connector.Connector
ALL_MODES, myLog, PROPERTY_MESSAGE, PROPERTY_READER, PROPERTY_WRITER
-
Fields inherited from interface com.ibm.di.connector.ChangelogInterface
CONN_PARAM_STATE_KEY_PERSISTENCE, PARAM_MERGE_BOTH_NOT_MERGED, PARAM_MERGE_CHANGELOG_AND_DATA, PARAM_MERGE_ONLY_CHANGED_DATA, PARAM_VAL_AFTER_READ, PARAM_VAL_END_OF_CYCLE, PARAM_VAL_MANUAL, SAVE_STATE_AFTER_READ, SAVE_STATE_END_OF_CYCLE, SAVE_STATE_MANUAL
-
-
Constructor Summary
Constructors Constructor Description NetscapeChangelogConnector()Constructs this object and sets it supported mode.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EntrygetNextEntry()This method will get the next change if the number of changes is smaller than the actual changes, that were done on the Directory Server.java.lang.ObjectgetStateKeyObject()Retrieves state key.intgetStateKeySaveMethod()Retrieves the method for storing StateKey.java.lang.StringgetVersion()Version information.voidinitialize(java.lang.Object aObject)Initializes the connector.voidnamingExceptionThrown(javax.naming.event.NamingExceptionEvent aEvent)Callback method for handlingNamingEnumerationsvoidobjectAdded(javax.naming.event.NamingEvent aEvent)Callback method called when an object is added.voidobjectChanged(javax.naming.event.NamingEvent aEvent)Callback method called when an object is changed.voidobjectRemoved(javax.naming.event.NamingEvent aEvent)Callback method called when an object is removed.voidobjectRenamed(javax.naming.event.NamingEvent aEvent)Callback method called when an object is renamed.voidreconnect(java.lang.Object o)Reconnect to the underlying data sourcevoidsaveStateKey()Stores the USN values for the next synchronization.voidselectEntries()Prepares the connector for listening to change notifications.voidterminate()Close the connection to the LDAP server-
Methods inherited from class com.ibm.di.connector.ChangelogConnector
parseEntry, querySchema
-
Methods inherited from class com.ibm.di.connector.LDAPConnector
addAttributeValue, at2entry, callErrorHookOnAttributeInUseException, compare, compare, deleteEntry, entry2at, findEntry, flagSet, formatSearchValue, getAttributeSyntax, getCallErrorHook, getCurrentEntry, getLdapContext, getServerControls, getServerInfo, isDeltaSupported, isExceptionFatal, isServerAdminControl, mapAttributeSyntax, modEntry, modEntry, moveEntry, putEntry, queryNamingContexts, queryObjectClassAttributes, rebind, rebind, removeAllAttributeValues, removeAttributeValue, replaceAttributeValue, replaceAttributeValueProxy, setADPassword, setServerAdminControl, setSortControl, setsubtreeDeleteSupported, showServerInfo, supportsControl, supportsExtension, supportsPagedResults, supportsPersistantSearch, supportsSorting, supportsVirtualListView
-
Methods inherited from class com.ibm.di.connector.Connector
addFindEntry, allModes, clearFindEntries, debug, debugMode, extractExceptionInformation, findEntry, getBoolean, getClassInstance, getConfiguration, getContext, getFindEntryCount, getFirstFindEntry, getLog, getMaxDuplicateEntries, getModes, getModes, getName, getNextClient, getNextFindEntry, getParam, getParser, getProperty, getPushbackEntry, getRawConnectorConfiguration, getRSInterface, getUI, hasConfigValue, hasParser, initParser, isIOException, logError, logmsg, pushback, queryOperations, queryReply, 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, findEntry, getConfiguration, getContext, getFindEntryCount, getFirstFindEntry, getMaxDuplicateEntries, getName, getNextClient, getNextFindEntry, getParam, getPushbackEntry, getRawConnectorConfiguration, isDeltaSupported, isExceptionFatal, isIOException, modEntry, modEntry, pushback, putEntry, queryOperations, queryReply, querySchema, registerScriptBeans, replyEntry, setConfiguration, setContext, setCurrent, setLog, setMaxDuplicateEntries, setName, setParam, setRSInterface, terminateServer
-
-
-
-
Field Detail
-
PARAM_LDAP_SEARCH_BASE
public static final java.lang.String PARAM_LDAP_SEARCH_BASE
Parameter Name: "ldapSearchBase"- See Also:
- Constant Field Values
-
PARAM_STORE_PARAM_NAME
public static final java.lang.String PARAM_STORE_PARAM_NAME
Parameter Name: "iteratorStateKey"- See Also:
- Constant Field Values
-
PARAM_START_AT
public static final java.lang.String PARAM_START_AT
Parameter Name: "nsChangenumber"- See Also:
- Constant Field Values
-
PARAM_SLEEP_INTERVAL
public static final java.lang.String PARAM_SLEEP_INTERVAL
Parameter Name: "nsSleepInterval"- See Also:
- Constant Field Values
-
PARAM_TIMEOUT
public static final java.lang.String PARAM_TIMEOUT
Parameter Name: "nsTimeout"- See Also:
- Constant Field Values
-
PARAM_PAGE_SIZE
public static final java.lang.String PARAM_PAGE_SIZE
Parameter Name: "pageSize"- See Also:
- Constant Field Values
-
PARAM_USE_NOTIFICATIONS
public static final java.lang.String PARAM_USE_NOTIFICATIONS
Parameter Name: "useNotifications"- See Also:
- Constant Field Values
-
PARAM_BATCH_RETRIEVAL
public static final java.lang.String PARAM_BATCH_RETRIEVAL
Parameter Name: "batchRetrieval"- See Also:
- Constant Field Values
-
PARAM_DELIVERY_MODE
public static final java.lang.String PARAM_DELIVERY_MODE
Parameter Name: "deliveryMode"- See Also:
- Constant Field Values
-
ATTRIBUTE_CPR
public static final java.lang.String ATTRIBUTE_CPR
Attribute name: "changeNumber"- See Also:
- Constant Field Values
-
ATTRIBUTE_CHANGENUMBER
public static final java.lang.String ATTRIBUTE_CHANGENUMBER
Attribute name: "changenumber"- See Also:
- Constant Field Values
-
-
Method Detail
-
initialize
public void initialize(java.lang.Object aObject) throws java.lang.ExceptionInitializes the connector. All the configuration properties are considered and applied before a connection is made. After everything is set the connection is established and the connector is registered for receiving change notification.- Specified by:
initializein interfaceConnectorInterface- Overrides:
initializein classChangelogConnector- Parameters:
aObject- ignored.- Throws:
java.lang.Exception- if an error occurs.
-
selectEntries
public void selectEntries() throws java.lang.ExceptionPrepares the connector for listening to change notifications.- Specified by:
selectEntriesin interfaceConnectorInterface- Overrides:
selectEntriesin classLDAPConnector- Throws:
java.lang.Exception- if an error occurs.
-
getNextEntry
public Entry getNextEntry() throws java.lang.Exception
This method will get the next change if the number of changes is smaller than the actual changes, that were done on the Directory Server. If no more changes are available this method will block until notified that a change was done.- Specified by:
getNextEntryin interfaceConnectorInterface- Overrides:
getNextEntryin classLDAPConnector- Returns:
- the changes as an Entry object
- Throws:
java.lang.Exception- if an error occurs.- See Also:
ConnectorInterface.selectEntries()
-
getStateKeySaveMethod
public int getStateKeySaveMethod() throws java.lang.ExceptionRetrieves the method for storing StateKey.- Specified by:
getStateKeySaveMethodin interfaceChangelogInterface- Returns:
- the identifier of the method used for storing the StateKey in the TDI Store.
- Throws:
java.lang.Exception- - never- See Also:
ChangelogInterface.SAVE_STATE_AFTER_READ,ChangelogInterface.SAVE_STATE_END_OF_CYCLE,ChangelogInterface.SAVE_STATE_MANUAL
-
saveStateKey
public void saveStateKey() throws java.lang.ExceptionStores the USN values for the next synchronization. This method will skip the storing of the StateKey if the StateKey save method is set toChangelogInterface.SAVE_STATE_AFTER_READ- Specified by:
saveStateKeyin interfaceChangelogInterface- Throws:
java.lang.Exception- - never
-
getStateKeyObject
public java.lang.Object getStateKeyObject() throws java.lang.ExceptionRetrieves state key.- Specified by:
getStateKeyObjectin interfaceChangelogInterface- Returns:
- the change number wrapped as a
Longobject. - Throws:
java.lang.Exception- - never
-
terminate
public void terminate()
Close the connection to the LDAP server- Specified by:
terminatein interfaceConnectorInterface- Overrides:
terminatein classLDAPConnector
-
objectAdded
public void objectAdded(javax.naming.event.NamingEvent aEvent)
Callback method called when an object is added.- Specified by:
objectAddedin interfacejavax.naming.event.NamespaceChangeListener- Parameters:
aEvent- the event transport object.
-
objectRemoved
public void objectRemoved(javax.naming.event.NamingEvent aEvent)
Callback method called when an object is removed.- Specified by:
objectRemovedin interfacejavax.naming.event.NamespaceChangeListener- Parameters:
aEvent- the event transport object.
-
objectRenamed
public void objectRenamed(javax.naming.event.NamingEvent aEvent)
Callback method called when an object is renamed.- Specified by:
objectRenamedin interfacejavax.naming.event.NamespaceChangeListener- Parameters:
aEvent- the event transport object.
-
objectChanged
public void objectChanged(javax.naming.event.NamingEvent aEvent)
Callback method called when an object is changed.- Specified by:
objectChangedin interfacejavax.naming.event.ObjectChangeListener- Parameters:
aEvent- the event transport object.
-
namingExceptionThrown
public void namingExceptionThrown(javax.naming.event.NamingExceptionEvent aEvent)
Callback method for handlingNamingEnumerations- Specified by:
namingExceptionThrownin interfacejavax.naming.event.NamingListener- Parameters:
aEvent- the naming exception event object
-
getVersion
public java.lang.String getVersion()
Version information.- Specified by:
getVersionin interfaceVersionInfoInterface- Overrides:
getVersionin classChangelogConnector- Returns:
- the version information.
-
reconnect
public void reconnect(java.lang.Object o) throws java.lang.ExceptionReconnect to the underlying data source- Specified by:
reconnectin interfaceConnectorInterface- Overrides:
reconnectin classConnector- Parameters:
o- User provided parameter, which is sent to initialize()- Throws:
java.lang.Exception- if an error occurs.- See Also:
ConnectorInterface.initialize(Object)
-
-