From dc51984cce1fd63e5bf7ed17d412f8bc26ade087 Mon Sep 17 00:00:00 2001 From: David Caruana Date: Tue, 15 Aug 2006 12:52:19 +0000 Subject: [PATCH] 1) Minor mods to Rhinoscript Actions - rename createAction to create - add (read-only) name property to action 2) Addition of createPackage to Workflow Service API (no implementation yet) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@3510 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/repo/jscript/Actions.java | 19 +++++++++++++++++-- .../repo/jscript/RhinoScriptService.java | 2 -- .../repo/jscript/RhinoScriptTest.java | 3 --- .../org/alfresco/repo/jscript/test_script2.js | 2 +- .../org/alfresco/repo/jscript/test_script3.js | 12 ++++++------ .../repo/workflow/WorkflowServiceImpl.java | 11 ++++++++++- .../service/cmr/workflow/WorkflowService.java | 11 ++++++++--- 7 files changed, 42 insertions(+), 18 deletions(-) diff --git a/source/java/org/alfresco/repo/jscript/Actions.java b/source/java/org/alfresco/repo/jscript/Actions.java index 41f566e2de..818f52d130 100644 --- a/source/java/org/alfresco/repo/jscript/Actions.java +++ b/source/java/org/alfresco/repo/jscript/Actions.java @@ -91,7 +91,7 @@ public final class Actions implements Scopeable * @param actionName the action name * @return the action */ - public ScriptAction createAction(String actionName) + public ScriptAction create(String actionName) { ScriptAction scriptAction = null; ActionService actionService = services.getActionService(); @@ -147,6 +147,21 @@ public final class Actions implements Scopeable this.scope = scope; } + /** + * Returns the action name + * + * @return action name + */ + public String getName() + { + return this.actionDef.getName(); + } + + public String jsGet_name() + { + return getName(); + } + /** * Return all the properties known about this node. * @@ -174,7 +189,7 @@ public final class Actions implements Scopeable return this.parameters; } - public MapjsGet_parameters() + public Map jsGet_parameters() { return getParameters(); } diff --git a/source/java/org/alfresco/repo/jscript/RhinoScriptService.java b/source/java/org/alfresco/repo/jscript/RhinoScriptService.java index 2935ee4285..9e501435c3 100644 --- a/source/java/org/alfresco/repo/jscript/RhinoScriptService.java +++ b/source/java/org/alfresco/repo/jscript/RhinoScriptService.java @@ -28,9 +28,7 @@ import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.model.ContentModel; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.repository.ContentReader; -import org.alfresco.service.cmr.repository.ContentService; import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.ScriptException; import org.alfresco.service.cmr.repository.ScriptService; import org.alfresco.service.cmr.repository.TemplateImageResolver; diff --git a/source/java/org/alfresco/repo/jscript/RhinoScriptTest.java b/source/java/org/alfresco/repo/jscript/RhinoScriptTest.java index 00a46022bf..76f26d93af 100644 --- a/source/java/org/alfresco/repo/jscript/RhinoScriptTest.java +++ b/source/java/org/alfresco/repo/jscript/RhinoScriptTest.java @@ -17,7 +17,6 @@ package org.alfresco.repo.jscript; import java.io.InputStream; -import java.io.Serializable; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -25,7 +24,6 @@ import java.util.Map; import junit.framework.TestCase; import org.alfresco.model.ContentModel; -import org.alfresco.repo.content.MimetypeMap; import org.alfresco.repo.dictionary.DictionaryComponent; import org.alfresco.repo.dictionary.DictionaryDAO; import org.alfresco.repo.dictionary.M2Model; @@ -34,7 +32,6 @@ import org.alfresco.repo.security.authentication.AuthenticationComponent; import org.alfresco.repo.transaction.TransactionUtil; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.repository.ChildAssociationRef; -import org.alfresco.service.cmr.repository.ContentData; import org.alfresco.service.cmr.repository.ContentService; import org.alfresco.service.cmr.repository.ContentWriter; import org.alfresco.service.cmr.repository.NodeRef; diff --git a/source/java/org/alfresco/repo/jscript/test_script2.js b/source/java/org/alfresco/repo/jscript/test_script2.js index a90760b2a3..9acda09419 100644 --- a/source/java/org/alfresco/repo/jscript/test_script2.js +++ b/source/java/org/alfresco/repo/jscript/test_script2.js @@ -1,5 +1,5 @@ // create add action -var addAspectAction = actions.createAction("add-features"); +var addAspectAction = actions.create("add-features"); addAspectAction.parameters["aspect-name"] = "cm:lockable"; // execute action against passed in node diff --git a/source/java/org/alfresco/repo/jscript/test_script3.js b/source/java/org/alfresco/repo/jscript/test_script3.js index 6d1c6b457b..2c7843e2fb 100644 --- a/source/java/org/alfresco/repo/jscript/test_script3.js +++ b/source/java/org/alfresco/repo/jscript/test_script3.js @@ -1,10 +1,10 @@ // create mail action -var mail = actions.createAction("mail"); -mail.parameters["to"] = "davidc@alfresco.com"; -mail.parameters["subject"] = "Hello from JavaScript"; -mail.parameters["from"] = "david.caruana@alfresco.org"; -mail.parameters["template"] = root.childByNamePath("Company Home/Data Dictionary/Email Templates/notify_user_email.ftl"); -mail.parameters["text"] = "some text, in case template is not found"; +var mail = actions.create("mail"); +mail.parameters.to = "davidc@alfresco.com"; +mail.parameters.subject = "Hello from JavaScript"; +mail.parameters.from = "david.caruana@alfresco.org"; +mail.parameters.template = root.childByNamePath("Company Home/Data Dictionary/Email Templates/notify_user_email.ftl"); +mail.parameters.text = "some text, in case template is not found"; // execute action against passed in node mail.execute(doc); diff --git a/source/java/org/alfresco/repo/workflow/WorkflowServiceImpl.java b/source/java/org/alfresco/repo/workflow/WorkflowServiceImpl.java index 406db91cb7..2a850519af 100644 --- a/source/java/org/alfresco/repo/workflow/WorkflowServiceImpl.java +++ b/source/java/org/alfresco/repo/workflow/WorkflowServiceImpl.java @@ -245,11 +245,20 @@ public class WorkflowServiceImpl implements WorkflowService * @see org.alfresco.service.cmr.workflow.WorkflowService#getTaskById(java.lang.String) */ public WorkflowTask getTaskById(String taskId) + { + String engineId = BPMEngineRegistry.getEngineId(taskId); + TaskComponent component = getTaskComponent(engineId); + return component.getTaskById(taskId); + } + + /* (non-Javadoc) + * @see org.alfresco.service.cmr.workflow.WorkflowService#createPackage(java.lang.String, org.alfresco.service.cmr.repository.NodeRef) + */ + public NodeRef createPackage(String workflowDefinitionId, NodeRef container) { // TODO throw new UnsupportedOperationException(); } - /** * Gets the Workflow Definition Component registered against the specified BPM Engine Id diff --git a/source/java/org/alfresco/service/cmr/workflow/WorkflowService.java b/source/java/org/alfresco/service/cmr/workflow/WorkflowService.java index 40ac0fb6ce..88e13bf9d7 100644 --- a/source/java/org/alfresco/service/cmr/workflow/WorkflowService.java +++ b/source/java/org/alfresco/service/cmr/workflow/WorkflowService.java @@ -211,8 +211,13 @@ public interface WorkflowService */ public WorkflowTask endTask(String taskId, String transition); - - // todo: workflow package apis - // createPackage + /** + * Create a Workflow Package (a container of content to route through the Workflow) + * + * @param workflowDefinitionId workflow definition id + * @param container (optional) a pre-created container (e.g. folder, versioned folder or layered folder) + * @return the workflow package + */ + public NodeRef createPackage(String workflowDefinitionId, NodeRef container); }