public interface LdapConnection extends Closeable
Modifier and Type | Method and Description |
---|---|
void |
abandon(AbandonRequest abandonRequest)
An abandon request essentially with the request message ID of the operation to be canceled
and/or potentially some controls and timeout (the controls and timeout are not mandatory).
|
void |
abandon(int messageId)
Abandons a request submitted to the server for performing a particular operation.
|
AddResponse |
add(AddRequest addRequest)
Add an entry present in the
AddRequest to the server. |
void |
add(Entry entry)
Add an entry to the server.
|
void |
anonymousBind()
Anonymous bind on a server.
|
void |
bind()
Bind on a server, using the
LdapConnectionConfig information of this connection. |
BindResponse |
bind(BindRequest bindRequest)
Bind to the server using a bind request object.
|
void |
bind(Dn name)
Unauthenticated authentication bind on a server.
|
void |
bind(Dn name,
String credentials)
Simple bind on a server.
|
void |
bind(String name)
Unauthenticated authentication bind on a server.
|
void |
bind(String name,
String credentials)
Simple bind on a server.
|
void |
close()
Disconnect from the remote LDAP server.
|
CompareResponse |
compare(CompareRequest compareRequest)
Compares an entry's attribute's value with that of the given value.
|
boolean |
compare(Dn dn,
String attributeName,
byte[] value)
Compares whether a given attribute's value matches that of the
existing value of the attribute present in the entry with the given distinguished name.
|
boolean |
compare(Dn dn,
String attributeName,
String value)
Compares whether a given attribute's value matches that of the
existing value of the attribute present in the entry with the given distinguished name.
|
boolean |
compare(Dn dn,
String attributeName,
Value<?> value)
Compares whether a given attribute's value matches that of the
existing value of the attribute present in the entry with the given distinguished name.
|
boolean |
compare(String dn,
String attributeName,
byte[] value)
Compares whether a given attribute's value matches that of the
existing value of the attribute present in the entry with the given distinguished name.
|
boolean |
compare(String dn,
String attributeName,
String value)
Compares whether a given attribute's value matches that of the
existing value of the attribute present in the entry with the given distinguished name.
|
boolean |
compare(String dn,
String attributeName,
Value<?> value)
Compares whether a given attribute's value matches that of the
existing value of the attribute present in the entry with the given distinguished name.
|
boolean |
connect()
Connect to the remote LDAP server.
|
DeleteResponse |
delete(DeleteRequest deleteRequest)
Performs a delete operation based on the delete request object.
|
void |
delete(Dn dn)
Deletes the entry with the given distinguished name.
|
void |
delete(String dn)
Deletes the entry with the given distinguished name.
|
boolean |
doesFutureExistFor(int messageId)
Deprecated.
|
boolean |
exists(Dn dn)
Tells if an Entry exists in the server.
|
boolean |
exists(String dn)
Tells if an entry exists in the server.
|
ExtendedResponse |
extended(ExtendedRequest extendedRequest)
Performs an extended operation based on the extended request object.
|
ExtendedResponse |
extended(Oid oid)
Sends a extended operation request to the server with the given OID and no value.
|
ExtendedResponse |
extended(Oid oid,
byte[] value)
Sends a extended operation request to the server with the given OID and value.
|
ExtendedResponse |
extended(String oid)
Sends a extended operation request to the server with the given OID and no value.
|
ExtendedResponse |
extended(String oid,
byte[] value)
Sends a extended operation request to the server with the given OID and value.
|
BinaryAttributeDetector |
getBinaryAttributeDetector() |
LdapApiService |
getCodecService()
Gets the LDAP CODEC service responsible for encoding and decoding
messages.
|
Entry |
getRootDse()
Get back the RooDSE from the connected server.
|
Entry |
getRootDse(String... attributes)
Get back the RooDSE from the connected server.
|
SchemaManager |
getSchemaManager() |
List<String> |
getSupportedControls()
Get the Controls supported by server.
|
boolean |
isAuthenticated()
Check if the connection is authenticated.
|
boolean |
isConnected()
Check if the connection is established
|
boolean |
isControlSupported(String controlOID)
Checks if a control with the given OID is supported.
|
boolean |
isRequestCompleted(int messageId)
Checks if a request has been completed, or not.
|
void |
loadSchema()
Loads all the default schemas that are bundled with the API.
Note: This method enables all schemas prior to loading. |
void |
loadSchemaRelaxed()
Loads all the default schemas that are bundled with the API, in a relaxed mode.
Note: This method enables all schemas prior to loading. The relaxed mode will allow inconsistencies in the schema. |
Entry |
lookup(Dn dn)
Searches for an entry having the given distinguished name.
|
Entry |
lookup(Dn dn,
Control[] controls,
String... attributes)
Searches for an entry having the given distinguished name.
|
Entry |
lookup(Dn dn,
String... attributes)
Searches for an entry having the given distinguished name.
|
Entry |
lookup(String dn)
Searches for an entry having the given distinguished name.
|
Entry |
lookup(String dn,
Control[] controls,
String... attributes)
Searches for an entry having the given distinguished name.
|
Entry |
lookup(String dn,
String... attributes)
Searches for an entry having the given distinguished name.
|
void |
modify(Dn dn,
Modification... modifications)
Applies all the modifications to the entry specified by its distinguished name.
|
void |
modify(Entry entry,
ModificationOperation modOp)
Modifies all the attributes present in the entry by applying the same operation.
|
ModifyResponse |
modify(ModifyRequest modRequest)
Performs an modify operation based on the modifications present in
the modify request.
|
void |
modify(String dn,
Modification... modifications)
Applies all the modifications to the entry specified by its distinguished name.
|
ModifyDnResponse |
modifyDn(ModifyDnRequest modDnRequest)
Performs the modifyDn operation based on the given request object.
|
void |
move(Dn entryDn,
Dn newSuperiorDn)
Moves the given entry distinguished name under the new superior distinguished name.
|
void |
move(String entryDn,
String newSuperiorDn)
Moves the given entry distinguished name under the new superior distinguished name.
|
void |
moveAndRename(Dn entryDn,
Dn newDn)
Moves and renames the given entryDn.
|
void |
moveAndRename(Dn entryDn,
Dn newDn,
boolean deleteOldRdn)
Moves and renames the given entryDn.
|
void |
moveAndRename(String entryDn,
String newDn)
Moves and renames the given entry distinguished name.
|
void |
moveAndRename(String entryDn,
String newDn,
boolean deleteOldRdn)
Moves and renames the given entryDn.
|
void |
rename(Dn entryDn,
Rdn newRdn)
Renames the given entryDn with new relative distinguished name and deletes the
old relative distinguished name.
|
void |
rename(Dn entryDn,
Rdn newRdn,
boolean deleteOldRdn)
Renames the given entryDn with new relative distinguished name and deletes the
old relative distinguished name if deleteOldRdn is set to true.
|
void |
rename(String entryDn,
String newRdn)
Renames the given entryDn with new relative distinguished name and deletes the
old relative distinguished name.
|
void |
rename(String entryDn,
String newRdn,
boolean deleteOldRdn)
Renames the given entryDn with new relative distinguished name and deletes the
old relative distinguished name if deleteOldRdn is set to true.
|
EntryCursor |
search(Dn baseDn,
String filter,
SearchScope scope,
String... attributes)
Do a search, on the base object, using the given filter and scope.
|
SearchCursor |
search(SearchRequest searchRequest)
Performs search using a search request object.
|
EntryCursor |
search(String baseDn,
String filter,
SearchScope scope,
String... attributes)
Do a search, on the base object, using the given filter and scope.
|
void |
setBinaryAttributeDetector(BinaryAttributeDetector binaryAttributeDetecter)
Sets the object responsible for the detection of binary attributes.
|
void |
setSchemaManager(SchemaManager schemaManager)
sets a SchemaManager to be used by this connection
|
void |
setTimeOut(long timeOut)
Set the timeout for the responses.
|
void |
unBind()
UnBind from a server.
|
boolean isConnected()
true
if the connection is establishedboolean isAuthenticated()
true
if the connection is authenticatedboolean connect() throws LdapException
true
if the connection is established, false otherwiseLdapException
- if some error occurredvoid close() throws IOException
close
in interface AutoCloseable
close
in interface Closeable
IOException
- if some I/O error occursvoid add(Entry entry) throws LdapException
entry
- The entry to addLdapException
- if some error occurredAddResponse add(AddRequest addRequest) throws LdapException
AddRequest
to the server.addRequest
- the request object containing an entry and controls (if any)LdapException
- if some error occurredvoid abandon(int messageId)
messageId
- the ID of the request message sent to the servervoid abandon(AbandonRequest abandonRequest)
abandonRequest
- the abandon operation's requestvoid bind() throws LdapException
LdapConnectionConfig
information of this connection.LdapException
- if some error occurredvoid anonymousBind() throws LdapException
LdapException
- if some error occurredvoid bind(String name) throws LdapException
name
- The name used to authenticate the user. It must be a
valid distinguished name.LdapException
- if some error occurredvoid bind(String name, String credentials) throws LdapException
name
- The name used to authenticate the user. It must be a
valid distinguished name.credentials
- The password, it can't be null
LdapException
- if some error occurredvoid bind(Dn name) throws LdapException
name
- The name used to authenticate the user.LdapException
- if some error occurredvoid bind(Dn name, String credentials) throws LdapException
name
- The name used to authenticate the user.credentials
- The password, it can't be nullLdapException
- if some error occurredBindResponse bind(BindRequest bindRequest) throws LdapException
bindRequest
- The bind request object containing all the needed parametersBindResponse
containing the resultLdapException
- if some error occurredEntryCursor search(Dn baseDn, String filter, SearchScope scope, String... attributes) throws LdapException
baseDn
- The base for the search. It must be a valid distinguished name and can't be emtpyfilter
- The filter to use for this search. It can't be emptyscope
- The search scope : OBJECT, ONELEVEL or SUBTREEattributes
- The attributes to use for this searchEntryCursor
on the result.LdapException
- if some error occurredEntryCursor search(String baseDn, String filter, SearchScope scope, String... attributes) throws LdapException
baseDn
- The base for the search. It must be a valid distinguished name, and can't be emtpyfilter
- The filter to use for this search. It can't be emptyscope
- The search scope : OBJECT, ONELEVEL or SUBTREEattributes
- The attributes to use for this searchEntryCursor
on the result.LdapException
- if some error occurredSearchCursor search(SearchRequest searchRequest) throws LdapException
searchRequest
- The search request object containing all the needed informationLdapException
- if some error occurredvoid unBind() throws LdapException
LdapException
- if some error occurredvoid setTimeOut(long timeOut)
timeOut
- The timeout, in millisecondsvoid modify(Dn dn, Modification... modifications) throws LdapException
dn
- The entry's distinguished namemodifications
- The list of modifications to be appliedLdapException
- in case of modify operation failure or timeout happensvoid modify(String dn, Modification... modifications) throws LdapException
dn
- The entry's distinguished name, it must be a valid distinguished name.modifications
- The list of modifications to be appliedLdapException
- in case of modify operation failure or timeout happensvoid modify(Entry entry, ModificationOperation modOp) throws LdapException
entry
- the entry with the attributes to be modifiedmodOp
- the operation to be applied on all the attributes of the above entryLdapException
- in case of modify operation failure or timeout happensModifyResponse modify(ModifyRequest modRequest) throws LdapException
modRequest
- the modify request objectLdapException
- in case of modify operation failure or timeout happensvoid rename(String entryDn, String newRdn) throws LdapException
entryDn
- the target distinguished name.newRdn
- new relative distinguished name for the target distinguished name.LdapException
- if some error occurredrename(String, String, boolean)
void rename(Dn entryDn, Rdn newRdn) throws LdapException
entryDn
- the target distinguished name.newRdn
- new relative distinguished name for the target distinguished name.LdapException
- if some error occurredrename(Dn, Rdn, boolean)
void rename(String entryDn, String newRdn, boolean deleteOldRdn) throws LdapException
entryDn
- the target distinguished name.newRdn
- new relative distinguished name for the target distinguished name.deleteOldRdn
- flag to indicate whether to delete the old relative distinguished nameLdapException
- if some error occurredrename(Dn, Rdn, boolean)
void rename(Dn entryDn, Rdn newRdn, boolean deleteOldRdn) throws LdapException
entryDn
- the target distinguished name.newRdn
- new relative distinguished name for the target distinguished name.deleteOldRdn
- flag to indicate whether to delete the old relative distinguished nameLdapException
- if some error occurredvoid move(String entryDn, String newSuperiorDn) throws LdapException
entryDn
- the distinguished name of the target entrynewSuperiorDn
- distinguished name of the new parent/superiorLdapException
- if some error occurredmove(Dn, Dn)
void move(Dn entryDn, Dn newSuperiorDn) throws LdapException
entryDn
- the distinguished name of the target entrynewSuperiorDn
- distinguished name of the new parent/superiorLdapException
- if some error occurredvoid moveAndRename(Dn entryDn, Dn newDn) throws LdapException
entryDn
- The original entry distinguished name.newDn
- The new entry distinguished name.LdapException
- if some error occurredmoveAndRename(Dn, Dn, boolean)
void moveAndRename(String entryDn, String newDn) throws LdapException
entryDn
- The original entry distinguished name.newDn
- The new entry distinguished name.LdapException
- if some error occurredmoveAndRename(Dn, Dn, boolean)
void moveAndRename(Dn entryDn, Dn newDn, boolean deleteOldRdn) throws LdapException
entryDn
- The original entry distinguished name.newDn
- The new entry distinguished name.deleteOldRdn
- Tells if the old relative distinguished name must be removedLdapException
- if some error occurredvoid moveAndRename(String entryDn, String newDn, boolean deleteOldRdn) throws LdapException
entryDn
- The original entry distinguished name.newDn
- The new entry distinguished name.deleteOldRdn
- Tells if the old relative distinguished name must be removedLdapException
- if some error occurredModifyDnResponse modifyDn(ModifyDnRequest modDnRequest) throws LdapException
modDnRequest
- the request objectLdapException
- if some error occurredvoid delete(String dn) throws LdapException
dn
- the target entry's distinguished name, it must be a valid distinguished name.LdapException
- If the distinguished name is not valid or if the deletion failedvoid delete(Dn dn) throws LdapException
dn
- the target entry's distinguished nameLdapException
- If the distinguished name is not valid or if the deletion failedDeleteResponse delete(DeleteRequest deleteRequest) throws LdapException
deleteRequest
- the delete operation's requestLdapException
- If the distinguished name is not valid or if the deletion failedboolean compare(String dn, String attributeName, String value) throws LdapException
dn
- the target entry's distinguished name, it must be a valid distinguished name.attributeName
- the attribute's namevalue
- a String value with which the target entry's attribute value to be compared withtrue
if the value matches, false
otherwiseLdapException
- if some error occurredboolean compare(String dn, String attributeName, byte[] value) throws LdapException
dn
- the target entry's distinguished name, it must be a valid distinguished name.attributeName
- the attribute's namevalue
- a byte[] value with which the target entry's attribute value to be compared withtrue
if the value matches, false
otherwiseLdapException
- if some error occurredboolean compare(String dn, String attributeName, Value<?> value) throws LdapException
dn
- the target entry's distinguished name, it must be a valid distinguished name.attributeName
- the attribute's namevalue
- a Value<?> value with which the target entry's attribute value to be compared withtrue
if the value matches, false
otherwiseLdapException
- if some error occurredboolean compare(Dn dn, String attributeName, String value) throws LdapException
dn
- the target entry's distinguished nameattributeName
- the attribute's namevalue
- a String value with which the target entry's attribute value to be compared withtrue
if the value matches, false
otherwiseLdapException
- if some error occurredboolean compare(Dn dn, String attributeName, byte[] value) throws LdapException
dn
- the target entry's distinguished nameattributeName
- the attribute's namevalue
- a byte[] value with which the target entry's attribute value to be compared withtrue
if the value matches, false
otherwiseLdapException
- if some error occurredboolean compare(Dn dn, String attributeName, Value<?> value) throws LdapException
dn
- the target entry's distinguished nameattributeName
- the attribute's namevalue
- a Value<?> value with which the target entry's attribute value to be compared withtrue
if the value matches, false
otherwiseLdapException
- if some error occurredCompareResponse compare(CompareRequest compareRequest) throws LdapException
compareRequest
- the compare request which contains the target distinguished name,
attribute name and valueLdapException
- if some error occurredExtendedResponse extended(String oid) throws LdapException
oid
- the object identifier of the extended operationLdapException
- if some error occurredextended(org.apache.directory.api.asn1.util.Oid, byte[])
ExtendedResponse extended(String oid, byte[] value) throws LdapException
oid
- the object identifier of the extended operationvalue
- value to be used by the extended operation, can be a null valueLdapException
- if some error occurredextended(org.apache.directory.api.asn1.util.Oid, byte[])
ExtendedResponse extended(Oid oid) throws LdapException
oid
- the object identifier of the extended operationLdapException
- if some error occurredextended(org.apache.directory.api.asn1.util.Oid, byte[])
ExtendedResponse extended(Oid oid, byte[] value) throws LdapException
oid
- the object identifier of the extended operationvalue
- value to be used by the extended operation, can be a null valueLdapException
- if some error occurredExtendedResponse extended(ExtendedRequest extendedRequest) throws LdapException
extendedRequest
- the extended operation's requestLdapException
- if the extended operation failedboolean exists(String dn) throws LdapException
dn
- The distinguished name of the entry to check for existence, must be a valid distinguished name.true
if the entry exists, false
otherwise.
Note that if the entry exists but if the user does not have the permission to
read it, false
will also be returnedLdapException
- if some error occurredboolean exists(Dn dn) throws LdapException
dn
- The distinguished name of the entry to check for existencetrue
if the entry exists, false
otherwise.
Note that if the entry exists but if the user does not have the permission to
read it, false
will also be returnedLdapException
- if some error occurredEntry getRootDse() throws LdapException
LdapException
- If the rootDSE can't be readEntry getRootDse(String... attributes) throws LdapException
attributes
- The list of attributes to returnLdapException
- If the rootDSE can't be readEntry lookup(Dn dn) throws LdapException
dn
- the distinguished name of the entry to be fetchedLdapException
- in case of any problems while searching for the distinguished name or if the returned
response contains a referrallookup(Dn, String...)
Entry lookup(String dn) throws LdapException
dn
- the distinguished name of the entry to be fetchedLdapException
- in case of any problems while searching for the distinguished name or if the returned
response contains a referrallookup(String, String...)
Entry lookup(Dn dn, String... attributes) throws LdapException
dn
- the distinguished name of the entry to be fetchedattributes
- the attributes to be returned along with entryLdapException
- in case of any problems while searching for the distinguished name
or if the returned response contains a referralEntry lookup(Dn dn, Control[] controls, String... attributes) throws LdapException
dn
- the distinguished name of the entry to be fetchedcontrols
- the controls to useattributes
- the attributes to be returned along with entryLdapException
- in case of any problems while searching for the distinguished name
or if the returned response contains a referralEntry lookup(String dn, String... attributes) throws LdapException
dn
- the distinguished name of the entry to be fetchedattributes
- the attributes to be returned along with entryLdapException
- in case of any problems while searching for the distinguished name
or if the returned response contains a referrallookup(Dn, String...)
Entry lookup(String dn, Control[] controls, String... attributes) throws LdapException
dn
- the distinguished name of the entry to be fetchedcontrols
- the controls to useattributes
- the attributes to be returned along with entryLdapException
- in case of any problems while searching for the distinguished name
or if the returned response contains a referrallookup(Dn, String...)
boolean isControlSupported(String controlOID) throws LdapException
controlOID
- the OID of the controlLdapException
- if some error occurredList<String> getSupportedControls() throws LdapException
LdapException
- if some error occurredvoid loadSchema() throws LdapException
LdapException
- in case of problems while loading the schemavoid loadSchemaRelaxed() throws LdapException
LdapException
- in case of problems while loading the schemaSchemaManager getSchemaManager()
LdapApiService getCodecService()
boolean isRequestCompleted(int messageId)
messageId
- ID of the request@Deprecated boolean doesFutureExistFor(int messageId)
isRequestCompleted(int)
messageId
- ID of the requestBinaryAttributeDetector getBinaryAttributeDetector()
void setBinaryAttributeDetector(BinaryAttributeDetector binaryAttributeDetecter)
binaryAttributeDetecter
- The Binary Attribute Detector to usevoid setSchemaManager(SchemaManager schemaManager)
schemaManager
- The SchemaManager to setCopyright © 2003–2018 The Apache Software Foundation. All rights reserved.