Merged BRANCHES/V4.2 to HEAD:

55206: Branch created for 4.2.x releases.
   55209: Merged HEAD to BRANCHES/V4.2:
        55208: Added Sharepoint config to unit test classpath to fix VtiRequestDispatcherTest.
   55222: Merged HEAD-BUG-FIX to V4.2
        55220: Merged V4.1-BUG-FIX (4.1.7) to HEAD-BUG-FIX (4.2)
           55218: Fix for ALF-19894 Site is not displayed after restoring from Trashcan
             This bug was reported on 4.2, but the bug is also present on 4.1.
             I have added a testcase to reproduce the bug along with a fix.
             The problem was in SiteServiceImpl.delete where the code was writing an empty property value into the {}memberships property
             and therefore there was no record of which users had been members of the deleted site.
   55245: Fixed javadoc while checking that ALF-19055 was fixed.  ActivityService no longer uses 'format
   55246: CLOUD-2050 -Content changes are not synced from Cloud to On-Premise (errors in the logs)
   55249: Hazelcast: Added ability to create cache with 'read-backup-data' via property *.readBackupData
   55250: Hazelcast cache builder now accepts 'async-backup-count' value and any error in setting a value logs the full exception
   55251: Asynchronous cache: Better logging of in- and after-transaction processes
   55252: Asynchronous cache: Better logging of in- and after-transaction processes
   55266: Workflow REST API fix for variable retrieval
   55276: Merged HEAD to BRANCHES/V4.2:
        55274: Disabling Sharepoint unit tests until we can make them run properly in the build.
   55278: ALF-19889 - String for Brazilian Portuguese
   55279: Merged DEV to 4.2
        ALF-17464 : Replication jobs aren't displayed until sorting by some characteristic
           - Changing not exact equals (!==) to not euqals (!=)
   55280: Fix for ALF-19865 - Forgot password link redirects to Login page. Also cleaned up the mess that is the 'Sign in to Alfresco in the cloud' dialog.
   55281: Probable fix for ALF-19225 Intermittent test failures in SubscriptionServiceActivitiesTest
   55282: ALF-19865 - Cloud Sync profile area now looks like the rest of profile area.
   55285: Merged BRANCHES/DEV/BELARUS/HEAD-2013_08_27 to BRANCHES/V4.2:
        55068: ALF-19915 : MT and WebDAV: Content is lost when uploading non-empty document
   55286: Merged BRANCHES/DEV/BELARUS/HEAD-2013_08_29 to BRANCHES/V4.2:
        55207: ALF-19915 : MT and WebDAV: Content is lost when uploading non-empty document
        55210: ALF-19915 : MT and WebDAV: Content is lost when uploading non-empty document
   55297: As part of prep work for fixing ALF-20023 Recent Sites and Favorite Sites in copy/move pickers empty,
   55299: ALF-19556: IE10 specific fix for file upload browse (impressive how IE finds more and more innovative ways to spoil things for itself)
   55300: Fixed date issue when creating a new process instance
   55308: Resync to HEAD@55302


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@55309 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Brian Remmington
2013-09-15 15:00:13 +00:00
parent 4fcdc669d9
commit 7f8effa1f4
7 changed files with 246 additions and 15 deletions

View File

@@ -480,7 +480,7 @@ public class ProcessesImpl extends WorkflowRestImpl implements Processes
if (startFormData != null)
{
String formKey = startFormData.getFormKey();
definitionTypeMap.put(processInfo.getProcessDefinitionId(), workflowFactory.getTaskFullTypeDefinition(formKey, true));
definitionTypeMap.put(processInfo.getProcessDefinitionId(), getWorkflowFactory().getTaskFullTypeDefinition(formKey, true));
}
}
@@ -676,12 +676,22 @@ public class ProcessesImpl extends WorkflowRestImpl implements Processes
}
}
}
else if (taskProperties.containsKey(propNameMap.get(variableName)))
{
PropertyDefinition propDef = taskProperties.get(propNameMap.get(variableName));
DataTypeDefinition propDataType = propDef.getDataType();
if ("java.util.Date".equalsIgnoreCase(propDataType.getJavaClassName()))
{
// fix for different ISO 8601 Date format classes in Alfresco (org.alfresco.util and Spring Surf)
variableValue = ISO8601DateFormat.parse((String) variableValue);
}
}
if (variableValue instanceof Serializable)
{
startParams.put(propNameMap.get(variableName), (Serializable) variableValue);
}
}
}
}
}
}
@@ -888,7 +898,7 @@ public class ProcessesImpl extends WorkflowRestImpl implements Processes
formKey = startFormData.getFormKey();
}
TypeDefinition startTaskTypeDefinition = workflowFactory.getTaskFullTypeDefinition(formKey, true);
TypeDefinition startTaskTypeDefinition = getWorkflowFactory().getTaskFullTypeDefinition(formKey, true);
// Convert raw variables to Variable objects
List<Variable> resultingVariables = restVariableHelper.getVariables(variables, startTaskTypeDefinition);

View File

@@ -59,7 +59,7 @@ public class RestVariableHelper
private NamespaceService namespaceService;
private WorkflowQNameConverter qnameConverter;
private WorkflowQNameConverter qNameConverter;
public static final Set<String> INTERNAL_PROPERTIES = new HashSet<String>(Arrays.asList(ActivitiConstants.VAR_TENANT_DOMAIN));
@@ -71,7 +71,15 @@ public class RestVariableHelper
public void setNamespaceService(NamespaceService namespaceService)
{
this.namespaceService = namespaceService;
this.qnameConverter = new WorkflowQNameConverter(namespaceService);
}
protected WorkflowQNameConverter getQNameConverter()
{
if (qNameConverter == null)
{
qNameConverter = new WorkflowQNameConverter(namespaceService);
}
return qNameConverter;
}
/**
@@ -84,13 +92,13 @@ public class RestVariableHelper
TypeDefinition startFormTypeDefinition, TypeDefinition taskTypeDefinition)
{
List<TaskVariable> result = new ArrayList<TaskVariable>();
if (localVariables != null)
if (localVariables != null && localVariables.size() > 0)
{
TypeDefinitionContext context = new TypeDefinitionContext(taskTypeDefinition);
addTaskVariables(result, localVariables, context, VariableScope.LOCAL);
}
if (globalVariables != null)
if (globalVariables != null && globalVariables.size() > 0)
{
TypeDefinitionContext context = new TypeDefinitionContext(startFormTypeDefinition);
addTaskVariables(result, globalVariables, context, VariableScope.GLOBAL);
@@ -381,12 +389,12 @@ public class RestVariableHelper
for (Entry<QName, PropertyDefinition> entry : typeDefinition.getProperties().entrySet())
{
propertyDefinitions.put(qnameConverter.mapQNameToName(entry.getKey()), entry.getValue());
propertyDefinitions.put(getQNameConverter().mapQNameToName(entry.getKey()), entry.getValue());
}
for (Entry<QName, AssociationDefinition> entry : typeDefinition.getAssociations().entrySet())
{
associationDefinitions.put(qnameConverter.mapQNameToName(entry.getKey()), entry.getValue());
associationDefinitions.put(getQNameConverter().mapQNameToName(entry.getKey()), entry.getValue());
}
}

View File

@@ -487,7 +487,7 @@ public class TasksImpl extends WorkflowRestImpl implements Tasks
if (startFormData != null)
{
String formKey = startFormData.getFormKey();
definitionTypeMap.put(task.getProcessDefinitionId(), workflowFactory.getTaskFullTypeDefinition(formKey, true));
definitionTypeMap.put(task.getProcessDefinitionId(), getWorkflowFactory().getTaskFullTypeDefinition(formKey, true));
}
}
@@ -878,7 +878,7 @@ public class TasksImpl extends WorkflowRestImpl implements Tasks
StartFormData startFormData = activitiProcessEngine.getFormService().getStartFormData(taskInstance.getProcessDefinitionId());
if (startFormData != null)
{
startFormTypeDefinition = workflowFactory.getTaskFullTypeDefinition(startFormData.getFormKey(), true);
startFormTypeDefinition = getWorkflowFactory().getTaskFullTypeDefinition(startFormData.getFormKey(), true);
}
else
{