Merged V3.1 to HEAD

12999: Fixed read-only bootstrap of SiteAVMBootstrap and removed incorrect use of 'assert'
   13000: Added log4j to Eclipse classpath (unexported)
   13001: Merged V2.1-A to V3.1
      9127: Performance improvement to folder copy
      9151: *RECORD-ONLY* Fix index back up failing with missing files
   13002: Merged V2.1-A to V3.1
      9174: Further fixes for ACT-2588 (Lucene backup read-write locks)
      9279: Fix ADB-84. PHP module is not restricted by the upper version
      10191: Fix for ADB-77: Need to have as the sender's email address the email address of the user triggering the rule
   13006: Merged V2.1-A to V3.1
      10893: Fixes for ADB-78 & ADB-98
             - Fixed service getter/setter pattern as well
      10903: Fix for ADB-115 ACT-4355
   13010: Made AVMLockingBootstrap resilient to read-only mode
   13011: Better message for InvalidStoreRefException
   13013: Merged V2.1-A to V3.1
      9189: Composite Conditions Support Part 1 of 2 (repo)
      9190: Composite Conditions Support Part 1a of 2 ( missed file from repo)
   13015: Port of Adobe CIFS/FTP configuration changes
   13017: Convert avoids folders given by '--svn-status' option
   13018: Merge V2.1A to V3.1
      7746: (record-only) Added ability to specify a custom CIFS authenticator class
      8533: (record-only) Added the <disableNativeCode/> configuration tag, disable use of JNI code on Windows
      8700: (record-only) Update to prevent any native calls via configuration code
      8705: (record-only) Filer out the '0.0.0.0' bind address
      8864: (record-only) Added the getBean() method for custom authenticators to get access to beans
      9054: (record-only) Added the 'AIX' platform type for use in the platforms="..." attribute
      8863: (record-only) Fix passthru socket connection timeout, added 'protocolOrder' and 'offlineCheckInterval' config values
      12144: (record-only) CIFS virtual circuit fixes
   13020: Merged V2.1-A to V3.1 (Composite Actions)
      9191: Composite Conditions Support Part 2 of 2 (client)
      9243: Composite Conditions Support Part 1 of 2 (client)
      9245: Composite Conditions Support Part 2 of 2 (repo)
   13021: Merged V3.0 to V3.1
      13008: Merged V2.2 to V3.0
         12824: (record only) Change admin access to the web project staging store to be read-only in the virtualization view - ETWOTWO-933
   13024: Ported CIFS configuration changes from Adobe V2.1A, missed checkin.
   ___________________________________________________________________
   Modified: svn:mergeinfo
      Merged /alfresco/BRANCHES/V2.1-A:r9127,9151,9174,9189-9191,9243,9245,9279,10191,10893,10903
      Merged /alfresco/BRANCHES/V3.1:r12999-13002,13006,13010-13011,13013,13015,13017-13018,13020-13021,13024


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@13550 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2009-03-11 03:22:35 +00:00
parent 6eb1963971
commit f1307fba20
37 changed files with 3498 additions and 2292 deletions

View File

@@ -40,22 +40,22 @@ import org.alfresco.service.cmr.repository.NodeRef;
@PublicService
public interface ActionService
{
/**
* Get a named action definition
*
* @param name the name of the action definition
* @return the action definition
*/
/**
* Get a named action definition
*
* @param name the name of the action definition
* @return the action definition
*/
@Auditable(parameters = {"name"})
ActionDefinition getActionDefinition(String name);
/**
* Get all the action definitions
*
* @return the list action definitions
*/
ActionDefinition getActionDefinition(String name);
/**
* Get all the action definitions
*
* @return the list action definitions
*/
@Auditable()
List<ActionDefinition> getActionDefinitions();
List<ActionDefinition> getActionDefinitions();
/**
* Get all the action definitions that are applicable for the given node, based on
@@ -66,189 +66,196 @@ public interface ActionService
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef"})
List<ActionDefinition> getActionDefinitions(NodeRef nodeRef);
/**
* Get a named action condition definition
*
* @param name the name of the action condition definition
* @return the action condition definition
*/
/**
* Get a named action condition definition
*
* @param name the name of the action condition definition
* @return the action condition definition
*/
@Auditable(parameters = {"name"})
ActionConditionDefinition getActionConditionDefinition(String name);
/**
* Get all the action condition definitions
*
* @return the list of aciton condition definitions
*/
ActionConditionDefinition getActionConditionDefinition(String name);
/**
* Get all the action condition definitions
*
* @return the list of action condition definitions
*/
@Auditable(parameters = {})
List<ActionConditionDefinition> getActionConditionDefinitions();
/**
* Create a new action
*
* @param name the action definition name
* @return the action
*/
List<ActionConditionDefinition> getActionConditionDefinitions();
/**
* Create a new action
*
* @param name the action definition name
* @return the action
*/
@Auditable(parameters = {"name"})
Action createAction(String name);
/**
* Create a new action specifying the initial set of parameter values
*
* @param name the action definition name
* @param params the parameter values
* @return the action
*/
Action createAction(String name);
/**
* Create a new action specifying the initial set of parameter values
*
* @param name the action definition name
* @param params the parameter values
* @return the action
*/
@Auditable(parameters = {"name", "params"})
Action createAction(String name, Map<String, Serializable> params);
/**
* Create a composite action
*
* @return the composite action
*/
Action createAction(String name, Map<String, Serializable> params);
/**
* Create a composite action
*
* @return the composite action
*/
@Auditable()
CompositeAction createCompositeAction();
/**
* Create an action condition
*
* @param name the action condition definition name
* @return the action condition
*/
CompositeAction createCompositeAction();
/**
* Create an action condition
*
* @param name the action condition definition name
* @return the action condition
*/
@Auditable(parameters = {"name"})
ActionCondition createActionCondition(String name);
/**
* Create an action condition specifying the initial set of parameter values
*
* @param name the action condition definition name
* @param params the parameter values
* @return the action condition
*/
ActionCondition createActionCondition(String name);
/**
* Create an action condition specifying the initial set of parameter values
*
* @param name the action condition definition name
* @param params the parameter values
* @return the action condition
*/
@Auditable(parameters = {"name", "params"})
ActionCondition createActionCondition(String name, Map<String, Serializable> params);
/**
* The actions conditions are always checked.
*
* @see ActionService#executeAction(Action, NodeRef, boolean)
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
*/
ActionCondition createActionCondition(String name, Map<String, Serializable> params);
/**
* Create a composite actionCondition
* @return the composite actionCondition
*/
@Auditable()
CompositeActionCondition createCompositeActionCondition();
/**
* The actions conditions are always checked.
*
* @see ActionService#executeAction(Action, NodeRef, boolean)
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
*/
@Auditable(key = Auditable.Key.ARG_1, parameters = {"action", "actionedUponNodeRef" })
void executeAction(Action action, NodeRef actionedUponNodeRef);
/**
* The action is executed based on the asynchronous attribute of the action.
*
* @see ActionService#executeAction(Action, NodeRef, boolean, boolean)
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
* @param checkConditions indicates whether the conditions should be checked
*/
void executeAction(Action action, NodeRef actionedUponNodeRef);
/**
* The action is executed based on the asynchronous attribute of the action.
*
* @see ActionService#executeAction(Action, NodeRef, boolean, boolean)
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
* @param checkConditions indicates whether the conditions should be checked
*/
@Auditable(key = Auditable.Key.ARG_1, parameters = {"action", "actionedUponNodeRef", "checkConditions" })
void executeAction(Action action, NodeRef actionedUponNodeRef, boolean checkConditions);
/**
* Executes the specified action upon the node reference provided.
* <p>
* If specified that the conditions should be checked then any conditions
* set on the action are evaluated.
* <p>
* If the conditions fail then the action is not executed.
* <p>
* If an action has no conditions then the action will always be executed.
* <p>
* If the conditions are not checked then the action will always be executed.
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
* @param checkConditions indicates whether the conditions should be checked before
* executing the action
* @param executeAsynchronously indicates whether the action should be executed asychronously or not, this value overrides
* the value set on the action its self
*/
void executeAction(Action action, NodeRef actionedUponNodeRef, boolean checkConditions);
/**
* Executes the specified action upon the node reference provided.
* <p>
* If specified that the conditions should be checked then any conditions
* set on the action are evaluated.
* <p>
* If the conditions fail then the action is not executed.
* <p>
* If an action has no conditions then the action will always be executed.
* <p>
* If the conditions are not checked then the action will always be executed.
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
* @param checkConditions indicates whether the conditions should be checked before
* executing the action
* @param executeAsynchronously indicates whether the action should be executed asychronously or not, this value overrides
* the value set on the action its self
*/
@Auditable(key = Auditable.Key.ARG_1, parameters = {"action", "actionedUponNodeRef", "checkConditions", "executeAsynchronously" })
void executeAction(Action action, NodeRef actionedUponNodeRef, boolean checkConditions, boolean executeAsynchronously);
/**
* Evaluted the conditions set on an action.
* <p>
* Returns true if the action has no conditions.
* <p>
* If the action has more than one condition their results are combined using the 'AND'
* logical operator.
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
* @return true if the condition succeeds, false otherwise
*/
void executeAction(Action action, NodeRef actionedUponNodeRef, boolean checkConditions, boolean executeAsynchronously);
/**
* Evaluted the conditions set on an action.
* <p>
* Returns true if the action has no conditions.
* <p>
* If the action has more than one condition their results are combined using the 'AND'
* logical operator.
*
* @param action the action
* @param actionedUponNodeRef the actioned upon node reference
* @return true if the condition succeeds, false otherwise
*/
@Auditable(key = Auditable.Key.ARG_1, parameters = {"action", "actionedUponNodeRef" })
boolean evaluateAction(Action action, NodeRef actionedUponNodeRef);
/**
* Evaluate an action condition.
*
* @param condition the action condition
* @param actionedUponNodeRef the actioned upon node reference
* @return true if the condition succeeds, false otherwise
*/
boolean evaluateAction(Action action, NodeRef actionedUponNodeRef);
/**
* Evaluate an action condition.
*
* @param condition the action condition
* @param actionedUponNodeRef the actioned upon node reference
* @return true if the condition succeeds, false otherwise
*/
@Auditable(key = Auditable.Key.ARG_1, parameters = {"condition", "actionedUponNodeRef" })
boolean evaluateActionCondition(ActionCondition condition, NodeRef actionedUponNodeRef);
/**
* Save an action against a node reference.
* <p>
* The node will be made configurable if it is not already.
* <p>
* If the action already exists then its details will be updated.
*
* @param nodeRef the node reference
* @param action the action
*/
boolean evaluateActionCondition(ActionCondition condition, NodeRef actionedUponNodeRef);
/**
* Save an action against a node reference.
* <p>
* The node will be made configurable if it is not already.
* <p>
* If the action already exists then its details will be updated.
*
* @param nodeRef the node reference
* @param action the action
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef", "action" })
void saveAction(NodeRef nodeRef, Action action);
/**
* Gets all the actions currently saved on the given node reference.
*
* @param nodeRef the node reference
* @return the list of actions
*/
void saveAction(NodeRef nodeRef, Action action);
/**
* Gets all the actions currently saved on the given node reference.
*
* @param nodeRef the node reference
* @return the list of actions
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef"})
List<Action> getActions(NodeRef nodeRef);
/**
* Gets an action stored against a given node reference.
* <p>
* Returns null if the action can not be found.
*
* @param nodeRef the node reference
* @param actionId the action id
* @return the action
*/
List<Action> getActions(NodeRef nodeRef);
/**
* Gets an action stored against a given node reference.
* <p>
* Returns null if the action can not be found.
*
* @param nodeRef the node reference
* @param actionId the action id
* @return the action
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef", "actionId"})
Action getAction(NodeRef nodeRef, String actionId);
/**
* Removes an action associated with a node reference.
*
* @param nodeRef the node reference
* @param action the action
*/
Action getAction(NodeRef nodeRef, String actionId);
/**
* Removes an action associated with a node reference.
*
* @param nodeRef the node reference
* @param action the action
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef", "action" })
void removeAction(NodeRef nodeRef, Action action);
/**
* Removes all actions associated with a node reference
*
* @param nodeRef the node reference
*/
void removeAction(NodeRef nodeRef, Action action);
/**
* Removes all actions associated with a node reference
*
* @param nodeRef the node reference
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"nodeRef"})
void removeAllActions(NodeRef nodeRef);
void removeAllActions(NodeRef nodeRef);
}