
org.ow2.bonita.services.Repository Maven / Gradle / Ivy
package org.ow2.bonita.services;
import java.util.Set;
import org.ow2.bonita.definition.InternalProcess;
import org.ow2.bonita.facade.uuid.ActivityInstanceUUID;
import org.ow2.bonita.facade.uuid.ProcessDefinitionUUID;
import org.ow2.bonita.facade.uuid.ProcessInstanceUUID;
import org.ow2.bonita.pvm.job.Timer;
import org.ow2.bonita.runtime.InternalExecution;
import org.ow2.bonita.runtime.InternalInstance;
/**
* @author Marc Blachon, Guillaume Porcher, Charles Souillard, Miguel Valdes, Pierre Vigneras
*/
public interface Repository {
/**
* INSTANCE
*/
void storeInstance(InternalInstance instance);
Set getInstances(ProcessDefinitionUUID processUUID);
InternalInstance getInstance(ProcessInstanceUUID instanceUUID);
InternalInstance removeInstance(ProcessInstanceUUID instanceUUID);
InternalExecution getExecutionOnActivity(ProcessInstanceUUID instanceUUID,
ActivityInstanceUUID activityInstanceUUID);
/**
* PROCESS
*/
void storeProcess(InternalProcess process);
InternalProcess getProcess(ProcessDefinitionUUID processUUID);
InternalProcess removeProcess(ProcessDefinitionUUID processUUID);
String getLastProcessVersion(String processId);
void storeProcessVersion(String processId, String processVersion);
void removeProcessVersion(String processId, String processVersion);
/*
* TIMERS
*/
/** return all timers associated to the given instance */
Set getInstanceTimers(ProcessInstanceUUID instanceUUID);
void removeTimer(Timer timer);
InternalProcess findLatestProcessByName(String subProcessId);
long getNextActivityInstanceNb(ProcessInstanceUUID instanceUUID,
String activityName);
long getNextProcessInstanceNb(ProcessDefinitionUUID processUUID);
/*
* Meta
*/
void storeMetaData(String key, String value);
String getMetaData(String key);
void deleteMetaData(String key);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy