Class ProcessCase

java.lang.Object
com.aquima.interactions.process.impl.ProcessCase
All Implemented Interfaces:
IProcessCase

public final class ProcessCase extends Object implements IProcessCase
Class exposing process engine functionality for a case.
Since:
7.1
Author:
Jon van Leuven
  • Constructor Details

  • Method Details

    • createTask

      public IProcessTask createTask(IUserData userData, String taskName, DateTimeValue startDate, String[] roles)
      Description copied from interface: IProcessCase
      This method may be used to create a new task for this case. The newly created task will not be part of any existing process, but defined as a loose task similar to an ad-hoc task.
      Specified by:
      createTask in interface IProcessCase
      Parameters:
      userData - Object containing information about the current user.
      taskName - The name or the description of the task.
      startDate - The time at which the task should become active.
      roles - The roles that are required to execute the task.
      Returns:
      Object representing the newly created task.
    • getAvailableTasks

      public IProcessTask[] getAvailableTasks(IUserData userData)
      Description copied from interface: IProcessCase
      This method will returns an array containing all the process tasks that may be executed for the current case. If the current case is locked, or no process steps are available, the method will return an empty array. The returned process steps are bound to the user they are requested for.
      Specified by:
      getAvailableTasks in interface IProcessCase
      Parameters:
      userData - Object containing information about the current user.
      Returns:
      Array containing the process steps that may be executed by the supplied user.
    • getId

      public long getId()
      Description copied from interface: IProcessCase
      This method returns the unique ID of the process case. The ID of the case is generated at the moment the case is created.
      Specified by:
      getId in interface IProcessCase
      Returns:
      The unique ID of the case.
    • getName

      public String getName()
      Description copied from interface: IProcessCase
      This method returns the name of the of the case. As the name is optional, this method may return a null value.
      Specified by:
      getName in interface IProcessCase
      Returns:
      The name of the case.
    • getCreationDate

      public DateTimeValue getCreationDate()
      Description copied from interface: IProcessCase
      This method returns the creation date of the case.
      Specified by:
      getCreationDate in interface IProcessCase
      Returns:
      The creation date of the case, never null
    • getStatus

      public CaseStatusType getStatus()
      Description copied from interface: IProcessCase
      This method returns the status of the case, never null
      Specified by:
      getStatus in interface IProcessCase
      Returns:
      The status of the case
    • isLocked

      public boolean isLocked()
      Description copied from interface: IProcessCase
      This method returns a boolean indicating if the case is locked. A case will be locked as soon as a task is started for the case, and the lock will be released again when the task has been completed or aborted. Cases that are locked will not return any available process steps.
      Specified by:
      isLocked in interface IProcessCase
      Returns:
      Boolean indicating if the case is locked.
    • unlock

      public void unlock()
      Specified by:
      unlock in interface IProcessCase
    • getCaseProfile

      public IProfile getCaseProfile()
      Description copied from interface: IProcessCase
      This method returns a read-only object containing the case profile. The case profile is updated after each process step that has been executed.
      Specified by:
      getCaseProfile in interface IProcessCase
      Returns:
      Object containing the case profile.
    • getCaseProfile

      public IProfile getCaseProfile(CaseDataChangeListener caseDataChangeListener)
      Description copied from interface: IProcessCase
      This method returns a read-only object containing the case profile. The case profile is updated after each process step that has been executed.
      Specified by:
      getCaseProfile in interface IProcessCase
      Parameters:
      caseDataChangeListener - profile changeListener for retrieving case-data set to the caseProfile
      Returns:
      Object containing the case profile.
    • mapCaseProfile

      public void mapCaseProfile(IMapping mapping, IProfile sourceMappingProfile)
      Description copied from interface: IProcessCase
      This method maps a source profile to the case profile using the specified mapping.
      Specified by:
      mapCaseProfile in interface IProcessCase
      Parameters:
      mapping - A mapping to be applied after the profile has been recreated
      sourceMappingProfile - The profile to be used as source for the mapping update
    • getInstanceModel

      public ICaseDataInstance getInstanceModel(long instanceId)
      Specified by:
      getInstanceModel in interface IProcessCase
    • addInstance

      public void addInstance(ICaseDataInstance instanceModel)
      Specified by:
      addInstance in interface IProcessCase
    • removeInstance

      public void removeInstance(ICaseDataInstance instanceModel)
      Specified by:
      removeInstance in interface IProcessCase
    • getInternalCaseProfile

      public IProfile getInternalCaseProfile(CaseDataChangeListener processCaseDataListener)
      Specified by:
      getInternalCaseProfile in interface IProcessCase
    • clearInternalCaseDataCache

      public void clearInternalCaseDataCache()
      Specified by:
      clearInternalCaseDataCache in interface IProcessCase
    • getDisplayName

      public IMultilingualText getDisplayName()
      Specified by:
      getDisplayName in interface IProcessCase
      Returns:
      the display name or null if there is none