mirror of
				https://github.com/Alfresco/alfresco-community-repo.git
				synced 2025-10-29 15:21:53 +00:00 
			
		
		
		
	svn merge svn://svn.alfresco.com:3691/alfresco/BRANCHES/V1.4@4306 svn://svn.alfresco.com:3691/alfresco/BRANCHES/V1.4@4307 . rm -rf root/projects/records-mgmt git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4637 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
		
			
				
	
	
		
			95 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| /**
 | |
|  * 
 | |
|  */
 | |
| package org.alfresco.repo.policy.registration;
 | |
| 
 | |
| import java.util.ArrayList;
 | |
| import java.util.List;
 | |
| 
 | |
| import org.alfresco.repo.policy.Behaviour;
 | |
| import org.alfresco.repo.policy.PolicyComponent;
 | |
| import org.alfresco.service.namespace.QName;
 | |
| 
 | |
| /**
 | |
|  * Bean that can be configured in spring to register a policy bahaviour
 | |
|  * 
 | |
|  * @author Roy Wetherall
 | |
|  */
 | |
| public abstract class PolicyRegistration 
 | |
| {
 | |
| 	/** The policy componenet **/
 | |
| 	protected PolicyComponent policyComponent;
 | |
| 	
 | |
| 	/** The policy names **/
 | |
| 	protected List<QName> policyNames;	
 | |
| 	
 | |
| 	/** The class name **/
 | |
| 	protected QName className;
 | |
| 	
 | |
| 	/** The behaviour **/
 | |
| 	protected Behaviour behaviour;
 | |
| 	
 | |
| 	/**
 | |
| 	 * Set the policy component
 | |
| 	 * 
 | |
| 	 * @param policyComponent	the policy componenet
 | |
| 	 */
 | |
| 	public void setPolicyComponent(PolicyComponent policyComponent) 
 | |
| 	{
 | |
| 		this.policyComponent = policyComponent;
 | |
| 	}
 | |
| 	
 | |
| 	/**
 | |
| 	 * Set the policy name
 | |
| 	 * 
 | |
| 	 * @param policyName	the policy name
 | |
| 	 */
 | |
| 	public void setPolicyName(String policyName)
 | |
| 	{
 | |
| 		this.policyNames = new ArrayList<QName>(1);
 | |
| 		this.policyNames.add(QName.createQName(policyName));
 | |
| 	}
 | |
| 	
 | |
| 	/**
 | |
| 	 * Set the policy names.  The behaviour will be added for each for the policies.
 | |
| 	 * 
 | |
| 	 * @param policyNames	the policy names
 | |
| 	 */
 | |
| 	public void setPolicyNames(List<String> policyNames)
 | |
| 	{
 | |
| 		this.policyNames = new ArrayList<QName>(policyNames.size());
 | |
| 		for (String policyName : policyNames) 
 | |
| 		{
 | |
| 			this.policyNames.add(QName.createQName(policyName));
 | |
| 		}
 | |
| 	}
 | |
| 	
 | |
| 	/**
 | |
| 	 * Set the class name
 | |
| 	 * 
 | |
| 	 * @param className		 the class name
 | |
| 	 */
 | |
| 	public void setClassName(String className)
 | |
| 	{
 | |
| 		this.className = QName.createQName(className);
 | |
| 	}
 | |
| 	
 | |
| 	/**
 | |
| 	 * Set the behaviour
 | |
| 	 * 
 | |
| 	 * @param behaviour	the behaviour
 | |
| 	 */
 | |
| 	public void setBehaviour(Behaviour behaviour) 
 | |
| 	{
 | |
| 		this.behaviour = behaviour;
 | |
| 	}
 | |
| 	
 | |
| 	/**
 | |
| 	 * Registers the behaviour with the policy component for the policy and type specified.  Called
 | |
| 	 * as the init method of the bean.
 | |
| 	 * 
 | |
| 	 * TODO supoort service registration?
 | |
| 	 */
 | |
| 	public abstract void register();
 | |
| }
 |