Class WorkflowUtil

java.lang.Object
com.logicaldoc.workflow.WorkflowUtil

public class WorkflowUtil extends Object
  • Method Details

    • getAttachedDocument

      public static com.logicaldoc.core.document.Document getAttachedDocument(String processInstanceId)
      Returns one of the attached documents in the given WF instance
      Parameters:
      processInstanceId - identifier of the process instance
      Returns:
      the document
    • getAttachedDocuments

      public static Collection<com.logicaldoc.core.document.Document> getAttachedDocuments(String processInstanceId)
      Returns the documents attache to the given WF instance
      Parameters:
      processInstanceId - identifier of the process instance
      Returns:
      the collection of documents
    • deserializeDocIds

      public static Set<Long> deserializeDocIds(String str)
    • serializeFileNames

      public static String serializeFileNames(Collection<Long> ids)
    • serializeDocIds

      public static String serializeDocIds(Collection<Long> ids)
    • serializeDocIdsForDisplay

      public static String serializeDocIdsForDisplay(Collection<Long> ids)
    • serializeActorIds

      public static String serializeActorIds(Collection<String> ids)
    • deserializeSupervisors

      public static List<String> deserializeSupervisors(String supervisor)
    • addNote

      public static WorkflowHistory addNote(String sid, String taskId, String transitionName, String note, com.logicaldoc.core.security.user.User user) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • addNote

      public static WorkflowHistory addNote(String sid, org.activiti.engine.task.Task task, String transitionName, String note, com.logicaldoc.core.security.user.User user) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • addNote

      public static WorkflowHistory addNote(String sid, String taskName, String taskId, String processId, String transitionName, String note, com.logicaldoc.core.security.user.User user) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • complete

      public static void complete(org.activiti.engine.task.Task task, String transitionName, WorkflowHistory transaction) throws WorkflowValidationException
      Throws:
      WorkflowValidationException
    • complete

      public static void complete(String taskId, String transitionName, WorkflowHistory transaction) throws WorkflowValidationException
      Throws:
      WorkflowValidationException
    • deleteInstance

      public static void deleteInstance(String processInstanceId)
      Deletes a given workflow process instance
      Parameters:
      processInstanceId - identifier of the instance to delete
    • stopInstance

      public static void stopInstance(String processInstanceId)
      Stops a given workflow process instance
      Parameters:
      processInstanceId - identifier of the instance to stop
    • claim

      public static void claim(String sid, String taskId, com.logicaldoc.core.security.user.User user, WorkflowHistory transaction) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • getTask

      public static org.activiti.engine.task.Task getTask(String taskId)
    • reassign

      public static void reassign(String sid, String taskId, com.logicaldoc.core.security.user.User user) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • getInitiator

      public static com.logicaldoc.core.security.user.User getInitiator(String processInstanceId, org.activiti.engine.delegate.DelegateTask delegate) throws com.logicaldoc.core.PersistenceException
      Retrieves the user that initiated the workflow(if any)
      Parameters:
      processInstanceId - identifier of the process instance
      delegate - the task
      Returns:
      the user
      Throws:
      com.logicaldoc.core.PersistenceException - error at data layer
    • prepareDictionary

      public static Map<String,Object> prepareDictionary(org.activiti.engine.delegate.DelegateTask delegate, org.activiti.engine.task.Task task, String taskName, List<String> candidates, String processInstanceId, String processDefinitionId, Map<String,Object> keys) throws com.logicaldoc.core.PersistenceException
      Prepares a dictionary to be passed to the scripting engine
      Parameters:
      delegate - delegate of the task
      task - the task
      taskName - name of the task
      candidates - List of unique user names
      processInstanceId - identifier of the process instance
      processDefinitionId - identifier of the workflow definition
      keys - map of parameter to be added to the dictionary
      Returns:
      map key - value
      Throws:
      com.logicaldoc.core.PersistenceException - error at data layer
    • sendNotifications

      public static void sendNotifications(List<String> actors, String emailTemplate, String taskName, String processInstanceId, String processDefinitionId, Map<String,Object> keys, org.activiti.engine.task.Task task) throws com.logicaldoc.core.PersistenceException
      Notifies the actors of a specified workflow node
      Parameters:
      actors - Names of the actors
      emailTemplate - The email template to use
      taskName - Name of the current node
      task - Current task
      processInstanceId - The identifier of the current process instance
      processDefinitionId - The identifier of the current process definition
      keys - Dictionary to use, it could be null
      Throws:
      com.logicaldoc.core.PersistenceException - error at data layer
    • unclaim

      public static void unclaim(String taskId)
    • appendDocument

      public static void appendDocument(String taskId, long docId, String username) throws com.logicaldoc.core.PersistenceException
      Appends a document to a given workflow
      Parameters:
      taskId - identifier of the current task in the workflow
      docId - identifier of the document to append
      username - optional the user in name of which the action must be taken
      Throws:
      com.logicaldoc.core.PersistenceException - error at data layer
    • getVariables

      public static Map<String,Object> getVariables(String processInstanceId)
      Gets the variables of the specified workflow instance
      Parameters:
      processInstanceId - identifier of the workflow instance
      Returns:
      map of variables name-value
    • getVariable

      public static Object getVariable(String processInstanceId, String name)
      Gets the value of a variable of the specified workflow instance
      Parameters:
      processInstanceId - identifier of the workflow instance
      name - name of the variable
      Returns:
      value value of the variable
    • setVariable

      public static void setVariable(String processInstanceId, String name, Object value)
      Sets the value of a variable of the specified workflow instance
      Parameters:
      processInstanceId - identifier of the workflow instance
      name - name of the variable
      value - value of the variable
    • appendDocuments

      public static void appendDocuments(String taskId, List<Long> docIds, WorkflowHistory transaction) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • removeDocument

      public static void removeDocument(String taskId, long docId, String username) throws com.logicaldoc.core.PersistenceException
      Removes a document from a given workflow
      Parameters:
      taskId - identifier of the current task in the workflow
      docId - identifier of the document to append
      username - optional user in name of which the action must be taken
      Throws:
      com.logicaldoc.core.PersistenceException - error at data layer
    • removeDocument

      public static void removeDocument(String taskId, long docId, WorkflowHistory transaction) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • startWorkflow

      public static String startWorkflow(String workflowName, String workflowDescription, String tag, String color, Set<Long> docIds, com.logicaldoc.core.security.Session session, com.logicaldoc.core.security.user.User user) throws com.logicaldoc.core.PersistenceException
      Throws:
      com.logicaldoc.core.PersistenceException
    • getWorkflowDefinition

      public static WorkflowDefinition getWorkflowDefinition(WorkflowTemplate template)
      Builds the object model of the workflow
      Parameters:
      template - the templates that stores the XML definition of the workflow
      Returns:
      the workflow object model
    • saveHistory

      public static void saveHistory(WorkflowHistory transaction) throws com.logicaldoc.core.PersistenceException
      Saves a workflow history into the database
      Parameters:
      transaction - the history to save
      Throws:
      com.logicaldoc.core.PersistenceException - error at data layer