@NotMutable @ThreadSafety(level=NOT_THREADSAFE) public final class ReadOnlyInMemoryDirectoryServerConfig extends InMemoryDirectoryServerConfig
InMemoryDirectoryServerConfig
object. All methods for reading the
configuration will work the same as they do in the superclass, but any
methods which attempt to alter the configuration will throw an
UnsupportedOperationException
.Constructor and Description |
---|
ReadOnlyInMemoryDirectoryServerConfig(InMemoryDirectoryServerConfig config)
Creates a new read-only representation of an in-memory directory server
config object using the provided configuration.
|
Modifier and Type | Method and Description |
---|---|
void |
addAdditionalBindCredentials(java.lang.String dn,
byte[] password)
Adds an additional bind DN and password combination that can be used to
bind to the server, even if the corresponding entry does not exist in the
data set.
|
void |
addAdditionalBindCredentials(java.lang.String dn,
java.lang.String password)
Adds an additional bind DN and password combination that can be used to
bind to the server, even if the corresponding entry does not exist in the
data set.
|
void |
addExtendedOperationHandler(InMemoryExtendedOperationHandler handler)
Adds the provided extended operation handler for use by the server for
processing certain types of extended operations.
|
void |
addSASLBindHandler(InMemorySASLBindHandler handler)
Adds the provided SASL bind handler for use by the server for processing
certain types of SASL bind requests.
|
java.util.Map<DN,byte[]> |
getAdditionalBindCredentials()
Retrieves a map containing DNs and passwords of additional users that will
be allowed to bind to the server, even if their entries do not exist in the
data set.
|
java.util.Set<OperationType> |
getAllowedOperationTypes()
Retrieves the set of operation types that will be allowed by the server.
|
java.util.Set<OperationType> |
getAuthenticationRequiredOperationTypes()
Retrieves the set of operation types that will only be allowed for
authenticated clients.
|
DN[] |
getBaseDNs()
Retrieves the set of base DNs that should be used for the directory server.
|
java.util.List<java.lang.String> |
getEqualityIndexAttributes()
Retrieves a list containing the names or OIDs of the attribute types for
which to maintain an equality index to improve the performance of certain
kinds of searches.
|
java.util.List<InMemoryExtendedOperationHandler> |
getExtendedOperationHandlers()
Retrieves a list of the extended operation handlers that may be used to
process extended operations in the server.
|
java.util.List<InMemoryListenerConfig> |
getListenerConfigs()
Retrieves the list of listener configurations that should be used for the
directory server.
|
java.util.Set<java.lang.String> |
getReferentialIntegrityAttributes()
Retrieves the names of the attributes for which referential integrity
should be maintained.
|
java.util.List<InMemorySASLBindHandler> |
getSASLBindHandlers()
Retrieves a list of the SASL bind handlers that may be used to process
SASL bind requests in the server.
|
void |
setAccessLogHandler(java.util.logging.Handler accessLogHandler)
Specifies the log handler that should be used to record access log messages
about operations processed by the server.
|
void |
setAllowedOperationTypes(java.util.Collection<OperationType> operationTypes)
Specifies the set of operation types that will be allowed by the server.
|
void |
setAllowedOperationTypes(OperationType... operationTypes)
Specifies the set of operation types that will be allowed by the server.
|
void |
setAuthenticationRequiredOperationTypes(java.util.Collection<OperationType> operationTypes)
Specifies the set of operation types that will only be allowed for
authenticated clients.
|
void |
setAuthenticationRequiredOperationTypes(OperationType... operationTypes)
Specifies the set of operation types that will only be allowed for
authenticated clients.
|
void |
setBaseDNs(DN... baseDNs)
Specifies the set of base DNs that should be used for the directory server.
|
void |
setBaseDNs(java.lang.String... baseDNs)
Specifies the set of base DNs that should be used for the directory server.
|
void |
setEnforceAttributeSyntaxCompliance(boolean enforceAttributeSyntaxCompliance)
Specifies whether the server should reject attribute values which violate
the constraints of the associated syntax.
|
void |
setEnforceSingleStructuralObjectClass(boolean enforceSingleStructuralObjectClass)
Specifies whether the server should reject entries which do not contain
exactly one structural object class.
|
void |
setEqualityIndexAttributes(java.util.Collection<java.lang.String> equalityIndexAttributes)
Specifies the names or OIDs of the attribute types for which to maintain an
equality index to improve the performance of certain kinds of searches.
|
void |
setEqualityIndexAttributes(java.lang.String... equalityIndexAttributes)
Specifies the names or OIDs of the attribute types for which to maintain an
equality index to improve the performance of certain kinds of searches.
|
void |
setGenerateOperationalAttributes(boolean generateOperationalAttributes)
Specifies whether the server should automatically generate operational
attributes (including entryDN, entryUUID, creatorsName, createTimestamp,
modifiersName, modifyTimestamp, and subschemaSubentry) for entries in the
server.
|
void |
setLDAPDebugLogHandler(java.util.logging.Handler ldapDebugLogHandler)
Specifies the log handler that should be used to record detailed messages
about LDAP communication to and from the server, which may be useful for
debugging purposes.
|
void |
setListenerConfigs(java.util.Collection<InMemoryListenerConfig> listenerConfigs)
Specifies the configurations for all listeners that should be used for the
directory server.
|
void |
setListenerConfigs(InMemoryListenerConfig... listenerConfigs)
Specifies the configurations for all listeners that should be used for the
directory server.
|
void |
setListenerExceptionHandler(LDAPListenerExceptionHandler exceptionHandler)
Specifies the LDAP listener exception handler that the server should use to
handle any errors encountered while attempting to interact with a client.
|
void |
setMaxChangeLogEntries(int maxChangeLogEntries)
Specifies the maximum number of changelog entries that the server should
maintain.
|
void |
setReferentialIntegrityAttributes(java.util.Collection<java.lang.String> referentialIntegrityAttributes)
Specifies the names of the attributes for which referential integrity
should be maintained.
|
void |
setReferentialIntegrityAttributes(java.lang.String... referentialIntegrityAttributes)
Specifies the names of the attributes for which referential integrity
should be maintained.
|
void |
setSchema(Schema schema)
Specifies the schema that should be used by the server.
|
void |
setVendorName(java.lang.String vendorName)
Specifies the vendor name value to report in the server root DSE.
|
void |
setVendorVersion(java.lang.String vendorVersion)
Specifies the vendor version value to report in the server root DSE.
|
addInMemoryOperationInterceptor, enforceAttributeSyntaxCompliance, enforceSingleStructuralObjectClass, generateOperationalAttributes, getAccessLogHandler, getCodeLogPath, getCustomRootDSEAttributes, getJSONAccessLogHandler, getLDAPDebugLogHandler, getListenerExceptionHandler, getMaxChangeLogEntries, getMaxConnections, getMaxMessageSizeBytes, getMaxSizeLimit, getOperationInterceptors, getPasswordAttributes, getPrimaryPasswordEncoder, getRootDSEEntry, getSchema, getSecondaryPasswordEncoders, getVendorName, getVendorVersion, includeRequestProcessingInCodeLog, setCodeLogDetails, setCustomRootDSEAttributes, setJSONAccessLogHandler, setMaxConnections, setMaxMessageSizeBytes, setMaxSizeLimit, setPasswordAttributes, setPasswordAttributes, setPasswordEncoders, setPasswordEncoders, setRootDSEEntry, toString, toString
public ReadOnlyInMemoryDirectoryServerConfig(@NotNull InMemoryDirectoryServerConfig config)
config
- The configuration to use for this read-only representation.@NotNull public DN[] getBaseDNs()
getBaseDNs
in class InMemoryDirectoryServerConfig
public void setBaseDNs(@NotNull java.lang.String... baseDNs) throws LDAPException, java.lang.UnsupportedOperationException
UnsupportedOperationException
.setBaseDNs
in class InMemoryDirectoryServerConfig
baseDNs
- The set of base DNs that should be used for the directory
server. It must not be null
or empty.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.LDAPException
- If the provided set of base DN strings is null or
empty, or if any of the provided base DN strings
cannot be parsed as a valid DN.public void setBaseDNs(@NotNull DN... baseDNs) throws LDAPException, java.lang.UnsupportedOperationException
UnsupportedOperationException
.setBaseDNs
in class InMemoryDirectoryServerConfig
baseDNs
- The set of base DNs that should be used for the directory
server. It must not be null
or empty.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.LDAPException
- If the provided set of base DNs is null or empty.@NotNull public java.util.List<InMemoryListenerConfig> getListenerConfigs()
getListenerConfigs
in class InMemoryDirectoryServerConfig
public void setListenerConfigs(@NotNull InMemoryListenerConfig... listenerConfigs) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setListenerConfigs
in class InMemoryDirectoryServerConfig
listenerConfigs
- The configurations for all listeners that should
be used for the directory server. It must not be
null
or empty, and it must not contain
multiple configurations with the same name.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setListenerConfigs(@NotNull java.util.Collection<InMemoryListenerConfig> listenerConfigs) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setListenerConfigs
in class InMemoryDirectoryServerConfig
listenerConfigs
- The configurations for all listeners that should
be used for the directory server. It must not be
null
or empty, and it must not contain
multiple configurations with the same name.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.Set<OperationType> getAllowedOperationTypes()
getAllowedOperationTypes
in class InMemoryDirectoryServerConfig
public void setAllowedOperationTypes(@Nullable OperationType... operationTypes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setAllowedOperationTypes
in class InMemoryDirectoryServerConfig
operationTypes
- The set of operation types that will be allowed by
the server.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setAllowedOperationTypes(@Nullable java.util.Collection<OperationType> operationTypes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setAllowedOperationTypes
in class InMemoryDirectoryServerConfig
operationTypes
- The set of operation types that will be allowed by
the server.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.Set<OperationType> getAuthenticationRequiredOperationTypes()
getAuthenticationRequiredOperationTypes
in class InMemoryDirectoryServerConfig
public void setAuthenticationRequiredOperationTypes(@Nullable OperationType... operationTypes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setAuthenticationRequiredOperationTypes
in class InMemoryDirectoryServerConfig
operationTypes
- The set of operation types that will be allowed for
authenticated clients.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setAuthenticationRequiredOperationTypes(@Nullable java.util.Collection<OperationType> operationTypes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setAuthenticationRequiredOperationTypes
in class InMemoryDirectoryServerConfig
operationTypes
- The set of operation types that will be allowed for
authenticated clients.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.Map<DN,byte[]> getAdditionalBindCredentials()
getAdditionalBindCredentials
in class InMemoryDirectoryServerConfig
public void addAdditionalBindCredentials(@NotNull java.lang.String dn, @NotNull java.lang.String password) throws LDAPException, java.lang.UnsupportedOperationException
UnsupportedOperationException
.addAdditionalBindCredentials
in class InMemoryDirectoryServerConfig
dn
- The bind DN to allow. It must not be null
or
represent the null DN.password
- The password for the provided bind DN. It must not be
null
or empty.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.LDAPException
- If there is a problem with the provided bind DN or
password.public void addAdditionalBindCredentials(@NotNull java.lang.String dn, @NotNull byte[] password) throws LDAPException, java.lang.UnsupportedOperationException
UnsupportedOperationException
.addAdditionalBindCredentials
in class InMemoryDirectoryServerConfig
dn
- The bind DN to allow. It must not be null
or
represent the null DN.password
- The password for the provided bind DN. It must not be
null
or empty.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.LDAPException
- If there is a problem with the provided bind DN or
password.public void setListenerExceptionHandler(@NotNull LDAPListenerExceptionHandler exceptionHandler) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setListenerExceptionHandler
in class InMemoryDirectoryServerConfig
exceptionHandler
- The LDAP listener exception handler that the
server should use to handle any errors
encountered while attempting to interact with a
client. It may be null
if no exception
handler should be used.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setSchema(@Nullable Schema schema) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setSchema
in class InMemoryDirectoryServerConfig
schema
- The schema that should be used by the server. It may be
null
if no schema should be used.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setEnforceAttributeSyntaxCompliance(boolean enforceAttributeSyntaxCompliance)
null
schema is in place. This method will always throw an
UnsupportedOperationException
.setEnforceAttributeSyntaxCompliance
in class InMemoryDirectoryServerConfig
enforceAttributeSyntaxCompliance
- Indicates whether the server
should reject attribute values
which violate the constraints of
the associated syntax.public void setEnforceSingleStructuralObjectClass(boolean enforceSingleStructuralObjectClass)
null
schema is in place. This method will always throw an
UnsupportedOperationException
.setEnforceSingleStructuralObjectClass
in class InMemoryDirectoryServerConfig
enforceSingleStructuralObjectClass
- Indicates whether the server
should reject entries which do
not contain exactly one
structural object class.public void setAccessLogHandler(@Nullable java.util.logging.Handler accessLogHandler) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setAccessLogHandler
in class InMemoryDirectoryServerConfig
accessLogHandler
- The log handler that should be used to record
access log messages about operations processed by
the server. It may be null
if no access
logging should be performed.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setLDAPDebugLogHandler(@Nullable java.util.logging.Handler ldapDebugLogHandler) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setLDAPDebugLogHandler
in class InMemoryDirectoryServerConfig
ldapDebugLogHandler
- The log handler that should be used to record
detailed messages about LDAP communication to
and from the server. It may be null
if no LDAP debug logging should be performed.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.List<InMemoryExtendedOperationHandler> getExtendedOperationHandlers()
getExtendedOperationHandlers
in class InMemoryDirectoryServerConfig
public void addExtendedOperationHandler(@NotNull InMemoryExtendedOperationHandler handler) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.addExtendedOperationHandler
in class InMemoryDirectoryServerConfig
handler
- The extended operation handler that should be used by the
server for processing certain types of extended
operations.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.List<InMemorySASLBindHandler> getSASLBindHandlers()
getSASLBindHandlers
in class InMemoryDirectoryServerConfig
public void addSASLBindHandler(@NotNull InMemorySASLBindHandler handler) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.addSASLBindHandler
in class InMemoryDirectoryServerConfig
handler
- The SASL bind handler that should be used by the server
for processing certain types of SASL bind requests.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setGenerateOperationalAttributes(boolean generateOperationalAttributes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setGenerateOperationalAttributes
in class InMemoryDirectoryServerConfig
generateOperationalAttributes
- Indicates whether the server should
automatically generate operational
attributes for entries in the
server.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setMaxChangeLogEntries(int maxChangeLogEntries) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setMaxChangeLogEntries
in class InMemoryDirectoryServerConfig
maxChangeLogEntries
- The maximum number of changelog entries that
the server should maintain.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.List<java.lang.String> getEqualityIndexAttributes()
getEqualityIndexAttributes
in class InMemoryDirectoryServerConfig
public void setEqualityIndexAttributes(@Nullable java.lang.String... equalityIndexAttributes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setEqualityIndexAttributes
in class InMemoryDirectoryServerConfig
equalityIndexAttributes
- The names or OIDs of the attributes for
which to maintain an equality index to
improve the performance of certain kinds
of searches. It may be null
or
empty to indicate that no equality indexes
should be maintained.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setEqualityIndexAttributes(@Nullable java.util.Collection<java.lang.String> equalityIndexAttributes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setEqualityIndexAttributes
in class InMemoryDirectoryServerConfig
equalityIndexAttributes
- The names or OIDs of the attributes for
which to maintain an equality index to
improve the performance of certain kinds
of searches. It may be null
or
empty to indicate that no equality indexes
should be maintained.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.@NotNull public java.util.Set<java.lang.String> getReferentialIntegrityAttributes()
getReferentialIntegrityAttributes
in class InMemoryDirectoryServerConfig
public void setReferentialIntegrityAttributes(@Nullable java.lang.String... referentialIntegrityAttributes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setReferentialIntegrityAttributes
in class InMemoryDirectoryServerConfig
referentialIntegrityAttributes
- The names of the attributes for
which referential integrity should
be maintained. The values of
these attributes should be DNs.
It may be null
or empty if
referential integrity should not
be maintained.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setReferentialIntegrityAttributes(@Nullable java.util.Collection<java.lang.String> referentialIntegrityAttributes) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setReferentialIntegrityAttributes
in class InMemoryDirectoryServerConfig
referentialIntegrityAttributes
- The names of the attributes for
which referential integrity should
be maintained. The values of
these attributes should be DNs.
It may be null
or empty if
referential integrity should not
be maintained.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setVendorName(@Nullable java.lang.String vendorName) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setVendorName
in class InMemoryDirectoryServerConfig
vendorName
- The vendor name value to report in the server root DSE.
It may be null
if no vendor name should appear.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.public void setVendorVersion(@Nullable java.lang.String vendorVersion) throws java.lang.UnsupportedOperationException
UnsupportedOperationException
.setVendorVersion
in class InMemoryDirectoryServerConfig
vendorVersion
- The vendor version value to report in the server
root DSE. It may be null
if no vendor
version should appear.java.lang.UnsupportedOperationException
- To indicate that this object cannot
be altered.