package org.enhydra.shark.api.internal.working;
import java.util.Map;
import org.enhydra.shark.api.client.wfmc.wapi.WAPI;
import org.enhydra.shark.api.client.wfmc.wapi.WMSessionHandle;
import org.enhydra.shark.api.client.wfmodel.*;
import org.enhydra.shark.api.client.wfservice.AdminMisc;
import org.enhydra.shark.api.client.wfservice.AdminMiscExt;
import org.enhydra.shark.api.client.wfservice.ExecutionAdministration;
import org.enhydra.shark.api.client.wfservice.ExecutionAdministrationExt;
import org.enhydra.shark.api.client.wfservice.PackageAdministration;
import org.enhydra.shark.api.client.wfservice.SharkConnection;
import org.enhydra.shark.api.client.wfservice.WfProcessMgrIterator;
import org.enhydra.shark.api.client.wfservice.WfResourceIterator;
import org.enhydra.shark.api.client.wfservice.XPDLBrowser;
import org.enhydra.shark.api.client.xpil.XPILHandler;
import org.enhydra.shark.api.common.ActivityFilterBuilder;
import org.enhydra.shark.api.common.AssignmentFilterBuilder;
import org.enhydra.shark.api.common.EventAuditFilterBuilder;
import org.enhydra.shark.api.common.ProcessFilterBuilder;
import org.enhydra.shark.api.common.ProcessMgrFilterBuilder;
import org.enhydra.shark.api.common.ResourceFilterBuilder;
import org.enhydra.shark.api.internal.eventaudit.AssignmentEventAuditPersistenceObject;
import org.enhydra.shark.api.internal.eventaudit.CreateProcessEventAuditPersistenceObject;
import org.enhydra.shark.api.internal.eventaudit.DataEventAuditPersistenceObject;
import org.enhydra.shark.api.internal.eventaudit.StateEventAuditPersistenceObject;
import org.enhydra.shark.api.internal.instancepersistence.ActivityPersistenceObject;
import org.enhydra.shark.api.internal.instancepersistence.AssignmentPersistenceObject;
import org.enhydra.shark.api.internal.instancepersistence.ProcessMgrPersistenceObject;
import org.enhydra.shark.api.internal.instancepersistence.ProcessPersistenceObject;
import org.enhydra.shark.api.internal.instancepersistence.ResourcePersistenceObject;
/**
* Factory interface for generating Shark core objects.
*
* @author Sasa Bojanic
* @version 1.0
*/
public interface ObjectFactory {
// main objects
WfProcessMgrInternal createProcessMgr(WMSessionHandle shandle,
String packageId,
String procDefId,
String version) throws Exception;
WfProcessMgrInternal createProcessMgr(ProcessMgrPersistenceObject po)
throws Exception;
WfProcessMgr createProcessMgrWrapper(WMSessionHandle shandle, String name)
throws Exception;
WfProcessInternal createProcess(WMSessionHandle shandle,
WfProcessMgrInternal manager,
WfRequesterInternal requester,
String key) throws Exception;
WfProcessInternal createProcess(ProcessPersistenceObject po) throws Exception;
WfProcess createProcessWrapper(WMSessionHandle shandle, String mgrName, String procId);
WfRequesterInternal createDefaultRequester(WMSessionHandle shandle,
String resUsername,
WfRequester extRequester);
WfRequester createRequesterWrapper(WMSessionHandle shandle, String resUsername);
WfActivityInternal createActivity(WMSessionHandle shandle,
WfProcessInternal process,
String key,
// String activitySetDefId,
String activityDefId,
WfActivityInternal blockActivity) throws Exception;
WfActivityInternal createActivity(ActivityPersistenceObject po,
WfProcessInternal process) throws Exception;
WfActivity createActivityWrapper(WMSessionHandle shandle,
String mgrName,
String procId,
String actId);
WfAssignmentInternal createAssignment(WMSessionHandle shandle,
WfActivityInternal activity,
WfResourceInternal resource) throws Exception;
WfAssignmentInternal createAssignment(AssignmentPersistenceObject po,
WfResourceInternal res) throws Exception;
WfAssignment createAssignmentWrapper(WMSessionHandle shandle,
String mgrName,
String procId,
String actId,
String username);
WfResourceInternal createResource(WMSessionHandle shandle, String resourceKey)
throws Exception;
WfResourceInternal createResource(ResourcePersistenceObject po) throws Exception;
WfResource createResourceWrapper(WMSessionHandle shandle, String username);
// event audits
WfAssignmentEventAuditInternal createAssignmentEventAuditWrapper(WMSessionHandle shandle,
WfActivityInternal activity,
WfResourceInternal oldRes,
WfResourceInternal newRes,
boolean isAccepted)
throws Exception;
WfAssignmentEventAuditInternal createAssignmentEventAuditWrapper(WMSessionHandle shandle,
AssignmentEventAuditPersistenceObject po)
throws Exception;
WfCreateProcessEventAuditInternal createCreateProcessEventAuditWrapper(WMSessionHandle shandle,
WfProcessInternal process,
WfRequesterInternal requester)
throws Exception;
WfCreateProcessEventAuditInternal createCreateProcessEventAuditWrapper(WMSessionHandle shandle,
CreateProcessEventAuditPersistenceObject po)
throws Exception;
WfDataEventAuditInternal createDataEventAuditWrapper(WMSessionHandle shandle,
WfExecutionObjectInternal object,
String eventType,
Map oldData,
Map newData) throws Exception;
WfDataEventAuditInternal createDataEventAuditWrapper(WMSessionHandle shandle,
DataEventAuditPersistenceObject po)
throws Exception;
WfStateEventAuditInternal createStateEventAuditWrapper(WMSessionHandle shandle,
WfExecutionObjectInternal object,
String eventType,
String oldState,
String newState)
throws Exception;
WfStateEventAuditInternal createStateEventAuditWrapper(WMSessionHandle shandle,
StateEventAuditPersistenceObject po)
throws Exception;
// iterators
WfProcessMgrIterator createProcessMgrIteratorWrapper(WMSessionHandle shandle)
throws Exception;
WfProcessIterator createProcessIteratorWrapper(WMSessionHandle shandle, String mgrName)
throws Exception;
WfProcessIterator createProcessIteratorWrapper(WMSessionHandle shandle,
String procId,
String actId) throws Exception;
WfProcessIterator createProcessIteratorWrapper(WMSessionHandle shandle,
String username,
boolean ext) throws Exception;
WfActivityIterator createActivityIteratorWrapper(WMSessionHandle shandle, String procId)
throws Exception;
WfAssignmentIterator createAssignmentIteratorWrapper(WMSessionHandle shandle,
String procId,
String actId) throws Exception;
WfAssignmentIterator createAssignmentIteratorWrapper(WMSessionHandle shandle,
String username) throws Exception;
WfResourceIterator createResourceIteratorWrapper(WMSessionHandle shandle)
throws Exception;
WfEventAuditIterator createEventAuditIteratorWrapper(WMSessionHandle shandle,
String procId) throws Exception;
WfEventAuditIterator createEventAuditIteratorWrapper(WMSessionHandle shandle,
String procId,
String actId) throws Exception;
AdminMisc createAdminMisc();
AdminMiscExt createAdminMiscExt();
ExecutionAdministration createExecutionAdministration();
ExecutionAdministrationExt createExecutionAdministrationExt();
PackageAdministration createPackageAdministration();
SharkConnection createSharkConnection();
ActivityFilterBuilder createActivityFilterBuilder();
AssignmentFilterBuilder createAssignmentFilterBuilder();
EventAuditFilterBuilder createEventAuditFilterBuilder();
ProcessFilterBuilder createProcessFilterBuilder();
ProcessMgrFilterBuilder createProcessMgrFilterBuilder();
ResourceFilterBuilder createResourceFilterBuilder();
XPDLBrowser createXPDLBrowser();
XPILHandler createXPILHandler();
WAPI createWAPI();
}
|