Package netscape.ldap.controls
Class LDAPEntryChangeControl
java.lang.Object
netscape.ldap.LDAPControl
netscape.ldap.controls.LDAPEntryChangeControl
- All Implemented Interfaces:
Serializable,Cloneable
- Direct Known Subclasses:
LdapEntryChangeControl
Represents an LDAP v3 server control that specifies information
about a change to an entry in the directory. (The OID for this
control is 2.16.840.1.113730.3.4.7.) You need to use this control in
conjunction with a "persistent search" control (represented
by
LDAPPersistentSearchControl object.
To use persistent searching for change notification, you create a "persistent search" control that specifies the types of changes that you want to track. When an entry is changed, the server sends that entry back to your client and may include an "entry change notification" control that specifies additional information about the change.
Typically, you use the getResponseControls method of
the LDAPConnection object to get any
LDAPEntryChangeControl objects returned by the server.
Once you retrieve an LDAPEntryChangeControl object from
the server, you can get the following additional information about
the change made to the entry:
- The type of change made (add, modify, delete, or modify DN)
- The change number identifying the record of the change in the change log (if the server supports change logs)
- If the entry was renamed, the old DN of the entry
-
Field Summary
FieldsFields inherited from class netscape.ldap.LDAPControl
m_critical, m_value, MANAGEDSAIT, PWEXPIRED, PWEXPIRING -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a newLDAPEntryChangeControlobject.LDAPEntryChangeControl(String oid, boolean critical, byte[] value) Contructs anLDAPEntryChangedControlobject. -
Method Summary
Modifier and TypeMethodDescriptionintGets the change number, which identifies the record of the change in the server's change log.intGets the change type, which identifies the type of change that occurred.Gets the previous DN of the entry (if the entry was renamed).voidsetChangeNumber(int num) Sets the change number (which identifies the record of the change in the server's change log) in this "entry change notification" control.voidsetChangeType(int num) Sets the change type (which identifies the type of change that occurred) in this "entry change notification" control.voidsetPreviousDN(String dn) Sets the previous DN of the entry (if the entry was renamed) in the "entry change notification control".toString()Return a string representation of the control for debuggingMethods inherited from class netscape.ldap.LDAPControl
clone, createControl, flattenBER, getID, getValue, isCritical, lookupControlClass, newInstance, register
-
Field Details
-
m_changeNumber
private int m_changeNumber -
m_changeTypes
private int m_changeTypes -
m_previousDN
-
ENTRYCHANGED
- See Also:
-
-
Constructor Details
-
LDAPEntryChangeControl
public LDAPEntryChangeControl()Constructs a newLDAPEntryChangeControlobject.- See Also:
-
LDAPEntryChangeControl
public LDAPEntryChangeControl(String oid, boolean critical, byte[] value) throws LDAPException, IOException Contructs anLDAPEntryChangedControlobject. This constructor is used byLDAPControl.registerto instantiate entry change controls.- Parameters:
oid- this parameter must beLDAPEntryChangeControl.ENTRYCHANGEDor anLDAPExceptionis throwncritical-trueif this control is criticalvalue- the value associated with this control- Throws:
LDAPException- If oid is notLDAPEntryChangeControl.ENTRYCHANGED.IOException- If value is not a valid BER sequence.- See Also:
-
-
Method Details
-
setChangeNumber
public void setChangeNumber(int num) Sets the change number (which identifies the record of the change in the server's change log) in this "entry change notification" control.- Parameters:
num- change number to set- See Also:
-
setChangeType
public void setChangeType(int num) Sets the change type (which identifies the type of change that occurred) in this "entry change notification" control.- Parameters:
num- change type to set. This can be one of the following values:LDAPPersistSearchControl.ADD(a new entry was added to the directory)LDAPPersistSearchControl.DELETE(an entry was removed from the directory)LDAPPersistSearchControl.MODIFY(an entry was modified)LDAPPersistSearchControl.MODDN(an entry was renamed)
- See Also:
-
setPreviousDN
Sets the previous DN of the entry (if the entry was renamed) in the "entry change notification control".- Parameters:
dn- the previous distinguished name of the entry- See Also:
-
getChangeNumber
public int getChangeNumber()Gets the change number, which identifies the record of the change in the server's change log.- Returns:
- change number identifying the change made.
- See Also:
-
getChangeType
public int getChangeType()Gets the change type, which identifies the type of change that occurred.- Returns:
- change type identifying the type of change that
occurred. This can be one of the following values:
LDAPPersistSearchControl.ADD(a new entry was added to the directory)LDAPPersistSearchControl.DELETE(an entry was removed from the directory)LDAPPersistSearchControl.MODIFY(an entry was modified)LDAPPersistSearchControl.MODDN(an entry was renamed)
- See Also:
-
getPreviousDN
Gets the previous DN of the entry (if the entry was renamed).- Returns:
- the previous distinguished name of the entry.
- See Also:
-
toString
Description copied from class:LDAPControlReturn a string representation of the control for debugging- Overrides:
toStringin classLDAPControl- Returns:
- a string representation of the control.
-