Class RootDSE

All Implemented Interfaces:
LDIFRecord, Serializable
Direct Known Subclasses:
UnboundIDRootDSE

This class provides a data structure for representing the directory server root DSE. This entry provides information about the capabilities of the directory server, server vendor and version information, and published naming contexts.

Note a root DSE object instance represents a read-only version of an entry, so all read operations allowed for an entry will succeed, but all write attempts will be rejected.

Example

The following example demonstrates the process for retrieving the root DSE of a directory server and using it to determine whether it supports the ServerSideSortRequestControl:
 RootDSE rootDSE = connection.getRootDSE();
 if (rootDSE.supportsControl(
      ServerSideSortRequestControl.SERVER_SIDE_SORT_REQUEST_OID))
 {
   // The directory server does support the server-side sort control.
 }
 else
 {
   // The directory server does not support the server-side sort control.
 }
 
See Also:
  • Field Details

  • Constructor Details

    • RootDSE

      public RootDSE(@NotNull Entry rootDSEEntry)
      Creates a new root DSE object from the information in the provided entry.
      Parameters:
      rootDSEEntry - The entry to use to create this root DSE object. It must not be null.
  • Method Details

    • getRootDSE

      @Nullable public static RootDSE getRootDSE(@NotNull LDAPInterface connection) throws LDAPException
      Retrieves the directory server root DSE using the provided connection.
      Parameters:
      connection - The connection to use to retrieve the server root DSE.
      Returns:
      The directory server root DSE, or null if it is not available (e.g., the client does not have permission to read the entry).
      Throws:
      LDAPException - If a problem occurs while attempting to retrieve the server root DSE.
    • getAltServerURIs

      @Nullable public final String[] getAltServerURIs()
      Retrieves a set of URIs for alternate servers that may be contacted if the current server becomes unavailable.
      Returns:
      A set of URIs for alternate servers that may be contacted if the current server becomes available, or null if the server does not publish that information.
    • getChangelogDN

      Retrieves the DN of the base entry for the directory server changelog information, if available.
      Returns:
      The DN of the base entry for the directory server changelog information, or null if the server does not publish that information or no changelog is available.
    • getFirstChangeNumber

      Retrieves the change number for the first entry contained in the LDAP changelog, if available.
      Returns:
      The change number for the first entry contained in the LDAP changelog, if available.
    • getLastChangeNumber

      Retrieves the change number for the last entry contained in the LDAP changelog, if available.
      Returns:
      The change number for the last entry contained in the LDAP changelog, if available.
    • getLastPurgedChangeNumber

      Retrieves the change number for the last entry purged from the LDAP changelog, if available.
      Returns:
      The change number for the last entry purged from the LDAP changelog, if available.
    • getNamingContextDNs

      Retrieves the DNs of the naming contexts provided by the directory server.
      Returns:
      The DNs of the naming contexts provided by the directory server, or null if the server does not publish that information.
    • getSubschemaSubentryDN

      Retrieves the DN of the subschema subentry that serves the directory server root DSE.
      Returns:
      The DN of the subschema subentry that serves the directory server root DSE, or null if the server does not publish that information.
    • getSupportedAuthPasswordSchemeNames

      Retrieves the names of the authentication password storage schemes supported by the server.
      Returns:
      The names of the authentication password storage schemes supported by the server, or null if the server does not publish that information.
    • supportsAuthPasswordScheme

      public final boolean supportsAuthPasswordScheme(@NotNull String scheme)
      Indicates whether the directory server indicates that it supports the specified authentication password storage scheme.
      Parameters:
      scheme - The name of the authentication password storage scheme for which to make the determination. It must not be null.
      Returns:
      true if the directory server indicates that it supports the specified authentication password storage scheme, or false if it does not.
    • getSupportedControlOIDs

      Retrieves the OIDs of the supported request controls advertised by the server root DSE.
      Returns:
      The OIDs of the supported request controls advertised by the server root DSE, or null if the server does not publish that information.
    • supportsControl

      public final boolean supportsControl(@NotNull String controlOID)
      Indicates whether the directory server indicates that it supports the request control with the provided OID.
      Parameters:
      controlOID - The OID of the control for which to make the determination. It must not be null.
      Returns:
      true if the server indicates that it supports the request control with the specified OID, or false if it does not.
    • getSupportedExtendedOperationOIDs

      Retrieves the OIDs of the supported extended operations advertised by the server root DSE.
      Returns:
      The OIDs of the supported extended operations advertised by the server root DSE, or null if the server does not publish that information.
    • supportsExtendedOperation

      public final boolean supportsExtendedOperation(@NotNull String extendedOperationOID)
      Indicates whether the directory server indicates that it supports the extended operation with the provided OID.
      Parameters:
      extendedOperationOID - The OID of the extended operation for which to make the determination. It must not be null.
      Returns:
      true if the server indicates that it supports the extended operation with the specified OID, or false if it does not.
    • getSupportedFeatureOIDs

      Retrieves the OIDs of the supported features advertised by the server root DSE.
      Returns:
      The OIDs of the supported features advertised by the server root DSE, or null if the server does not publish that information.
    • supportsFeature

      public final boolean supportsFeature(@NotNull String featureOID)
      Indicates whether the directory server indicates that it supports the extended operation with the provided OID.
      Parameters:
      featureOID - The OID of the feature for which to make the determination. It must not be null.
      Returns:
      true if the server indicates that it supports the feature with the specified OID, or false if it does not.
    • getSupportedLDAPVersions

      @Nullable public final int[] getSupportedLDAPVersions()
      Retrieves the supported LDAP protocol versions advertised by the server root DSE.
      Returns:
      The supported LDAP protocol versions advertised by the server root DSE, or null if the server does not publish that information.
    • supportsLDAPVersion

      public final boolean supportsLDAPVersion(int ldapVersion)
      Indicates whether the directory server indicates that it supports the provided LDAP protocol version.
      Parameters:
      ldapVersion - The LDAP protocol version for which to make the determination.
      Returns:
      true if the server indicates that it supports the specified LDAP protocol version, or false if it does not.
    • getSupportedSASLMechanismNames

      Retrieves the names of the supported SASL mechanisms advertised by the server root DSE.
      Returns:
      The names of the supported SASL mechanisms advertised by the server root DSE, or null if the server does not publish that information.
    • supportsSASLMechanism

      public final boolean supportsSASLMechanism(@NotNull String mechanismName)
      Indicates whether the directory server indicates that it supports the specified SASL mechanism.
      Parameters:
      mechanismName - The name of the SASL mechanism for which to make the determination. It must not be null.
      Returns:
      true if the server indicates that it supports the specified SASL mechanism, or false if it does not.
    • getVendorName

      @Nullable public final String getVendorName()
      Retrieves the name of the directory server vendor, if available.
      Returns:
      The name of the directory server vendor, or null if the server does not publish that information.
    • getVendorVersion

      Retrieves the directory server version string, if available.
      Returns:
      The directory server version string, or null if the server does not publish that information.