com.atlassian.crowd.directory
Class ApacheDS

java.lang.Object
  extended by com.atlassian.crowd.directory.SpringLDAPConnector
      extended by com.atlassian.crowd.directory.RFC4519Directory
          extended by com.atlassian.crowd.directory.ApacheDS
All Implemented Interfaces:
LDAPDirectory, RemoteDirectory, Attributes
Direct Known Subclasses:
ApacheDS15

public class ApacheDS
extends RFC4519Directory


Field Summary
 
Fields inherited from class com.atlassian.crowd.directory.SpringLDAPConnector
attributes, contextSource, contextSourceTransactionManager, DEFAULT_PAGE_SIZE, eventPublisher, ldapPropertiesMapper, ldapQueryTranslater, ldapTemplate, nameConverter, searchDN
 
Constructor Summary
ApacheDS(LDAPQueryTranslater ldapQueryTranslater, com.atlassian.event.api.EventPublisher eventPublisher, InstanceFactory instanceFactory, PasswordEncoderFactory passwordEncoderFactory)
           
 
Method Summary
protected  String encodePassword(PasswordCredential passwordCredential)
          Translates a clear-text password into an encrypted one if it isn't already encrypted, using the encryption method specified by the directory settings.
 String getDescriptiveName()
          Returns a descriptive name for the type of directory.
protected  void getNewUserDirectorySpecificAttributes(User user, Attributes attributes)
          ApacheDS in a default install requires the sn to be set before a user can be created.
static String getStaticDirectoryType()
           
 
Methods inherited from class com.atlassian.crowd.directory.RFC4519Directory
addDnToGroup, addGroupToGroup, addUserToGroup, findDirectMembersOfGroup, findGroupMembershipNames, findGroupMemberships, findGroupMembershipsOfUserViaMemberOf, findUserMembersOfGroupViaMemberDN, findUserMembersOfGroupViaMemberOf, getCustomGroupAttributeMappers, getCustomUserAttributeMappers, getLdapName, getMemberDnMappers, getMemberships, isDnDirectGroupMember, isGroupDirectGroupMember, isUserDirectGroupMember, removeDnFromGroup, removeGroupFromGroup, removeUserFromGroup, searchGroupRelationshipsWithGroupTypeSpecified, toGenericIterable
 
Methods inherited from class com.atlassian.crowd.directory.SpringLDAPConnector
addDefaultSnToUserAttributes, addDefaultValueToUserAttributesForAttribute, addGroup, addUser, asLdapGroupName, asLdapName, asLdapUserName, authenticate, createModificationItem, findEntityByDN, findEntityByDN, findGroupByName, findGroupByNameAndType, findGroupWithAttributesByName, findUserByExternalId, findUserByName, findUserWithAttributesByName, getAttributeAsBoolean, getAttributeAsLong, getAuthoritativeDirectory, getBaseEnvironmentProperties, getContextSource, getDirectoryId, getGroupContextMapper, getInitialGroupMemberDN, getKeys, getLdapPropertiesMapper, getNewGroupAttributes, getNewGroupDirectorySpecificAttributes, getNewUserAttributes, getSearchDN, getStandardisedDN, getSubTreeSearchControls, getUserContextMapper, getUserModificationItems, getValue, getValues, isEmpty, isRolesDisabled, pageSearchResults, postprocessGroups, removeGroup, removeGroupAttributes, removeUser, removeUserAttributes, renameGroup, renameUser, searchEntities, searchEntitiesWithRequestControls, searchGroupObjects, searchGroupObjectsOfSpecifiedGroupType, searchGroupRelationships, searchGroups, searchUserObjects, searchUsers, setAttributes, setDirectoryId, storeGroupAttributes, storeUserAttributes, supportsInactiveAccounts, supportsNestedGroups, testConnection, typedEntityNotFoundException, updateGroup, updateUser, updateUserCredential
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ApacheDS

public ApacheDS(LDAPQueryTranslater ldapQueryTranslater,
                com.atlassian.event.api.EventPublisher eventPublisher,
                InstanceFactory instanceFactory,
                PasswordEncoderFactory passwordEncoderFactory)
Method Detail

getStaticDirectoryType

public static String getStaticDirectoryType()

getDescriptiveName

public String getDescriptiveName()
Description copied from interface: RemoteDirectory
Returns a descriptive name for the type of directory.

Returns:
descriptive name.

getNewUserDirectorySpecificAttributes

protected void getNewUserDirectorySpecificAttributes(User user,
                                                     Attributes attributes)
ApacheDS in a default install requires the sn to be set before a user can be created.

Overrides:
getNewUserDirectorySpecificAttributes in class SpringLDAPConnector
Parameters:
user - user to add
attributes - representing the user

encodePassword

protected String encodePassword(PasswordCredential passwordCredential)
Translates a clear-text password into an encrypted one if it isn't already encrypted, using the encryption method specified by the directory settings.

Specified by:
encodePassword in class SpringLDAPConnector
Parameters:
passwordCredential - The password credential to be encoded, guaranteed to be non-null. If the subclass supports encrypting the given passwordCredential, it should NOT do so if PasswordCredential.isEncryptedCredential() returns true (although it may still encode the credential to the format required by the directory). The value of PasswordCredential.getCredential() is also guaranteed to be non-null.
Returns:
An encoded password, suitable for passing to the directory.
Throws:
PasswordEncoderNotFoundException - (runtime exception) if the encoder for the specified encryption method cannot be found


Copyright © 2014 Atlassian. All Rights Reserved.