putting jon's change from last night back in and fixing mostly everything (i know of) that it broke

- added utility methods to AVMConstants to extract information about stores from their names.  this has to be reimplemented to look at store properties rather than inferring things from their names - but it works for now.  this also centralizes all the usage of the store name to infer data about it so it'll make it easier later.
- made the problematic constants jon changed private to avoid having this problem happen again
- checked pretty much every usage of buildAVM<bla> to ensure that nothing else was broken.  in the process removed the AVM part from the buildAVM<bla> part of the method to shorten it and since it's redundant with the classname AVMConstants in which their contained.

creating workflow sandboxes in a manner consistent with user sandboxes
- added a method to SandboxFactory to create workflow sandboxes. they're created with the name <storeId>--workflow-<guid>
- centralized workflow package creation code in AVMWorkflowUtil.
- refactored sandbox creation code to use new utility methods in AVMConstants and so that at some point it can be further refactored.
 
getting avm actions to show up in manage task screen for avm workflows
- modified the model to use different packageItemActionGroups for wcm workflows
- modified the AVMWorkflowEvaluator to allow all actions for items in a workflow package
- added some debug output to various classes
- made wcm navigation ids exposed throughout the app since they are now called from workflow jsps.

things that now work that didn't before:
- virtualization now works again with jon's new naming scheme
- some actions from the manage task screen.

known bugs introduced or remaining as a consequence of this change (i'll filed jira issues for these as soon as i commit this):
- i'm inaccurately counting the number of users in a sandbox since it's harder now to differentiate between user main sandboxes and all the other ones that are being created
- preview does not work on assets within the workflow sandboxes
- review and approve workflow does not appear to actually submit once approved.  not sure if it did before
- lots of actions still do not work from manage tasks, though edit does appear to.
- i commented out the location column in the manage task screen since the path link was causing me troubles - need to put that back in.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4692 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Ariel Backenroth
2006-12-23 01:44:19 +00:00
parent f260c2b35f
commit 4d66c70e30
2 changed files with 243 additions and 237 deletions

View File

@@ -2,156 +2,179 @@
<model name="wcmwf:workflowmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0"> <model name="wcmwf:workflowmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<imports> <imports>
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/> <import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<import uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm"/> <import uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm"/>
</imports> </imports>
<namespaces> <namespaces>
<namespace uri="http://www.alfresco.org/model/wcmworkflow/1.0" prefix="wcmwf"/> <namespace uri="http://www.alfresco.org/model/wcmworkflow/1.0" prefix="wcmwf"/>
</namespaces> </namespaces>
<constraints> <constraints>
<constraint name="wcmwf:reviewType" type="LIST"> <constraint name="wcmwf:reviewType" type="LIST">
<parameter name="allowedValues"> <parameter name="allowedValues">
<!-- TODO: Determine if priority values can be mapped to human-readable strings --> <!-- TODO: Determine if priority values can be mapped to human-readable strings -->
<list> <list>
<value>Serial</value> <value>Serial</value>
<value>Parallel</value> <value>Parallel</value>
</list> </list>
</parameter> </parameter>
</constraint> </constraint>
</constraints> </constraints>
<types> <types>
<!-- --> <!-- -->
<!-- Base WCM "start" task & workflow task definitions --> <!-- Base WCM "start" task & workflow task definitions -->
<!-- --> <!-- -->
<!-- Note: Useful for dispatching WCM specific --> <!-- Note: Useful for dispatching WCM specific -->
<!-- behaviour --> <!-- behaviour -->
<!-- --> <!-- -->
<type name="wcmwf:startTask"> <type name="wcmwf:startTask">
<parent>bpm:startTask</parent> <parent>bpm:startTask</parent>
</type> <overrides>
<property name="bpm:packageItemActionGroup">
<default>edit_and_remove_wcm_package_item_actions</default>
</property>
</overrides>
</type>
<type name="wcmwf:workflowTask"> <type name="wcmwf:workflowTask">
<parent>bpm:workflowTask</parent> <parent>bpm:workflowTask</parent>
</type> <overrides>
<property name="bpm:packageItemActionGroup">
<default>read_wcm_package_item_actions</default>
</property>
</overrides>
</type>
<!-- --> <type name="wcmwf:submitReviewTask">
<!-- WCM Tasks --> <parent>wcmwf:startTask</parent>
<!-- --> <properties>
<property name="wcmwf:submitReviewType">
<title>Serial or Parallel Review</title>
<type>d:text</type>
<mandatory>true</mandatory>
<default>Serial</default>
<constraints>
<constraint ref="wcmwf:reviewType" />
</constraints>
</property>
</properties>
<mandatory-aspects>
<aspect>bpm:assignees</aspect>
<aspect>wcmwf:submission</aspect>
</mandatory-aspects>
</type>
<type name="wcmwf:submitReviewTask"> <type name="wcmwf:reviewTask">
<parent>wcmwf:startTask</parent> <parent>wcmwf:workflowTask</parent>
<properties> <overrides>
<property name="wcmwf:submitReviewType"> <property name="bpm:packageItemActionGroup">
<title>Serial or Parallel Review</title> <default>edit_wcm_package_item_actions</default>
<type>d:text</type> </property>
<mandatory>true</mandatory> </overrides>
<default>Serial</default> <mandatory-aspects>
<constraints> <!-- One or more reviewers - this is here to allow view of all reviewers -->
<constraint ref="wcmwf:reviewType" /> <!-- in the review task -->
</constraints> <aspect>bpm:assignees</aspect>
</property> <aspect>wcmwf:submission</aspect>
</properties> <aspect>wcmwf:reviewType</aspect>
<mandatory-aspects> </mandatory-aspects>
<aspect>bpm:assignees</aspect> </type>
<aspect>wcmwf:submission</aspect>
</mandatory-aspects>
</type>
<type name="wcmwf:reviewTask"> <type name="wcmwf:rejectedTask">
<parent>wcmwf:workflowTask</parent> <parent>wcmwf:workflowTask</parent>
<mandatory-aspects> <mandatory-aspects>
<!-- One or more reviewers - this is here to allow view of all reviewers --> <aspect>bpm:assignees</aspect>
<!-- in the review task --> <aspect>wcmwf:reviewType</aspect>
<aspect>bpm:assignees</aspect> <aspect>wcmwf:reviewInfo</aspect>
<aspect>wcmwf:submission</aspect> </mandatory-aspects>
<aspect>wcmwf:reviewType</aspect> </type>
</mandatory-aspects>
</type>
<type name="wcmwf:rejectedTask"> <type name="wcmwf:approvedTask">
<parent>wcmwf:workflowTask</parent> <parent>wcmwf:workflowTask</parent>
<mandatory-aspects> <mandatory-aspects>
<aspect>bpm:assignees</aspect> <aspect>bpm:assignees</aspect>
<aspect>wcmwf:reviewType</aspect> <aspect>wcmwf:reviewType</aspect>
<aspect>wcmwf:reviewInfo</aspect> <aspect>wcmwf:reviewInfo</aspect>
</mandatory-aspects> </mandatory-aspects>
</type> </type>
<type name="wcmwf:approvedTask"> <type name="wcmwf:submitWebContentTask">
<parent>wcmwf:workflowTask</parent> <parent>wcmwf:startTask</parent>
<mandatory-aspects> <properties>
<aspect>bpm:assignees</aspect> <property name="wcmwf:from">
<aspect>wcmwf:reviewType</aspect> <type>d:text</type>
<aspect>wcmwf:reviewInfo</aspect> </property>
</mandatory-aspects> </properties>
</type> <mandatory-aspects>
<aspect>bpm:assignee</aspect>
</mandatory-aspects>
</type>
</types> </types>
<aspects> <aspects>
<aspect name="wcmwf:submission"> <aspect name="wcmwf:submission">
<properties> <properties>
<property name="wcmwf:fromPath"> <property name="wcmwf:fromPath">
<title>Source Folder Path</title> <title>Source Folder Path</title>
<description>Folder where items have been submitted from</description> <description>Folder where items have been submitted from</description>
<type>d:text</type> <type>d:text</type>
<mandatory>true</mandatory> <mandatory>true</mandatory>
</property> </property>
<property name="wcmwf:label"> <property name="wcmwf:label">
<title>Snapshot Label</title> <title>Snapshot Label</title>
<type>d:text</type> <type>d:text</type>
<mandatory>true</mandatory> <mandatory>true</mandatory>
</property> </property>
</properties> </properties>
</aspect> </aspect>
<aspect name="wcmwf:reviewType"> <aspect name="wcmwf:reviewType">
<properties> <properties>
<property name="wcmwf:reviewType"> <property name="wcmwf:reviewType">
<title>Review Type</title> <title>Review Type</title>
<type>d:text</type> <type>d:text</type>
<mandatory>true</mandatory> <mandatory>true</mandatory>
<constraints> <constraints>
<constraint ref="wcmwf:reviewType" /> <constraint ref="wcmwf:reviewType" />
</constraints> </constraints>
</property> </property>
</properties> </properties>
</aspect> </aspect>
<aspect name="wcmwf:reviewInfo"> <aspect name="wcmwf:reviewInfo">
<properties> <properties>
<property name="wcmwf:reviewerCnt"> <property name="wcmwf:reviewerCnt">
<title>Reviewer Count</title> <title>Reviewer Count</title>
<type>d:int</type> <type>d:int</type>
<mandatory>true</mandatory> <mandatory>true</mandatory>
</property> </property>
<property name="wcmwf:approveCnt"> <property name="wcmwf:approveCnt">
<title>Approver Count</title> <title>Approver Count</title>
<type>d:int</type> <type>d:int</type>
<mandatory>true</mandatory> <mandatory>true</mandatory>
</property> </property>
</properties> </properties>
</aspect> </aspect>
<aspect name="wcmwf:submitted"> <aspect name="wcmwf:submitted">
<properties> <properties>
<property name="wcmwf:workflowInstanceId"> <property name="wcmwf:workflowInstanceId">
<title>Workflow Instance Id</title> <title>Workflow Instance Id</title>
<type>d:text</type> <type>d:text</type>
<mandatory>true</mandatory> <mandatory>true</mandatory>
</property> </property>
</properties> </properties>
</aspect> </aspect>
</aspects> </aspects>
</model> </model>

View File

@@ -118,23 +118,6 @@
</mandatory-aspects> </mandatory-aspects>
</type> </type>
<!-- -->
<!-- WCM Tasks -->
<!-- -->
<type name="wf:submitWebContentTask">
<parent>bpm:startTask</parent>
<properties>
<property name="wf:from">
<type>d:text</type>
</property>
</properties>
<mandatory-aspects>
<aspect>bpm:assignee</aspect>
</mandatory-aspects>
</type>
</types> </types>
<aspects> <aspects>