Package io.jans.orm.ldap.operation.impl
Class LdapOperationServiceImpl
java.lang.Object
io.jans.orm.ldap.operation.impl.LdapOperationServiceImpl
- All Implemented Interfaces:
LdapOperationService,io.jans.orm.operation.PersistenceOperationService
OperationsFacade is the base class that performs all the ldap operations
using connectionpool
- Author:
- Pankaj, Yuriy Movchan
-
Field Summary
FieldsFields inherited from interface io.jans.orm.ldap.operation.LdapOperationService
DN, OBJECT_CLASS, SUCCESS, UID, UID_ARRAY, USER_PASSWORD -
Constructor Summary
ConstructorsConstructorDescriptionLdapOperationServiceImpl(LdapConnectionProvider connectionProvider) LdapOperationServiceImpl(LdapConnectionProvider connectionProvider, LdapConnectionProvider bindConnectionProvider) -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddEntry(String dn, Collection<com.unboundid.ldap.sdk.Attribute> attributes) Use this method to add new entrybooleanauthenticate(String bindDn, String password, String objectClass) String[]createStoragePassword(String[] passwords) booleanDelete entry from the directorybooleanDelete entry from the directoryprotected booleanbooleandestroy()getAttributes(String objectClass) getAttributeType(String attributeName) getCertificateAttributeName(String attributeName) com.unboundid.ldap.sdk.LDAPConnectioncom.unboundid.ldap.sdk.LDAPConnectionPoolio.jans.orm.model.PersistenceMetadatagetPersistenceMetadata(String primaryKey) intbooleanisBinaryAttribute(String attributeName) booleanisCertificateAttribute(String attributeName) booleanbooleanisSupportObjectClass(String objectClass) io.jans.orm.model.EntryDataLookup entry in the directoryprotected booleanmodifyEntry(com.unboundid.ldap.sdk.ModifyRequest modifyRequest) Use this method to add / replace / delete attribute from entrybooleanprocessChange(com.unboundid.ldif.LDIFChangeRecord ldifRecord) voidreleaseConnection(com.unboundid.ldap.sdk.LDAPConnection connection) <T> io.jans.orm.model.PagedResult<io.jans.orm.model.EntryData>search(String dn, com.unboundid.ldap.sdk.Filter filter, com.unboundid.ldap.sdk.SearchScope scope, LdapBatchOperationWraper<T> batchOperationWraper, int start, int count, int pageSize, com.unboundid.ldap.sdk.Control[] controls, String... attributes) <T> io.jans.orm.model.PagedResult<io.jans.orm.model.EntryData>searchPagedEntries(String dn, com.unboundid.ldap.sdk.Filter filter, com.unboundid.ldap.sdk.SearchScope scope, int startIndex, int count, int pageSize, String sortBy, io.jans.orm.model.SortOrder sortOrder, String... attributes) voidsetBindConnectionProvider(LdapConnectionProvider bindConnectionProvider) voidsetConnectionProvider(LdapConnectionProvider connectionProvider) voidsetPersistenceExtension(io.jans.orm.extension.PersistenceExtension persistenceExtension) <T> List<T>sortListByAttributes(List<T> searchResultEntries, Class<T> cls, boolean caseSensitive, boolean ascending, String... sortByAttributes) protected booleanupdateEntry(String dn, Collection<com.unboundid.ldap.sdk.Attribute> attrs) Deprecated.booleanupdateEntry(String dn, List<com.unboundid.ldap.sdk.Modification> modifications) This method is used to update set of attributes for an entry
-
Field Details
-
NO_STRINGS
-
-
Constructor Details
-
LdapOperationServiceImpl
-
LdapOperationServiceImpl
public LdapOperationServiceImpl(LdapConnectionProvider connectionProvider, LdapConnectionProvider bindConnectionProvider)
-
-
Method Details
-
getConnectionProvider
- Specified by:
getConnectionProviderin interfaceLdapOperationService
-
setConnectionProvider
- Specified by:
setConnectionProviderin interfaceLdapOperationService
-
getBindConnectionProvider
- Specified by:
getBindConnectionProviderin interfaceLdapOperationService
-
setBindConnectionProvider
- Specified by:
setBindConnectionProviderin interfaceLdapOperationService
-
getConnectionPool
public com.unboundid.ldap.sdk.LDAPConnectionPool getConnectionPool()- Specified by:
getConnectionPoolin interfaceLdapOperationService
-
getConnection
public com.unboundid.ldap.sdk.LDAPConnection getConnection() throws com.unboundid.ldap.sdk.LDAPException- Specified by:
getConnectionin interfaceLdapOperationService- Throws:
com.unboundid.ldap.sdk.LDAPException
-
releaseConnection
public void releaseConnection(com.unboundid.ldap.sdk.LDAPConnection connection) - Specified by:
releaseConnectionin interfaceLdapOperationService
-
authenticate
public boolean authenticate(String bindDn, String password, String objectClass) throws io.jans.orm.exception.operation.ConnectionException, io.jans.orm.exception.operation.SearchException, io.jans.orm.exception.AuthenticationException - Specified by:
authenticatein interfaceio.jans.orm.operation.PersistenceOperationService- Throws:
io.jans.orm.exception.operation.ConnectionExceptionio.jans.orm.exception.operation.SearchExceptionio.jans.orm.exception.AuthenticationException
-
search
public <T> io.jans.orm.model.PagedResult<io.jans.orm.model.EntryData> search(String dn, com.unboundid.ldap.sdk.Filter filter, com.unboundid.ldap.sdk.SearchScope scope, LdapBatchOperationWraper<T> batchOperationWraper, int start, int count, int pageSize, com.unboundid.ldap.sdk.Control[] controls, String... attributes) throws io.jans.orm.exception.operation.SearchException - Specified by:
searchin interfaceLdapOperationService- Throws:
io.jans.orm.exception.operation.SearchException
-
searchPagedEntries
public <T> io.jans.orm.model.PagedResult<io.jans.orm.model.EntryData> searchPagedEntries(String dn, com.unboundid.ldap.sdk.Filter filter, com.unboundid.ldap.sdk.SearchScope scope, int startIndex, int count, int pageSize, String sortBy, io.jans.orm.model.SortOrder sortOrder, String... attributes) throws Exception - Specified by:
searchPagedEntriesin interfaceLdapOperationService- Throws:
Exception
-
lookup
public io.jans.orm.model.EntryData lookup(String dn, String... attributes) throws io.jans.orm.exception.operation.ConnectionException, io.jans.orm.exception.operation.SearchException Description copied from interface:LdapOperationServiceLookup entry in the directory- Specified by:
lookupin interfaceLdapOperationService- Returns:
- EntryData
- Throws:
io.jans.orm.exception.operation.ConnectionExceptionio.jans.orm.exception.operation.SearchException
-
addEntry
public boolean addEntry(String dn, Collection<com.unboundid.ldap.sdk.Attribute> attributes) throws io.jans.orm.exception.operation.DuplicateEntryException, io.jans.orm.exception.operation.ConnectionException Description copied from interface:LdapOperationServiceUse this method to add new entry- Specified by:
addEntryin interfaceLdapOperationService- Parameters:
dn- for entryattributes- attributes for entry- Returns:
- true if successfully added
- Throws:
io.jans.orm.exception.operation.DuplicateEntryExceptionio.jans.orm.exception.operation.ConnectionException
-
updateEntry
@Deprecated protected boolean updateEntry(String dn, Collection<com.unboundid.ldap.sdk.Attribute> attrs) throws io.jans.orm.exception.operation.DuplicateEntryException, io.jans.orm.exception.operation.ConnectionException Deprecated.- Throws:
io.jans.orm.exception.operation.DuplicateEntryExceptionio.jans.orm.exception.operation.ConnectionException
-
updateEntry
public boolean updateEntry(String dn, List<com.unboundid.ldap.sdk.Modification> modifications) throws io.jans.orm.exception.operation.DuplicateEntryException, io.jans.orm.exception.operation.ConnectionException Description copied from interface:LdapOperationServiceThis method is used to update set of attributes for an entry- Specified by:
updateEntryin interfaceLdapOperationService- Returns:
- Throws:
io.jans.orm.exception.operation.DuplicateEntryExceptionio.jans.orm.exception.operation.ConnectionException
-
modifyEntry
protected boolean modifyEntry(com.unboundid.ldap.sdk.ModifyRequest modifyRequest) throws io.jans.orm.exception.operation.DuplicateEntryException, io.jans.orm.exception.operation.ConnectionException Use this method to add / replace / delete attribute from entry- Parameters:
modifyRequest-- Returns:
- true if modification is successful
- Throws:
io.jans.orm.exception.operation.DuplicateEntryExceptionio.jans.orm.exception.operation.ConnectionException
-
delete
Description copied from interface:LdapOperationServiceDelete entry from the directory- Specified by:
deletein interfaceLdapOperationService- Throws:
io.jans.orm.exception.operation.ConnectionException
-
deleteRecursively
public boolean deleteRecursively(String dn) throws io.jans.orm.exception.operation.ConnectionException Description copied from interface:LdapOperationServiceDelete entry from the directory- Specified by:
deleteRecursivelyin interfaceLdapOperationService- Returns:
- Throws:
io.jans.orm.exception.operation.ConnectionException
-
deleteRecursivelyImpl
-
processChange
public boolean processChange(com.unboundid.ldif.LDIFChangeRecord ldifRecord) throws com.unboundid.ldap.sdk.LDAPException - Specified by:
processChangein interfaceLdapOperationService- Throws:
com.unboundid.ldap.sdk.LDAPException
-
getSupportedLDAPVersion
public int getSupportedLDAPVersion()- Specified by:
getSupportedLDAPVersionin interfaceLdapOperationService
-
getSubschemaSubentry
- Specified by:
getSubschemaSubentryin interfaceLdapOperationService
-
destroy
public boolean destroy()- Specified by:
destroyin interfaceLdapOperationService
-
isBinaryAttribute
- Specified by:
isBinaryAttributein interfaceLdapOperationService
-
isCertificateAttribute
- Specified by:
isCertificateAttributein interfaceLdapOperationService
-
getCertificateAttributeName
- Specified by:
getCertificateAttributeNamein interfaceLdapOperationService
-
createStoragePassword
-
sortListByAttributes
public <T> List<T> sortListByAttributes(List<T> searchResultEntries, Class<T> cls, boolean caseSensitive, boolean ascending, String... sortByAttributes) - Specified by:
sortListByAttributesin interfaceLdapOperationService
-
getAttributes
- Specified by:
getAttributesin interfaceLdapOperationService
-
getAttributeType
- Specified by:
getAttributeTypein interfaceLdapOperationService
-
isConnected
public boolean isConnected()- Specified by:
isConnectedin interfaceio.jans.orm.operation.PersistenceOperationService
-
setPersistenceExtension
public void setPersistenceExtension(io.jans.orm.extension.PersistenceExtension persistenceExtension) - Specified by:
setPersistenceExtensionin interfaceio.jans.orm.operation.PersistenceOperationService
-
isSupportObjectClass
- Specified by:
isSupportObjectClassin interfaceio.jans.orm.operation.PersistenceOperationService
-
getPersistenceMetadata
- Specified by:
getPersistenceMetadatain interfaceio.jans.orm.operation.PersistenceOperationService
-
getTableColumnsMap
- Specified by:
getTableColumnsMapin interfaceio.jans.orm.operation.PersistenceOperationService
-