From 76be9d0da43a660d2e4e244a148b43c349de35db Mon Sep 17 00:00:00 2001 From: N Smith Date: Tue, 15 Nov 2011 16:09:02 +0000 Subject: [PATCH] ALF-10279 The default transition label is now localisabel. Labels can be set globally, at the workflow level or at the node level. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@31995 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../repo/workflow/WorkflowObjectFactory.java | 31 +++++++++++ .../workflow/activiti/ActivitiConstants.java | 1 + .../activiti/ActivitiTypeConverter.java | 55 ++++++++++++------- .../activiti/ActivitiWorkflowEngine.java | 4 +- 4 files changed, 68 insertions(+), 23 deletions(-) diff --git a/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java b/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java index 779388029f..8685249745 100644 --- a/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java +++ b/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java @@ -195,6 +195,15 @@ public class WorkflowObjectFactory isTaskNode, transitions); } + public WorkflowTransition createTransition(String id, + String defaultTitle, String defaultDescription, + boolean isDefault, String... baseLabelKeys) + { + String title = getLabel(baseLabelKeys, TITLE_LABEL, defaultTitle); + String description = getLabel(baseLabelKeys, TITLE_LABEL, defaultDescription); + return new WorkflowTransition(id, title, description, isDefault); + } + public WorkflowTaskDefinition createTaskDefinition(String id, WorkflowNode node, String typeName, boolean isStart) { TypeDefinition metaData = getTaskTypeDefinition(typeName, isStart); @@ -276,6 +285,28 @@ public class WorkflowObjectFactory String keyBase = displayId.replace(":", "_"); String key = keyBase+ "." + labelKey; String label = messageService.getMessage(key); + return getDefaultLabel(label, defaults); + } + + private String getLabel(String[] locations, String labelKey, String... defaults) + { + String label = null; + int i = 0; + while(label == null && i taskActivities = findUserTasks(startEvent); for(PvmActivity act : taskActivities) { String formKey = getFormKey(act); - defs.add(typeConverter.getTaskDefinition(act, formKey, processDefinition.getId())); + defs.add(typeConverter.getTaskDefinition(act, formKey, processDefinition.getId(), false)); } return defs;