org.alfresco.repo.security.person
Class AbstractHomeFolderProvider

java.lang.Object
  extended by org.alfresco.repo.security.person.AbstractHomeFolderProvider
All Implemented Interfaces:
NodeServicePolicies.OnCreateNodePolicy, ClassPolicy, Policy, HomeFolderProvider, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean
Direct Known Subclasses:
BootstrapHomeFolderProvider, ExistingPathBasedHomeFolderProvider

public abstract class AbstractHomeFolderProvider
extends java.lang.Object
implements HomeFolderProvider, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean

Common support for creating home folders This is hooked into node creation events from Person type objects via the homeFolderManager. Provider must all be wired up to the homeFolderManager.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.alfresco.repo.policy.Policy
Policy.Arg
 
Field Summary
 
Fields inherited from interface org.alfresco.repo.policy.Policy
NAMESPACE
 
Constructor Summary
AbstractHomeFolderProvider()
           
 
Method Summary
 void afterPropertiesSet()
          Register with the homeFolderManagewr
protected abstract  HomeSpaceNodeRef getHomeFolder(NodeRef person)
          Abstract implementation to find/create the approriate home space.
protected  HomeFolderManager getHomeFolderManager()
          Get the home folder manager.
 java.lang.String getName()
          Get the provider name
protected  java.lang.String getPath()
          Get the path
protected  NodeRef getPathNodeRef()
          Cache path to node resolution/
protected  ServiceRegistry getServiceRegistry()
          Get the service registry.
protected  StoreRef getStoreRef()
          Get the store ref
 void onCreateNode(ChildAssociationRef childAssocRef)
          The implementation of the policy binding.
protected  NodeRef resolvePath(java.lang.String pathToResolve)
          Utility metho to resolve paths to nodes.
 void setBeanName(java.lang.String name)
          The provider name is taken from the bean name
 void setClearExistingPermissionsOnCreate(boolean clearExistingPermissionsOnCreate)
          Clear exising permissions on create.
 void setHomeFolderManager(HomeFolderManager homeFolderManager)
          Set the home folder manager.
 void setInheritsPermissionsOnCreate(boolean inheritsPermissionsOnCreate)
          Inherit permissions when home folder are created?
 void setOwnerOnCreate(java.lang.String ownerOnCreate)
          The owner to set on create.
 void setOwnerPermissionsToSetOnCreate(java.util.Set ownerPermissionsToSetOnCreate)
          The owner permissions to set on create.
 void setPath(java.lang.String path)
          Set the path
 void setPermissionsToSetOnCreate(java.util.Map permissionsToSetOnCreate)
          General permissions to set on create.
 void setServiceRegistry(ServiceRegistry serviceRegistry)
          Set the service registry.
 void setStoreRef(StoreRef storeRef)
          Set the store ref
 void setStoreUrl(java.lang.String storeUrl)
          Set the store from the string url.
 void setUserPermissions(java.util.Set userPermissions)
          User permissions to set on create and on reference.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractHomeFolderProvider

public AbstractHomeFolderProvider()
Method Detail

afterPropertiesSet

public void afterPropertiesSet()
                        throws java.lang.Exception
Register with the homeFolderManagewr

Specified by:
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
Throws:
java.lang.Exception

getHomeFolderManager

protected HomeFolderManager getHomeFolderManager()
Get the home folder manager.


setHomeFolderManager

public void setHomeFolderManager(HomeFolderManager homeFolderManager)
Set the home folder manager.

Parameters:
homeFolderManager -

getName

public java.lang.String getName()
Get the provider name

Specified by:
getName in interface HomeFolderProvider
Returns:

setBeanName

public void setBeanName(java.lang.String name)
The provider name is taken from the bean name

Specified by:
setBeanName in interface org.springframework.beans.factory.BeanNameAware

getPath

protected java.lang.String getPath()
Get the path

Returns:

setPath

public void setPath(java.lang.String path)
Set the path

Parameters:
path -

getStoreRef

protected StoreRef getStoreRef()
Get the store ref

Returns:

setStoreRef

public void setStoreRef(StoreRef storeRef)
Set the store ref

Parameters:
storeRef -

setStoreUrl

public void setStoreUrl(java.lang.String storeUrl)
Set the store from the string url.

Parameters:
storeUrl -

getServiceRegistry

protected ServiceRegistry getServiceRegistry()
Get the service registry.

Returns:

setServiceRegistry

public void setServiceRegistry(ServiceRegistry serviceRegistry)
Set the service registry.

Parameters:
serviceRegistry -

setInheritsPermissionsOnCreate

public void setInheritsPermissionsOnCreate(boolean inheritsPermissionsOnCreate)
Inherit permissions when home folder are created?

Parameters:
inheritsPermissionsOnCreate -

setOwnerOnCreate

public void setOwnerOnCreate(java.lang.String ownerOnCreate)
The owner to set on create.

Parameters:
ownerOnCreate -

setOwnerPermissionsToSetOnCreate

public void setOwnerPermissionsToSetOnCreate(java.util.Set ownerPermissionsToSetOnCreate)
The owner permissions to set on create.

Parameters:
ownerPermissionsToSetOnCreate -

setPermissionsToSetOnCreate

public void setPermissionsToSetOnCreate(java.util.Map permissionsToSetOnCreate)
General permissions to set on create.

Parameters:
permissionsToSetOnCreate -

setUserPermissions

public void setUserPermissions(java.util.Set userPermissions)
User permissions to set on create and on reference.

Parameters:
userPermissions -

setClearExistingPermissionsOnCreate

public void setClearExistingPermissionsOnCreate(boolean clearExistingPermissionsOnCreate)
Clear exising permissions on create. Useful to clear permissions from a template.

Parameters:
clearExistingPermissionsOnCreate -

getPathNodeRef

protected NodeRef getPathNodeRef()
Cache path to node resolution/

Returns:

resolvePath

protected NodeRef resolvePath(java.lang.String pathToResolve)
Utility metho to resolve paths to nodes.

Parameters:
pathToResolve -
Returns:

onCreateNode

public void onCreateNode(ChildAssociationRef childAssocRef)
The implementation of the policy binding. Run as the system user for auditing.

Specified by:
onCreateNode in interface NodeServicePolicies.OnCreateNodePolicy
Parameters:
childAssocRef - the created child association reference

getHomeFolder

protected abstract HomeSpaceNodeRef getHomeFolder(NodeRef person)
Abstract implementation to find/create the approriate home space.

Parameters:
person -
Returns:


Copyright © 2005 - 2008 Alfresco Software, Inc. All Rights Reserved.