This service is used to manage DMS actions (with nodetype {{exo:action}})

_Package org.exoplatform.services.cms.actions.ActionServiceContainer_

|| *Method* || *Return* || *Prototype* || *Description* ||
| *{{getActionPluginNames}}* | {{Collection<String>}} | {{getActionPluginNames()}} | Collection of String {example}{example} @return collection of ActionPlugin names |
| *{{getActionPlugin}}* | {{ActionPlugin}} | {{getActionPlugin(String actionServiceName)}} | Get ActionPlugin following ActionSeriveName {example}{example} @param actionServiceName: name of action service {example}{example} @return ActionPlugin |
| *{{getActionPluginForActionType}}* | {{ActionPlugin}} | {{getActionPluginForActionType(String actionTypeName)}} | Get ActionPlugin following action type name {example}{example} @param actionTypeName:  name of action type {example}{example} @return ActionPlugin {example}{example} |
| *{{createActionType}}* | {{void}} | {{createActionType(String actionTypeName, String parentActionTypeName, String executable, List<String> variableNames, boolean isMoveType, String repository) throws Exception}} | Create NodaeTypeValue is in kind of ActionType following action type name {example}{example} @param actionTypeName: name of action type {example}{example} @param parentActionTypeName:  name of parent action {example}{example} @param executable: String value of execuable {example}{example} @param variableNames: List name of variable {example}{example} @param isMoveType: is moved or not {example}{example} @param repository: repository name {example}{example} @throws Exception |
| *{{getCreatedActionTypes}}* | {{Collection<NodeType>}} | {{getCreatedActionTypes(String repository) throws Exception}} | Get all created node with nodetype = exo:action {example}{example} @param repository:  repository name {example}{example} @return Collection of NodeType {example}{example} @throws Exception |
| *{{getAction}}* | *{{Node}}* | {{getAction(Node node, String actionName) throws Exception}} | get node by using actionName as relative path with current node {example}{example} @param node: current processing node {example}{example} @param actionName:  name of action {example}{example} @return  Node {example}{example} @throws Exception |
| *{{hasActions}}* | {{boolean}} | {{hasActions(Node node) throws Exception}} | Check node type is exo:actionable or not {example}{example} @param node {example}{example} @return true: NodeType is exo:actionable false NodeType is not exo:actionable {example}{example} @throws Exception |
| *{{getActions}}* | {{List<Node>}} | {{getActions(Node node) throws Exception}} | Get list of child node with NodeType = exo:action {example}{example} @param node:  current node {example}{example} @return list of node {example}{example} @throws Exception |
| *{{getCustomActionsNode}}* | {{List<Node>}} | {{getCustomActionsNode(Node node, String lifecyclePhase) throws Exception}} | Get list of node that have same level with current node, exo:lifecyclePhase = lifecyclePhase {example}{example} @param node: current node {example}{example} @param lifecyclePhase  exo:lifecyclePhase value {example}{example} @return list of node {example}{example} @throws Exception |
| *{{getActions}}* | {{List<Node>}} | {{getActions(Node node, String lifecyclePhase) throws Exception}} | Get list of child node with exo:lifecyclePhase = lifecyclePhase {example}{example} @param node: current node {example}{example} @param lifecyclePhase  exo:lifecyclePhase value {example}{example} @return list of node {example}{example} @throws Exception |
| *{{removeAction}}* | {{void}} | {{removeAction(Node node, String repository) throws Exception}} | Remove all action registered in node {example}{example} @param node {example}{example}  @param repository {example}{example} @throws Exception |
| *{{removeAction}}* | {{void}} | {{removeAction(Node node, String actionName, String repository) throws Exception}} | Remove all relative node of current node with node type = exo:actionable {example}{example} @param node:  current node {example}{example} @param actionName  relative path = exo:actionable / actionName {example}{example} @param repository  repository name {example}{example} @throws Exception |
| *{{addAction}}* | {{void}} | {{addAction(Node node, String repository, String type, Map mappings) throws Exception}} | Add mixintype = exo:actionable to current node {example}{example} Add new node to current node with nodetype = type {example}{example} @param node:       current node {example}{example} @param repository:  current repository {example}{example} @param type:        nodetype name {example}{example} @param mappings:    value of property for adding to new node {example}{example} @throws Exception |
| *{{addAction}}* | {{void}} | {{addAction(Node node, String repository, String type, boolean isDeep, String\[\] uuid, String\[\] nodeTypeNames, Map mappings) throws Exception}} | Add mixintype = exo:actionable to current node {example}{example} Add new node to current node with nodetype = type {example}{example} @param node:        current node {example}{example} @param repository:  current repository {example}{example} @param type:        nodetype name {example}{example} @param isDeep:      affect to child node of node {example}{example} @param uuid:        affect only to parent node of event having given uuid {example}{example} @param nodeTypeNames:        affect to parent node of event having nodetype in nodeTypeNames {example}{example} @param mappings:    value of property for adding to new node {example}{example} @throws Exception |
| *{{executeAction}}* | {{void}} | {{executeAction(String userId, Node node, String actionName, Map variables, String repository) throws Exception}} | Execute action following userId, node, variables, repository {example}{example} @param userId:      user identify {example}{example} @param node:        current node {example}{example} @param actionName:  name of action {example}{example} @param variables:   Map with variables and value {example}{example} @param repository:  current repository {example}{example} @throws Exception |
| *{{executeAction}}* | {{void}} | {{executeAction(String userId, Node node, String actionName, String repository) throws Exception}} | Execute action following userId, node, repository, initiated variables {example}{example} @param userId: user identify {example}{example} @param node: current node {example}{example} @param actionName: name of action {example}{example} @param repository: current repository {example}{example} @throws Exception {example}{example} @see {@link #executeAction(String, Node, String, Map, String)} |
| *{{initiateObservation}}* | {{void}} | {{initiateObservation(Node node, String repository) throws Exception}} | Add action listener for all action child node of current node in repository {example}{example} @param node:        current node {example}{example} @param repository:  Repository name {example}{example} @throws Exception |
| *{{init}}* | {{void}} | {{init(String repository) throws Exception}} | init service with repository name {example}{example} @param repository:   repository name {example}{example} @throws Exception |

