mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Invitation service
Java Script API for invitations on Site object. Implementation of REST API for Site / Invitations. Rename of old invite workflow to invitation-nominated and renaming of properties for consistency. Old workflow is due for deprecation. Rework to Nominated workflow to unscramble user creation. Start Workflow UI bean now knows to avoid workflows managed by the InvitationService. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@13523 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -44,6 +44,7 @@ import org.alfresco.model.ApplicationModel;
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.repo.workflow.WorkflowModel;
|
||||
import org.alfresco.service.cmr.dictionary.PropertyDefinition;
|
||||
import org.alfresco.service.cmr.invitation.InvitationService;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.NodeService;
|
||||
import org.alfresco.service.cmr.workflow.WorkflowDefinition;
|
||||
@@ -84,9 +85,11 @@ public class StartWorkflowWizard extends BaseWizardBean
|
||||
transient protected List<SelectItem> availableWorkflows;
|
||||
transient private Map<String, WorkflowDefinition> workflows;
|
||||
|
||||
protected Map<String, String> wcmWorkflows;
|
||||
protected List<String> wcmWorkflows;
|
||||
protected List<String> invitationWorkflows;
|
||||
|
||||
transient private WorkflowService workflowService;
|
||||
transient private InvitationService invitationService;
|
||||
|
||||
protected Node startTaskNode;
|
||||
protected List<Node> resources;
|
||||
@@ -561,14 +564,16 @@ public class StartWorkflowWizard extends BaseWizardBean
|
||||
|
||||
// get the list of configured WCM workflows and filter these from
|
||||
// the list as these workflows are specific to WCM functionality and AVM stores
|
||||
Map<String, String> configuredWcmWorkflows = this.getWCMWorkflows();
|
||||
List<String> configuredWcmWorkflows = this.getWCMWorkflowNames();
|
||||
List<String> configuredInvitationWorkflows = this.getInvitationServiceWorkflowNames();
|
||||
|
||||
List<WorkflowDefinition> workflowDefs = this.getWorkflowService().getDefinitions();
|
||||
for (WorkflowDefinition workflowDef : workflowDefs)
|
||||
{
|
||||
String name = workflowDef.name;
|
||||
if (configuredWcmWorkflows.containsKey(name) == false &&
|
||||
"jbpm$wf:invite".equals(name) == false)
|
||||
|
||||
if (configuredWcmWorkflows.contains(name) == false &&
|
||||
configuredInvitationWorkflows.contains(name) == false)
|
||||
{
|
||||
// add the workflow if it is not a WCM specific workflow
|
||||
String label = workflowDef.title;
|
||||
@@ -720,10 +725,11 @@ public class StartWorkflowWizard extends BaseWizardBean
|
||||
}
|
||||
|
||||
/**
|
||||
* @return The configured comma separated list of WCM workflows, if the config
|
||||
* can not be found an empty string will be returned
|
||||
* Get the Names of the WCM workflows.
|
||||
*
|
||||
* @return The names of the WCM workflows.
|
||||
*/
|
||||
protected Map<String, String> getWCMWorkflows()
|
||||
protected List<String> getWCMWorkflowNames()
|
||||
{
|
||||
if ((wcmWorkflows == null) || (Application.isDynamicConfig(FacesContext.getCurrentInstance())))
|
||||
{
|
||||
@@ -736,11 +742,11 @@ public class StartWorkflowWizard extends BaseWizardBean
|
||||
if (workflowConfig != null)
|
||||
{
|
||||
StringTokenizer t = new StringTokenizer(workflowConfig.getValue().trim(), ", ");
|
||||
wcmWorkflows = new HashMap<String, String>(t.countTokens());
|
||||
wcmWorkflows = new ArrayList<String>(t.countTokens());
|
||||
while (t.hasMoreTokens())
|
||||
{
|
||||
String wfName = "jbpm$" + t.nextToken();
|
||||
wcmWorkflows.put(wfName, wfName);
|
||||
wcmWorkflows.add(wfName);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -757,7 +763,7 @@ public class StartWorkflowWizard extends BaseWizardBean
|
||||
while (t.hasMoreTokens())
|
||||
{
|
||||
String wfName = "jbpm$" + t.nextToken();
|
||||
wcmWorkflows.put(wfName, wfName);
|
||||
wcmWorkflows.add(wfName);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -774,4 +780,30 @@ public class StartWorkflowWizard extends BaseWizardBean
|
||||
|
||||
return wcmWorkflows;
|
||||
}
|
||||
/**
|
||||
* Get the Names of the Invitation Service Workflows
|
||||
*
|
||||
* @return The names of the Invitation Service workflows
|
||||
*/
|
||||
protected List<String> getInvitationServiceWorkflowNames()
|
||||
{
|
||||
if( invitationWorkflows == null )
|
||||
{
|
||||
if (invitationService != null)
|
||||
{
|
||||
invitationWorkflows = invitationService.getInvitationServiceWorkflowNames();
|
||||
}
|
||||
}
|
||||
return invitationWorkflows;
|
||||
}
|
||||
|
||||
public void setInvitationService(InvitationService invitationService)
|
||||
{
|
||||
this.invitationService = invitationService;
|
||||
}
|
||||
|
||||
public InvitationService getInvitationService()
|
||||
{
|
||||
return invitationService;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user