package org.enhydra.shark.api.internal.security;
import java.util.List;
import java.util.Map;
import org.enhydra.shark.api.client.wfmc.wapi.WMSessionHandle;
import org.enhydra.shark.api.internal.working.CallbackUtilities;
/**
* @author Sasa Bojanic
*/
public interface SecurityManager {
void configure(CallbackUtilities cus) throws Exception;
List getAssignments(WMSessionHandle shandle, String procId, String actId, List userIds)
throws Exception;
// WfProcessMgr security method
void check_processmgr(WMSessionHandle shandle,
String mgrName,
String methodName,
Map propertyMap) throws SecurityException;
// WfProcess security method
void check_process(WMSessionHandle shandle,
String procId,
String methodName,
Map propertyMap) throws SecurityException;
// WfActivity security method
void check_activity(WMSessionHandle shandle,
String procId,
String actId,
String methodName,
Map propertyMap) throws SecurityException;
// WfAssignment security method
void check_assignment(WMSessionHandle shandle,
String procId,
String actId,
String userId,
String methodName,
Map propertyMap) throws SecurityException;
// WfResource security method
void check_resource(WMSessionHandle shandle,
String resourceId,
String methodName,
Map propertyMap) throws SecurityException;
// WfRequester security method
void check_requester(WMSessionHandle shandle,
String requesterResourceUsername,
String methodName,
Map propertyMap) throws SecurityException;
// WfXXXIterator security method
void check_iterator(WMSessionHandle shandle,
String iteratorType,
String methodName,
Map propertyMap) throws SecurityException;
// WfXXXEventAudit security method
void check_event(WMSessionHandle shandle,
String eventType,
String methodName,
Map propertyMap) throws SecurityException;
// All other API security methods
void check_security(WMSessionHandle shandle,
Class cls,
String methodName,
Map propertyMap) throws SecurityException;
}
|