Class MemoryCaseDao

java.lang.Object
com.aquima.interactions.process.dao.impl.MemoryCaseDao
All Implemented Interfaces:
com.aquima.interactions.process.dao.IProcessCaseDao

public class MemoryCaseDao extends Object implements com.aquima.interactions.process.dao.IProcessCaseDao

In memory process case dao implementation.

Since:
9.1
Author:
A. Pragt
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    com.aquima.interactions.process.dao.ICaseModel
    acquireLock(long id, String lockedBy)
     
    void
    clearDelayedEvent(long caseId, long eventId)
     
    com.aquima.interactions.process.dao.ICaseModel
    createCase(String name, String appId, com.aquima.interactions.process.dao.CaseStatusType status, String lockedBy, com.aquima.interactions.foundation.text.IMultilingualText displayName)
     
    com.aquima.interactions.process.dao.ICaseEventModel
    createEvent(com.aquima.interactions.foundation.ApplicationID appId, String name, Long caseId, Long taskId, com.aquima.interactions.process.dao.CaseEventType type, com.aquima.interactions.process.dao.CaseEventStatusType status, Date timestamp, String originator, Map<String,com.aquima.interactions.foundation.IValue> content)
     
    com.aquima.interactions.process.dao.ICaseDataInstance
    createInstance(long caseId, String entityName, com.aquima.interactions.foundation.GUID instanceId, String instanceName)
     
    com.aquima.interactions.process.dao.ITaskModel
    createTask(long caseId, Long parentId, String name, com.aquima.interactions.process.dao.TaskType type, com.aquima.interactions.process.TaskStatusType status, com.aquima.interactions.process.dao.IAssigneeInfo assignee, com.aquima.interactions.foundation.GUID nodeId, com.aquima.interactions.foundation.types.DateTimeValue startDate, com.aquima.interactions.foundation.types.DateTimeValue timeoutDate, com.aquima.interactions.foundation.types.DateTimeValue dueDate, String exitState, String eventName, boolean isConditional, boolean isRequired, boolean isUserSet, Integer priority, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck, Map<String,String> properties, String[] unauthorizedUserIds, com.aquima.interactions.foundation.text.IMultilingualText displayName)
     
    com.aquima.interactions.process.dao.ICaseDataValue
    createValue(long instanceId, String attributeName, com.aquima.interactions.foundation.IValue attrValue)
     
    void
    delayEvent(long caseId, com.aquima.interactions.process.dao.ICaseEventModel caseEventModel)
     
    void
     
    void
    deleteCase(long caseId)
     
    void
    deleteInstance(long instanceId)
     
    void
    deleteValue(long instanceId, String attributeName)
     
    com.aquima.interactions.process.dao.ICaseEventModel[]
     
    com.aquima.interactions.process.dao.dto.CaseViewResult
    findByCriteria(com.aquima.interactions.process.dao.dto.CaseViewCriteria criteria)
     
    com.aquima.interactions.process.dao.dto.TaskViewResult
    findByCriteria(com.aquima.interactions.process.dao.dto.TaskViewCriteria criteria)
     
    com.aquima.interactions.process.dao.ICaseEventModel
     
    com.aquima.interactions.process.dao.ICaseEventModel[]
    findCaseEventsByCriteria(com.aquima.interactions.process.search.CaseEventCriteria criteria)
     
    long[]
    findCaseIds(com.aquima.interactions.process.search.CaseCriteria caseFilter, com.aquima.interactions.process.search.TaskCriteria taskFilter)
     
    com.aquima.interactions.process.dao.ICaseModel[]
    findCases(int index, int size)
     
    com.aquima.interactions.process.dao.ICaseModel[]
    findCases(com.aquima.interactions.process.search.CaseCriteria caseFilter, com.aquima.interactions.process.search.TaskCriteria taskFilter)
     
    com.aquima.interactions.process.dao.ICaseEventModel[]
    findDelayedEvents(long caseId)
     
    com.aquima.interactions.process.dao.ICaseQueryResult[]
    findExtendedCases(com.aquima.interactions.process.search.CaseCriteria filterContext)
     
    com.aquima.interactions.process.dao.ITaskQueryResult[]
    findExtendedTasks(com.aquima.interactions.process.search.TaskCriteria filterContext)
     
    com.aquima.interactions.process.dao.ITaskModel[]
    findTasks(int index, int size)
     
    com.aquima.interactions.process.dao.ITaskModel[]
    findTasks(com.aquima.interactions.process.search.TaskCriteria taskFilter)
     
    com.aquima.interactions.process.dao.ICaseEventModel
    findTimerEvent(Long caseId, Long taskId)
     
    com.aquima.interactions.process.dao.ICaseModel
    getCase(long caseId)
     
    com.aquima.interactions.process.dao.ICaseStateModel
    getCaseState(long caseId)
     
    com.aquima.interactions.process.dao.ITaskModel[]
    getChildTasks(long taskId)
     
    com.aquima.interactions.process.dao.ICaseDataInstance[]
    getInstancesForCase(long caseId)
     
    com.aquima.interactions.process.dao.ICaseDataInstance[]
    getInstancesForCases(long[] caseIds)
     
    com.aquima.interactions.process.dao.ITaskModel
    getTask(long id)
     
    com.aquima.interactions.process.dao.ITaskModel[]
    getTasksForCase(long caseId)
     
    com.aquima.interactions.process.dao.ICaseDataValue[]
    getValuesForCase(long caseId)
     
    com.aquima.interactions.process.dao.ICaseDataValue[]
    getValuesForInstances(long[] instanceIds)
     
    boolean
    isCaseLocked(long caseId)
     
    com.aquima.interactions.process.dao.ICaseEventModel
    replayEvent(com.aquima.interactions.process.dao.ICaseEventModel original, Long caseId, String user)
     
    void
    setCaseEventStatus(com.aquima.interactions.process.dao.ICaseEventModel caseEvent, com.aquima.interactions.process.dao.CaseEventStatusType status)
     
    com.aquima.interactions.process.dao.ICaseModel
    unlockCase(long id)
     
    com.aquima.interactions.process.dao.ICaseModel
    updateCase(long id, com.aquima.interactions.process.dao.CaseStatusType status, String lockedBy)
     
    com.aquima.interactions.process.dao.ICaseModel
    updateCaseApplicationId(long id, String applicationId)
     
    com.aquima.interactions.process.dao.ICaseModel
    updateCaseDisplayName(long id, com.aquima.interactions.foundation.text.IMultilingualText displayName)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateDueDate(long taskId, com.aquima.interactions.foundation.types.DateTimeValue dueDate)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateLastPriorityCheck(long taskId, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck)
     
    com.aquima.interactions.process.dao.ITaskModel
    updatePriority(long taskId, Integer priority, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateStartDate(long taskId, com.aquima.interactions.foundation.types.DateTimeValue startDate)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateTask(long taskId, com.aquima.interactions.process.TaskStatusType status, com.aquima.interactions.process.dao.IAssigneeInfo assignee, com.aquima.interactions.foundation.types.DateTimeValue timeoutDate, String exitState, String executedBy, boolean isRequired, boolean isUserSet, Integer priority, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck, com.aquima.interactions.foundation.text.IMultilingualText displayName)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateTaskDisplayName(long taskId, com.aquima.interactions.foundation.text.IMultilingualText displayName)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateTaskExitState(long taskId, String newExitState)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateTaskUnauthorizedUsers(long taskId, String[] unauthorizedUsers)
     
    com.aquima.interactions.process.dao.ITaskModel
    updateTimeoutDate(long taskId, com.aquima.interactions.foundation.types.DateTimeValue timeoutDate)
     
    com.aquima.interactions.process.dao.ICaseDataValue
    updateValue(long instanceId, String attributeName, com.aquima.interactions.foundation.IValue attrValue)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • MemoryCaseDao

      public MemoryCaseDao()
  • Method Details

    • createCase

      public com.aquima.interactions.process.dao.ICaseModel createCase(String name, String appId, com.aquima.interactions.process.dao.CaseStatusType status, String lockedBy, com.aquima.interactions.foundation.text.IMultilingualText displayName)
      Specified by:
      createCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateCase

      public com.aquima.interactions.process.dao.ICaseModel updateCase(long id, com.aquima.interactions.process.dao.CaseStatusType status, String lockedBy)
      Specified by:
      updateCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateCaseDisplayName

      public com.aquima.interactions.process.dao.ICaseModel updateCaseDisplayName(long id, com.aquima.interactions.foundation.text.IMultilingualText displayName)
      Specified by:
      updateCaseDisplayName in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateTaskDisplayName

      public com.aquima.interactions.process.dao.ITaskModel updateTaskDisplayName(long taskId, com.aquima.interactions.foundation.text.IMultilingualText displayName)
      Specified by:
      updateTaskDisplayName in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • deleteCase

      public void deleteCase(long caseId)
      Specified by:
      deleteCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getCase

      public com.aquima.interactions.process.dao.ICaseModel getCase(long caseId)
      Specified by:
      getCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findCases

      public com.aquima.interactions.process.dao.ICaseModel[] findCases(com.aquima.interactions.process.search.CaseCriteria caseFilter, com.aquima.interactions.process.search.TaskCriteria taskFilter)
      Specified by:
      findCases in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findCases

      public com.aquima.interactions.process.dao.ICaseModel[] findCases(int index, int size)
    • findTasks

      public com.aquima.interactions.process.dao.ITaskModel[] findTasks(int index, int size)
    • findTasks

      public com.aquima.interactions.process.dao.ITaskModel[] findTasks(com.aquima.interactions.process.search.TaskCriteria taskFilter)
      Specified by:
      findTasks in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findCaseIds

      public long[] findCaseIds(com.aquima.interactions.process.search.CaseCriteria caseFilter, com.aquima.interactions.process.search.TaskCriteria taskFilter)
      Specified by:
      findCaseIds in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getCaseState

      public com.aquima.interactions.process.dao.ICaseStateModel getCaseState(long caseId)
      Specified by:
      getCaseState in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • createTask

      public com.aquima.interactions.process.dao.ITaskModel createTask(long caseId, Long parentId, String name, com.aquima.interactions.process.dao.TaskType type, com.aquima.interactions.process.TaskStatusType status, com.aquima.interactions.process.dao.IAssigneeInfo assignee, com.aquima.interactions.foundation.GUID nodeId, com.aquima.interactions.foundation.types.DateTimeValue startDate, com.aquima.interactions.foundation.types.DateTimeValue timeoutDate, com.aquima.interactions.foundation.types.DateTimeValue dueDate, String exitState, String eventName, boolean isConditional, boolean isRequired, boolean isUserSet, Integer priority, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck, Map<String,String> properties, String[] unauthorizedUserIds, com.aquima.interactions.foundation.text.IMultilingualText displayName)
      Specified by:
      createTask in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findExtendedTasks

      public com.aquima.interactions.process.dao.ITaskQueryResult[] findExtendedTasks(com.aquima.interactions.process.search.TaskCriteria filterContext)
      Specified by:
      findExtendedTasks in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findExtendedCases

      public com.aquima.interactions.process.dao.ICaseQueryResult[] findExtendedCases(com.aquima.interactions.process.search.CaseCriteria filterContext)
      Specified by:
      findExtendedCases in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateTask

      public com.aquima.interactions.process.dao.ITaskModel updateTask(long taskId, com.aquima.interactions.process.TaskStatusType status, com.aquima.interactions.process.dao.IAssigneeInfo assignee, com.aquima.interactions.foundation.types.DateTimeValue timeoutDate, String exitState, String executedBy, boolean isRequired, boolean isUserSet, Integer priority, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck, com.aquima.interactions.foundation.text.IMultilingualText displayName)
      Specified by:
      updateTask in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateStartDate

      public com.aquima.interactions.process.dao.ITaskModel updateStartDate(long taskId, com.aquima.interactions.foundation.types.DateTimeValue startDate)
      Specified by:
      updateStartDate in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateDueDate

      public com.aquima.interactions.process.dao.ITaskModel updateDueDate(long taskId, com.aquima.interactions.foundation.types.DateTimeValue dueDate)
      Specified by:
      updateDueDate in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateTimeoutDate

      public com.aquima.interactions.process.dao.ITaskModel updateTimeoutDate(long taskId, com.aquima.interactions.foundation.types.DateTimeValue timeoutDate)
      Specified by:
      updateTimeoutDate in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updatePriority

      public com.aquima.interactions.process.dao.ITaskModel updatePriority(long taskId, Integer priority, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck)
      Specified by:
      updatePriority in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateLastPriorityCheck

      public com.aquima.interactions.process.dao.ITaskModel updateLastPriorityCheck(long taskId, com.aquima.interactions.foundation.types.DateTimeValue lastPriorityCheck)
      Specified by:
      updateLastPriorityCheck in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateTaskUnauthorizedUsers

      public com.aquima.interactions.process.dao.ITaskModel updateTaskUnauthorizedUsers(long taskId, String[] unauthorizedUsers)
      Specified by:
      updateTaskUnauthorizedUsers in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getTask

      public com.aquima.interactions.process.dao.ITaskModel getTask(long id)
      Specified by:
      getTask in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getTasksForCase

      public com.aquima.interactions.process.dao.ITaskModel[] getTasksForCase(long caseId)
      Specified by:
      getTasksForCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • createInstance

      public com.aquima.interactions.process.dao.ICaseDataInstance createInstance(long caseId, String entityName, com.aquima.interactions.foundation.GUID instanceId, String instanceName)
      Specified by:
      createInstance in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • deleteInstance

      public void deleteInstance(long instanceId)
      Specified by:
      deleteInstance in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getInstancesForCase

      public com.aquima.interactions.process.dao.ICaseDataInstance[] getInstancesForCase(long caseId)
      Specified by:
      getInstancesForCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getInstancesForCases

      public com.aquima.interactions.process.dao.ICaseDataInstance[] getInstancesForCases(long[] caseIds)
      Specified by:
      getInstancesForCases in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • createValue

      public com.aquima.interactions.process.dao.ICaseDataValue createValue(long instanceId, String attributeName, com.aquima.interactions.foundation.IValue attrValue)
      Specified by:
      createValue in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateValue

      public com.aquima.interactions.process.dao.ICaseDataValue updateValue(long instanceId, String attributeName, com.aquima.interactions.foundation.IValue attrValue)
      Specified by:
      updateValue in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • deleteValue

      public void deleteValue(long instanceId, String attributeName)
      Specified by:
      deleteValue in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getValuesForCase

      public com.aquima.interactions.process.dao.ICaseDataValue[] getValuesForCase(long caseId)
      Specified by:
      getValuesForCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getValuesForInstances

      public com.aquima.interactions.process.dao.ICaseDataValue[] getValuesForInstances(long[] instanceIds)
      Specified by:
      getValuesForInstances in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • getChildTasks

      public com.aquima.interactions.process.dao.ITaskModel[] getChildTasks(long taskId)
      Specified by:
      getChildTasks in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • createEvent

      public com.aquima.interactions.process.dao.ICaseEventModel createEvent(com.aquima.interactions.foundation.ApplicationID appId, String name, Long caseId, Long taskId, com.aquima.interactions.process.dao.CaseEventType type, com.aquima.interactions.process.dao.CaseEventStatusType status, Date timestamp, String originator, Map<String,com.aquima.interactions.foundation.IValue> content)
      Specified by:
      createEvent in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • replayEvent

      public com.aquima.interactions.process.dao.ICaseEventModel replayEvent(com.aquima.interactions.process.dao.ICaseEventModel original, Long caseId, String user)
      Specified by:
      replayEvent in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • deleteBroadcastEvents

      public void deleteBroadcastEvents()
      Specified by:
      deleteBroadcastEvents in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findTimerEvent

      public com.aquima.interactions.process.dao.ICaseEventModel findTimerEvent(Long caseId, Long taskId)
      Specified by:
      findTimerEvent in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • setCaseEventStatus

      public void setCaseEventStatus(com.aquima.interactions.process.dao.ICaseEventModel caseEvent, com.aquima.interactions.process.dao.CaseEventStatusType status)
      Specified by:
      setCaseEventStatus in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findCaseEventById

      public com.aquima.interactions.process.dao.ICaseEventModel findCaseEventById(Long eventId)
      Specified by:
      findCaseEventById in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findAllCaseEvents

      public com.aquima.interactions.process.dao.ICaseEventModel[] findAllCaseEvents()
      Specified by:
      findAllCaseEvents in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findCaseEventsByCriteria

      public com.aquima.interactions.process.dao.ICaseEventModel[] findCaseEventsByCriteria(com.aquima.interactions.process.search.CaseEventCriteria criteria)
      Specified by:
      findCaseEventsByCriteria in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • delayEvent

      public void delayEvent(long caseId, com.aquima.interactions.process.dao.ICaseEventModel caseEventModel)
      Specified by:
      delayEvent in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • clearDelayedEvent

      public void clearDelayedEvent(long caseId, long eventId)
      Specified by:
      clearDelayedEvent in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findDelayedEvents

      public com.aquima.interactions.process.dao.ICaseEventModel[] findDelayedEvents(long caseId)
      Specified by:
      findDelayedEvents in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findByCriteria

      public com.aquima.interactions.process.dao.dto.TaskViewResult findByCriteria(com.aquima.interactions.process.dao.dto.TaskViewCriteria criteria)
      Specified by:
      findByCriteria in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • findByCriteria

      public com.aquima.interactions.process.dao.dto.CaseViewResult findByCriteria(com.aquima.interactions.process.dao.dto.CaseViewCriteria criteria)
      Specified by:
      findByCriteria in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateCaseApplicationId

      public com.aquima.interactions.process.dao.ICaseModel updateCaseApplicationId(long id, String applicationId)
      Specified by:
      updateCaseApplicationId in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • acquireLock

      public com.aquima.interactions.process.dao.ICaseModel acquireLock(long id, String lockedBy)
      Specified by:
      acquireLock in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • unlockCase

      public com.aquima.interactions.process.dao.ICaseModel unlockCase(long id)
      Specified by:
      unlockCase in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • updateTaskExitState

      public com.aquima.interactions.process.dao.ITaskModel updateTaskExitState(long taskId, String newExitState)
      Specified by:
      updateTaskExitState in interface com.aquima.interactions.process.dao.IProcessCaseDao
    • isCaseLocked

      public boolean isCaseLocked(long caseId)
      Specified by:
      isCaseLocked in interface com.aquima.interactions.process.dao.IProcessCaseDao