|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
oracle.idm.provisioning.approval.ApprovalStrategy
oracle.idm.provisioning.approval.ExtProcApprovalStrategy
public class ExtProcApprovalStrategy
Field Summary |
---|
Fields inherited from class oracle.idm.provisioning.approval.ApprovalStrategy |
---|
APPROVER_ROLE, CONTEXT_KEY_DEBUG, CONTEXT_KEY_SESSION, DATA_FROM_APPROVED_REQ, m_cache, m_cachedPolicies, m_dirctx, m_source, ORIGINATOR_ROLE, requestBase, SYSTEM_APPROVER, USER_ACTION_APPROVE, USER_ACTION_CANCEL, USER_ACTION_REJECT |
Constructor Summary | |
---|---|
ExtProcApprovalStrategy() |
Method Summary | |
---|---|
ModRequest |
approveForLevel(java.lang.String id, java.lang.String app, java.lang.String processor, int atlevel, int nextlevel) Approve a given request at the given level. |
void |
approveRequest(java.lang.String id, java.lang.String app, java.lang.String processor) Approve a given request. |
ApprovalCheckContext |
checkForApproval(RequestOperationData opdata, java.lang.Object dataCtx) If approval is needed for this request, starts the approval process. |
java.util.List |
getAllApprovers(java.lang.String user, java.lang.String id, java.lang.String app) Gets approver lists for all levels of a given request. |
java.util.List |
getAllowedActions(java.lang.String user, java.lang.String id, java.lang.String app) Returns actions a user can perform on a given request. |
Approvers |
getApproversForLevel(java.lang.String user, java.lang.String id, java.lang.String app, int level) Gets approver list for a given request for a given level. |
Request |
getRequest(java.lang.String user, java.lang.String id, java.lang.String app) Gets a given request only if user is a requestor/ valid approver for the request at its current approval level. |
java.util.List |
getRequestsForUser(java.lang.String user, RequestSearchCriteria criteria, java.lang.String userrole) Gets requests created by this user/ pending for this user that meet the specified criteria. |
java.util.List |
getRequestsToNotify(java.lang.String app, java.lang.Object ctx) Get all the requests that need to be sent to this app, in a format understood by the caller. |
protected Request |
preProcessRequest(java.lang.String id, java.lang.String app, java.lang.String processor) PROTECTED METHODS |
java.lang.Object |
processRequest(java.lang.Object evt, java.lang.String targetApp, java.lang.String sourceApp, java.lang.Object evtCtx) Process request based on given object. |
void |
rejectRequest(java.lang.String id, java.lang.String app, java.lang.String processor) Reject a given request. |
void |
updateNotifiedRequest(java.lang.String id, java.lang.String app) Update status of requests. |
Methods inherited from class oracle.idm.provisioning.approval.ApprovalStrategy |
---|
cachePolicies, cancelRequest, changeRequestProcessingStatus, changeRequestStatus, changeRequestStatuses, checkUserAccess, clearCache, getAllActions, getApprovalPolicies, getApprovers, getApproversForLevel, getCreatedRequests, getPendingRequestsToApprove, getRequest, getRequestStatus, getRequestsWCriteria, getRequestsWProcStatus, isAdmin, isApprovalNeeded, isApprovalNeeded, isComplete, isMatch, isValidApprover, resolveApproverRole, setApprovalStrategyContext, setDirectoryCtx, storeRequest |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExtProcApprovalStrategy()
Method Detail |
---|
public ApprovalCheckContext checkForApproval(RequestOperationData opdata, java.lang.Object dataCtx) throws javax.naming.NamingException, InvalidRequestException, ApprovalProcessException
checkForApproval
in class ApprovalStrategy
rdata
- Operational data for the request.dataCtx
- Optional: Specifies a context for the data that may be used by some strategies for additional checks.javax.naming.NamingException
InvalidRequestException
ApprovalProcessException
RequestOperationData
public java.lang.Object processRequest(java.lang.Object evt, java.lang.String targetApp, java.lang.String sourceApp, java.lang.Object evtCtx) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
ApprovalStrategy
processRequest
in class ApprovalStrategy
evt
- Event or request information that needs to be processed.targetApp
- Target application against which this event/ request is taking place.sourceApp
- Source application from which this event/ request originated.evtCtx
- Optional argument depending on specific strategy implementation.java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
public ModRequest approveForLevel(java.lang.String id, java.lang.String app, java.lang.String processor, int atlevel, int nextlevel) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
approveForLevel
in class ApprovalStrategy
id
- Id of the request to be approved.app
- Target application of the request.processorID
- Identity of the user trying to approve theatlevel
- Level at which the request needs to be approved.nextlevel
- Next approval level for the request. Note, nextLevel is required for externalized approval processes, in case for whatever reasons, in-between approval levels are skipped (by escalating/ changing processing logic.). This gives the external process flexibility and doesn't restrict it to approve a request for each level.java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
public void approveRequest(java.lang.String id, java.lang.String app, java.lang.String processor) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
approveRequest
in class ApprovalStrategy
id
- Id of the request to be approved.app
- Target application of the request.processorID
- Identity of the user trying to approve the request.java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
public void rejectRequest(java.lang.String id, java.lang.String app, java.lang.String processor) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
rejectRequest
in class ApprovalStrategy
id
- Id of the request to be rejected.app
- Target application of the request.processorID
- Identity of the user trying to reject the request.java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
public java.util.List getRequestsToNotify(java.lang.String app, java.lang.Object ctx) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
ApprovalStrategy
getRequestsToNotify
in class ApprovalStrategy
app
- Application to which the requests are notified.ctx
- Application specific context. The format of context is left to subclasses.java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
Request
public void updateNotifiedRequest(java.lang.String id, java.lang.String app) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
ApprovalStrategy
updateNotifiedRequest
in class ApprovalStrategy
java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
public java.util.List getRequestsForUser(java.lang.String user, RequestSearchCriteria criteria, java.lang.String userrole) throws javax.naming.NamingException, ApprovalProcessException
getRequestsForUser
in class ApprovalStrategy
user
- Identity of the user for whom the requests are to be obtained.attrs
- A map specifying further criteria for the requests. The key to the map is one of the SRCH_* public strings defined in the Request object. The value is a collection of Strings, specifying search criteria.userrole
- One of the REQUSTOR_ROLE/ APPROVER_ROLE.javax.naming.NamingException
ApprovalProcessException
Request, RequestSearchCriteria
public Request getRequest(java.lang.String user, java.lang.String id, java.lang.String app) throws javax.naming.NamingException, ApprovalProcessException
getRequest
in class ApprovalStrategy
user
- Id of the user doing the get operation.id
- Id of the request to be obtained.app
- Target application for the request.javax.naming.NamingException
ApprovalProcessException
Request
public Approvers getApproversForLevel(java.lang.String user, java.lang.String id, java.lang.String app, int level) throws javax.naming.NamingException, ApprovalProcessException
getApproversForLevel
in class ApprovalStrategy
user
- Identity of the user doing this operation.id
- Id of the request for which approvers are needed.app
- Target application for the request.level
- Level for which the approver list is required.javax.naming.NamingException
ApprovalProcessException
Approvers
public java.util.List getAllApprovers(java.lang.String user, java.lang.String id, java.lang.String app) throws javax.naming.NamingException, ApprovalProcessException
getAllApprovers
in class ApprovalStrategy
user
- Identity of the user doing this operation.id
- Id of the request for which approvers are needed.app
- Target application for the request.javax.naming.NamingException
ApprovalProcessException
Approvers
public java.util.List getAllowedActions(java.lang.String user, java.lang.String id, java.lang.String app) throws javax.naming.NamingException, ApprovalProcessException
getAllowedActions
in class ApprovalStrategy
user
- Identity of the user doing this operation.id
- Id of the request for which approvers are needed.app
- Target application for the request.javax.naming.NamingException
ApprovalProcessException
protected Request preProcessRequest(java.lang.String id, java.lang.String app, java.lang.String processor) throws java.lang.IllegalArgumentException, javax.naming.NamingException, ApprovalProcessException
java.lang.IllegalArgumentException
javax.naming.NamingException
ApprovalProcessException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |