private File getFile(final ProcessDefinitionUUID processUUID, final ProcessInstanceUUID instanceUUID, final String prefix) { Misc.checkArgsNotNull(processUUID, instanceUUID); final File runtimeFolderBase = new File(base, RUNTIME_FOLDER); File processFolder = new File(runtimeFolderBase, processUUID.toString()); final File instanceFile = new File(processFolder, prefix + instanceUUID.toString() + XML_EXTENSION); return instanceFile; }
@Override @SuppressWarnings("unchecked") public Set<InternalProcessInstance> getProcessInstances(final ProcessDefinitionUUID processUUID) { final Set<InternalProcessInstance> processInsts = new HashSet<InternalProcessInstance>(); final Query query = getSession().getNamedQuery("findProcessInstances"); query.setString("processUUID", processUUID.toString()); final List<InternalProcessInstance> results = query.list(); if (results != null) { processInsts.addAll(results); } return processInsts; }
@Override public Set<InternalProcessDefinition> getProcesses(final Set<ProcessDefinitionUUID> definitionUUIDs, final ProcessState processState) { final Query query = getSession().getNamedQuery("getProcessesListByState"); query.setParameter("state", processState); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQuery(InternalProcessDefinition.class, query, "definitionsUUIDs", uuids); }
@Override public Set<InternalProcessInstance> getProcessInstances(final Set<ProcessDefinitionUUID> definitionUUIDs) { final Query query = getSession().getNamedQuery("getProcessInstancesFromDefinitionUUIDs"); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQuery(InternalProcessInstance.class, query, "definitionsUUIDs", uuids); }
@SuppressWarnings("unchecked") public Set<XpdlInstance> getXpdlInstances(ProcessDefinitionUUID processUUID) { Query query = getSession().getNamedQuery("getXpdlInstances"); query.setCacheable(true); query.setString("processUUID", processUUID.toString()); List<XpdlInstance> list = query.list(); Set<XpdlInstance> result = new HashSet<XpdlInstance>(); if (list != null && !list.isEmpty()) { result.addAll(list); } return result; }
@Override public Set<InternalProcessDefinition> getProcesses(final Set<ProcessDefinitionUUID> definitionUUIDs) { final Query query = getSession().getNamedQuery("getProcessesList"); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQuery(InternalProcessDefinition.class, query, "definitionsUUIDs", uuids); }
@Override public Set<ProcessDefinitionUUID> getAllProcessDefinitionUUIDsExcept(final Set<ProcessDefinitionUUID> processUUIDs) { if (processUUIDs == null || processUUIDs.isEmpty()) { return getAllProcessDefinitionUUIDs(); } final Query query = getSession().getNamedQuery("getAllProcessDefinitionUUIDsExcept"); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : processUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQuery(ProcessDefinitionUUID.class, query, "definitionsUUIDs", uuids); }
@SuppressWarnings("unchecked") public Set<ProcessFullInstance> getProcessInstances(final ProcessDefinitionUUID processUUID) { final Set<ProcessFullInstance> processInsts = new HashSet<ProcessFullInstance>(); final Query query = getSession().getNamedQuery("findProcessInstances"); query.setCacheable(true); query.setString("processUUID", processUUID.toString()); final List<ProcessFullInstance> results = query.list(); if (results != null) { processInsts.addAll(results); } return processInsts; }
@Override public int getNumberOfParentProcessInstances(final Set<ProcessDefinitionUUID> definitionUUIDs) { final Query query = getSession().getNamedQuery("getNumberOfParentProcessInstancesFromDefinitionUUIDs"); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } query.setParameterList("definitionsUUIDs", uuids); return ((Long) query.uniqueResult()).intValue(); }
@Override public Set<InternalProcessInstance> getUserInstances(final String userId, final Set<ProcessDefinitionUUID> definitionUUIDs) { final Query query = getSession().getNamedQuery("getUserInstancesFromDefinitionUUIDs"); query.setString("userId", userId); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQuery(InternalProcessInstance.class, query, "definitionsUUIDs", uuids); }
@Override public Integer getNumberOfParentProcessInstancesWithInvolvedUser(final String userId, final Set<ProcessDefinitionUUID> visibleProcessUUIDs) { final Query query = getSession().getNamedQuery( "getNumberOfParentProcessInstancesWithInvolvedUserFromDefinitionUUIDs"); query.setString("userId", userId); final List<String> uuids = new ArrayList<String>(); for (final ProcessDefinitionUUID uuid : visibleProcessUUIDs) { uuids.add(uuid.toString()); } query.setParameterList("definitionsUUIDs", uuids); return ((Long) query.uniqueResult()).intValue(); }
@Override public Integer getNumberOfParentProcessInstancesWithActiveUser(final String userId, final Set<ProcessDefinitionUUID> visibleProcessUUIDs) { final Query query = getSession() .getNamedQuery("getNumberOfParentProcessInstancesWithActiveUserFromDefinitionUUIDs"); query.setString("userId", userId); final List<String> uuids = new ArrayList<String>(); for (final ProcessDefinitionUUID uuid : visibleProcessUUIDs) { uuids.add(uuid.toString()); } query.setParameterList("definitionsUUIDs", uuids); return ((Long) query.uniqueResult()).intValue(); }
@Override public Integer getNumberOfParentProcessInstancesWithStartedBy(final String userId, final Set<ProcessDefinitionUUID> visibleProcessUUIDs) { final Query query = getSession().getNamedQuery("getNumberOfParentProcessInstancesWithStartedByFromDefinitionUUIDs"); query.setString("userId", userId); final List<String> uuids = new ArrayList<String>(); for (final ProcessDefinitionUUID uuid : visibleProcessUUIDs) { uuids.add(uuid.toString()); } query.setParameterList("definitionsUUIDs", uuids); return ((Long) query.uniqueResult()).intValue(); }
@Override public List<InternalProcessDefinition> getProcessesExcept(final Set<ProcessDefinitionUUID> processUUIDs, final int fromIndex, final int pageSize) { final Query query = getSession().getNamedQuery("getAllProcessesListExcept"); query.setFirstResult(fromIndex); query.setMaxResults(pageSize); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : processUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQueryList(InternalProcessDefinition.class, query, "definitionsUUIDs", uuids); }
@Override public List<InternalProcessDefinition> getProcesses(final Set<ProcessDefinitionUUID> definitionUUIDs, final int fromIndex, final int pageSize) { final Query query = getSession().getNamedQuery("getAllProcessesList"); query.setFirstResult(fromIndex); query.setMaxResults(pageSize); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQueryList(InternalProcessDefinition.class, query, "definitionsUUIDs", uuids); }
@Override public List<InternalProcessInstance> getProcessInstances(final Set<ProcessDefinitionUUID> definitionUUIDs, final int fromIndex, final int pageSize) { final Query query = getSession().getNamedQuery("getProcessInstancesWithDefinitionUUIDs"); query.setFirstResult(fromIndex); query.setMaxResults(pageSize); final Set<String> uuids = new HashSet<String>(); for (final ProcessDefinitionUUID uuid : definitionUUIDs) { uuids.add(uuid.toString()); } return executeSplittedQueryList(InternalProcessInstance.class, query, "definitionsUUIDs", uuids); }
@Override public InternalProcessDefinition getProcess(final ProcessDefinitionUUID processUUID) { final Query query = getSession().getNamedQuery("getProcess"); query.setString("processUUID", processUUID.toString()); query.setMaxResults(1); return (InternalProcessDefinition) query.uniqueResult(); }
public ProcessInstanceKey getProcessInstanceKey(ProcessDefinitionUUID processUUID) { Query query = getSession().getNamedQuery("getProcessInstanceKey"); query.setCacheable(true); query.setString("processUUID", processUUID.toString()); return (ProcessInstanceKey)query.uniqueResult(); }
public XpdlProcess getXpdlProcess(ProcessDefinitionUUID processUUID) { Query query = getSession().getNamedQuery("getXpdlProcess"); query.setString("processUUID", processUUID.toString()); query.setCacheable(true); query.setMaxResults(1); XpdlProcess processDefinition = (XpdlProcess) query.uniqueResult(); return processDefinition; }
public ProcessFullDefinition getProcess(ProcessDefinitionUUID processUUID) { final Query query = getSession().getNamedQuery("getProcess"); query.setCacheable(true); query.setString("processUUID", processUUID.toString()); query.setMaxResults(1); return (ProcessFullDefinition) query.uniqueResult(); }