Support for action parameter constraints added to action service

An action parameter constraint provides a way to list the valid values that an action or action constraint parameter can take.  This
means more information about the action or action condition is available to the user of the action.
  
Currently there is only an implementation for enum parameter values, but this will be extended as the existing action implementations
are reviewed and value constraints are added as required.

The REST API can now be extended to provide this additional information.



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18489 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Roy Wetherall
2010-02-08 04:37:45 +00:00
parent 79852d5b1b
commit 8c2c15c5c9
16 changed files with 599 additions and 35 deletions

View File

@@ -37,7 +37,8 @@ import org.alfresco.service.cmr.action.ActionDefinition;
import org.alfresco.service.cmr.action.ActionService;
import org.alfresco.service.cmr.action.ActionServiceTransport;
import org.alfresco.service.cmr.action.CompositeAction;
import org.alfresco.service.cmr.action.CompositeActionCondition;
import org.alfresco.service.cmr.action.CompositeActionCondition;
import org.alfresco.service.cmr.action.ParameterConstraint;
import org.alfresco.service.cmr.repository.NodeRef;
/**
@@ -192,6 +193,22 @@ public class ActionServiceRemote implements ActionService
return fTransport.getActionDefinitions(fHolder.getTicket(), nodeRef);
}
/**
* @see org.alfresco.service.cmr.action.ActionService#getParameterConstraint(java.lang.String)
*/
public ParameterConstraint getParameterConstraint(String name)
{
return fTransport.getParameterConstraint(fHolder.getTicket(), name);
}
/**
* @see org.alfresco.service.cmr.action.ActionService#getParameterConstraints()
*/
public List<ParameterConstraint> getParameterConstraints()
{
return fTransport.getParameterConstraints(fHolder.getTicket());
}
/* (non-Javadoc)
* @see org.alfresco.service.cmr.action.ActionService#getActions(org.alfresco.service.cmr.repository.NodeRef)
*/