|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.alfresco.repo.transaction.TransactionListenerAdapter
org.alfresco.repo.security.person.PersonServiceImpl
public class PersonServiceImpl
| Nested Class Summary | |
|---|---|
static class |
PersonServiceImpl.NodeIdComparator
|
| Nested classes/interfaces inherited from interface org.alfresco.service.cmr.security.PersonService |
|---|
PersonService.PersonInfo |
| Nested classes/interfaces inherited from interface org.alfresco.repo.policy.Policy |
|---|
Policy.Arg |
| Field Summary | |
|---|---|
static java.lang.String |
KEY_ALLOW_UID_UPDATE
|
static java.lang.String |
PEOPLE_FOLDER_SHORT_QNAME
|
static java.lang.String |
SYSTEM_FOLDER_SHORT_QNAME
|
| Fields inherited from interface org.alfresco.repo.node.NodeServicePolicies.BeforeCreateNodePolicy |
|---|
QNAME |
| Fields inherited from interface org.alfresco.repo.node.NodeServicePolicies.OnCreateNodePolicy |
|---|
QNAME |
| Fields inherited from interface org.alfresco.repo.node.NodeServicePolicies.BeforeDeleteNodePolicy |
|---|
QNAME |
| Fields inherited from interface org.alfresco.repo.node.NodeServicePolicies.OnUpdatePropertiesPolicy |
|---|
ARG_0, ARG_1, ARG_2, QNAME |
| Fields inherited from interface org.alfresco.repo.policy.Policy |
|---|
NAMESPACE |
| Constructor Summary | |
|---|---|
PersonServiceImpl()
|
|
| Method Summary | |
|---|---|
void |
afterCommit()
Process clean up any duplicates that were flagged during the transaction. |
void |
beforeCommit(boolean readOnly)
Called before a transaction is committed. |
void |
beforeCreateNode(org.alfresco.service.cmr.repository.NodeRef parentRef,
org.alfresco.service.namespace.QName assocTypeQName,
org.alfresco.service.namespace.QName assocQName,
org.alfresco.service.namespace.QName nodeTypeQName)
Called before a new node is created. |
void |
beforeCreateNodeValidation(org.alfresco.service.cmr.repository.NodeRef parentRef,
org.alfresco.service.namespace.QName assocTypeQName,
org.alfresco.service.namespace.QName assocQName,
org.alfresco.service.namespace.QName nodeTypeQName)
|
void |
beforeDeleteNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Called before a node is deleted. |
void |
beforeDeleteNodeValidation(org.alfresco.service.cmr.repository.NodeRef nodeRef)
|
boolean |
createMissingPeople()
Does this service create people on demand if they are missing. |
org.alfresco.service.cmr.repository.NodeRef |
createPerson(java.util.Map properties)
Create a new person with the given properties. |
org.alfresco.service.cmr.repository.NodeRef |
createPerson(java.util.Map properties,
java.util.Set zones)
Create a new person with the given properties, recording them against the given zone name (usually identifying an external user registry from which the details were obtained). |
void |
deletePerson(org.alfresco.service.cmr.repository.NodeRef personRef)
Delete the person identified by the given ref. |
void |
deletePerson(java.lang.String userName)
Delete the person identified by the given user name. |
boolean |
equals(java.lang.Object obj)
|
java.util.Set |
getAllPeople()
Deprecated. see getPeople |
java.util.Set |
getMutableProperties()
Get the list of properties that are mutable. |
org.alfresco.query.PagingResults |
getPeople(java.util.List stringPropFilters,
boolean filterIgnoreCase,
java.util.List sortProps,
org.alfresco.query.PagingRequest pagingRequest)
Get paged list of people optionally filtered and/or sorted |
org.alfresco.service.cmr.repository.NodeRef |
getPeopleContainer()
Return the container that stores people. |
java.util.Set |
getPeopleFilteredByProperty(org.alfresco.service.namespace.QName propertyKey,
java.io.Serializable propertyValue)
Deprecated. see getPeople |
org.alfresco.service.cmr.repository.NodeRef |
getPerson(java.lang.String userName)
Get a person by userName. |
org.alfresco.service.cmr.repository.NodeRef |
getPerson(java.lang.String userName,
boolean autoCreate)
Retrieve the person NodeRef for a username key. |
java.lang.String |
getUserIdentifier(java.lang.String caseSensitiveUserName)
Given the case sensitive user name find the approriate identifier from the person service. |
boolean |
getUserNamesAreCaseSensitive()
Are user names case sensitive? |
int |
hashCode()
|
void |
init()
Spring bean init method |
boolean |
isMutable()
Can this service create, delete and update person information? |
void |
notifyPerson(java.lang.String userName,
java.lang.String password)
Notifies a user by email that their account has been created, and the details of it. |
void |
onCreateNode(org.alfresco.service.cmr.repository.ChildAssociationRef childAssocRef)
Called when a new node has been created. |
void |
onUpdateProperties(org.alfresco.service.cmr.repository.NodeRef nodeRef,
java.util.Map before,
java.util.Map after)
When a uid is changed we need to create an alias for the old uid so permissions are not broken. |
void |
onUpdatePropertiesUser(org.alfresco.service.cmr.repository.NodeRef nodeRef,
java.util.Map before,
java.util.Map after)
Track the enabled/disabled flag on cm:user. |
boolean |
personExists(java.lang.String caseSensitiveUserName)
Check if a person exists. |
void |
setAclDAO(AclDAO aclDao)
|
void |
setAuthenticationService(MutableAuthenticationService authenticationService)
|
void |
setAuthorityService(AuthorityService authorityService)
|
void |
setCannedQueryRegistry(org.alfresco.util.registry.NamedObjectRegistry cannedQueryRegistry)
Set the registry of canned queries |
void |
setCreateMissingPeople(boolean createMissingPeople)
Set if missing people should be created. |
void |
setDictionaryService(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
|
void |
setDuplicateMode(java.lang.String duplicateMode)
|
void |
setHomeFolderCreationEager(boolean homeFolderCreationEager)
Indicates if home folders should be created when the person is created or delayed until first accessed. |
void |
setHomeFolderManager(HomeFolderManager homeFolderManager)
|
void |
setIncludeAutoCreated(boolean includeAutoCreated)
|
void |
setLastIsBest(boolean lastIsBest)
|
void |
setNamespacePrefixResolver(org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)
|
void |
setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
|
void |
setPermissionServiceSPI(PermissionServiceSPI permissionServiceSPI)
|
void |
setPermissionsManager(PermissionsManager permissionsManager)
|
void |
setPersonCache(org.alfresco.repo.cache.SimpleCache personCache)
Set the username to person cache. |
void |
setPersonProperties(java.lang.String userName,
java.util.Map properties)
Set the properties on a person - some of these may be persisted in different locations. |
void |
setPersonProperties(java.lang.String userName,
java.util.Map properties,
boolean autoCreate)
Set the properties on a person - some of these may be persisted in different locations. |
void |
setPolicyComponent(PolicyComponent policyComponent)
|
void |
setProcessDuplicates(boolean processDuplicates)
|
void |
setRepoAdminService(RepoAdminService repoAdminService)
|
void |
setSearchService(org.alfresco.service.cmr.search.SearchService searchService)
|
void |
setServiceRegistry(ServiceRegistry serviceRegistry)
|
void |
setStoreUrl(java.lang.String storeUrl)
|
void |
setTenantService(org.alfresco.repo.tenant.TenantService tenantService)
|
void |
setTransactionService(TransactionService transactionService)
|
void |
setUserNameMatcher(UserNameMatcher userNameMatcher)
|
static java.lang.String |
updateUsernameForTenancy(java.lang.String username,
org.alfresco.repo.tenant.TenantService tenantService)
Helper for when creating new users and people: Updates the supplied username with any required tenant details, and ensures that the tenant domains match. |
| Methods inherited from class org.alfresco.repo.transaction.TransactionListenerAdapter |
|---|
afterRollback, beforeCompletion, flush |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String SYSTEM_FOLDER_SHORT_QNAME
public static final java.lang.String PEOPLE_FOLDER_SHORT_QNAME
public static final java.lang.String KEY_ALLOW_UID_UPDATE
| Constructor Detail |
|---|
public PersonServiceImpl()
| Method Detail |
|---|
public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic void init()
public void setCreateMissingPeople(boolean createMissingPeople)
setCreateMissingPeople in interface PersonServicecreateMissingPeople - set to true to create peoplePersonService.getPerson(String)public void setNamespacePrefixResolver(org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)
public void setAuthorityService(AuthorityService authorityService)
public void setAuthenticationService(MutableAuthenticationService authenticationService)
public void setDictionaryService(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
public void setPermissionServiceSPI(PermissionServiceSPI permissionServiceSPI)
public void setTransactionService(TransactionService transactionService)
public void setServiceRegistry(ServiceRegistry serviceRegistry)
public void setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
public void setTenantService(org.alfresco.repo.tenant.TenantService tenantService)
public void setSearchService(org.alfresco.service.cmr.search.SearchService searchService)
public void setRepoAdminService(RepoAdminService repoAdminService)
public void setPolicyComponent(PolicyComponent policyComponent)
public void setStoreUrl(java.lang.String storeUrl)
public void setUserNameMatcher(UserNameMatcher userNameMatcher)
public void setDuplicateMode(java.lang.String duplicateMode)
public void setIncludeAutoCreated(boolean includeAutoCreated)
public void setLastIsBest(boolean lastIsBest)
public void setProcessDuplicates(boolean processDuplicates)
public void setHomeFolderManager(HomeFolderManager homeFolderManager)
public void setHomeFolderCreationEager(boolean homeFolderCreationEager)
public void setAclDAO(AclDAO aclDao)
public void setPermissionsManager(PermissionsManager permissionsManager)
public void setCannedQueryRegistry(org.alfresco.util.registry.NamedObjectRegistry cannedQueryRegistry)
canned queries
public void setPersonCache(org.alfresco.repo.cache.SimpleCache personCache)
public org.alfresco.service.cmr.repository.NodeRef getPerson(java.lang.String userName)
create missing people or not.
getPerson in interface PersonServiceuserName - -
the userName key to find the person
PersonService.setCreateMissingPeople(boolean),
PersonService.createMissingPeople()
public org.alfresco.service.cmr.repository.NodeRef getPerson(java.lang.String userName,
boolean autoCreate)
autoCreate parameter and
configuration missing people will be created if not found, else a NoSuchPersonException exception will be thrown.
getPerson in interface PersonServiceuserName - of the person NodeRef to retrieveautoCreate - should we auto-create the person node and home folder if they don't exist? (and configuration allows
us to)
public boolean personExists(java.lang.String caseSensitiveUserName)
personExists in interface PersonServicecaseSensitiveUserName - the user name
public void afterCommit()
afterCommit in interface TransactionListenerafterCommit in class TransactionListenerAdapterpublic boolean createMissingPeople()
createMissingPeople in interface PersonServicepublic java.util.Set getMutableProperties()
getMutableProperties in interface PersonService
public void setPersonProperties(java.lang.String userName,
java.util.Map properties)
setPersonProperties in interface PersonServiceuserName - -
the user for which the properties should be set.properties - -
the map of properties to set (as the NodeService)
public void setPersonProperties(java.lang.String userName,
java.util.Map properties,
boolean autoCreate)
setPersonProperties in interface PersonServiceuserName - - the user for which the properties should be set.properties - - the map of properties to set (as the NodeService)autoCreate - should we auto-create the home folder if it doesn't exist? (and configuration allows us to)public boolean isMutable()
isMutable in interface PersonServicepublic org.alfresco.service.cmr.repository.NodeRef createPerson(java.util.Map properties)
createPerson in interface PersonService
public org.alfresco.service.cmr.repository.NodeRef createPerson(java.util.Map properties,
java.util.Set zones)
createPerson in interface PersonServiceproperties - the propertieszones - a set if zones including the identifier for the external user registry owning the person information, or null or an empty set
public void notifyPerson(java.lang.String userName,
java.lang.String password)
PersonService.createPerson(Map) or PersonService.createPerson(Map, Set)
where email notifications are required.
notifyPerson in interface PersonServiceuserName - of the person to notifypassword - of the person to notifypublic org.alfresco.service.cmr.repository.NodeRef getPeopleContainer()
getPeopleContainer in interface PersonServicepublic void deletePerson(java.lang.String userName)
deletePerson in interface PersonServicepublic void deletePerson(org.alfresco.service.cmr.repository.NodeRef personRef)
deletePerson in interface PersonServicepublic java.util.Set getAllPeople()
getAllPeople in interface PersonService
public org.alfresco.query.PagingResults getPeople(java.util.List stringPropFilters,
boolean filterIgnoreCase,
java.util.List sortProps,
org.alfresco.query.PagingRequest pagingRequest)
getPeople in interface PersonServicefilterIgnoreCase - true to ignore case when filtering, false to be case-sensitive when filteringsortProps - sort property, eg. cm:username ascendingpagingRequest - skip, max + optional query execution id
public java.util.Set getPeopleFilteredByProperty(org.alfresco.service.namespace.QName propertyKey,
java.io.Serializable propertyValue)
getPeopleFilteredByProperty in interface PersonServicepropertyKey - property key of property to filter people bypropertyValue - property value of property to filter people by
public void onCreateNode(org.alfresco.service.cmr.repository.ChildAssociationRef childAssocRef)
onCreateNode in interface NodeServicePolicies.OnCreateNodePolicychildAssocRef - the created child association reference
public void beforeCreateNode(org.alfresco.service.cmr.repository.NodeRef parentRef,
org.alfresco.service.namespace.QName assocTypeQName,
org.alfresco.service.namespace.QName assocQName,
org.alfresco.service.namespace.QName nodeTypeQName)
NodeServicePolicies.BeforeCreateNodePolicy
beforeCreateNode in interface NodeServicePolicies.BeforeCreateNodePolicyparentRef - the parent node referenceassocTypeQName - the association type qualified nameassocQName - the association qualified namenodeTypeQName - the node type qualified name
public void beforeCreateNodeValidation(org.alfresco.service.cmr.repository.NodeRef parentRef,
org.alfresco.service.namespace.QName assocTypeQName,
org.alfresco.service.namespace.QName assocQName,
org.alfresco.service.namespace.QName nodeTypeQName)
public void beforeDeleteNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)
NodeServicePolicies.BeforeDeleteNodePolicy
beforeDeleteNode in interface NodeServicePolicies.BeforeDeleteNodePolicynodeRef - the node referencepublic void beforeDeleteNodeValidation(org.alfresco.service.cmr.repository.NodeRef nodeRef)
public java.lang.String getUserIdentifier(java.lang.String caseSensitiveUserName)
getUserIdentifier in interface PersonServicepublic boolean getUserNamesAreCaseSensitive()
getUserNamesAreCaseSensitive in interface PersonService
public void onUpdateProperties(org.alfresco.service.cmr.repository.NodeRef nodeRef,
java.util.Map before,
java.util.Map after)
onUpdateProperties in interface NodeServicePolicies.OnUpdatePropertiesPolicynodeRef - reference to the updated nodebefore - the node's properties before the changeafter - the node's properties after the change
public void onUpdatePropertiesUser(org.alfresco.service.cmr.repository.NodeRef nodeRef,
java.util.Map before,
java.util.Map after)
enabled/disabled flag on cm:user.
public void beforeCommit(boolean readOnly)
All transaction resources are still available.
beforeCommit in interface TransactionListenerbeforeCommit in class TransactionListenerAdapterreadOnly - true if the transaction is read-only
public static java.lang.String updateUsernameForTenancy(java.lang.String username,
org.alfresco.repo.tenant.TenantService tenantService)
throws TenantDomainMismatchException
TenantDomainMismatchException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||