Skip navigation links

Oracle Role Manager Java API Reference
10g (10.1.4)
E14613-01


oracle.iam.rm.server_api
Interface Server

All Superinterfaces:
javax.ejb.EJBObject, java.rmi.Remote

public interface Server
extends javax.ejb.EJBObject

The interface by way of which all clients interact with the server. Specifically, this interface is the one published by the Server EJB, allowing Java-based clients to interact with the server process.


Field Summary
static long NO_TRANSACTION
          A transaction ID indicating the lack of a business transaction (-1).

 

Method Summary
 IdentityToken authenticatePerson(java.lang.String ssoToken)
          Authenticates as a person with the provided the user ID.
 IdentityToken authenticatePersonFromCredentials(java.lang.String username, java.lang.String password)
          Authenticates as a person with the provided username and password.
 IdentityToken authenticateSystemUser(java.lang.String username, java.lang.String password)
          Authenticates as a system user with the provided the user ID and password.
 ServerBusinessTransaction begin(IdentityToken identityToken, java.lang.String definitionId, java.lang.String operationId, java.util.Map argumentSet)
          Begins a new business transaction.
 void cancelBusinessTransaction(IdentityToken identityToken, long transactionId)
          Cancels an existing business transaction.
 OperationVerificationResponse[] checkOperation(IdentityToken identityToken, OperationVerificationRequest[] operationVerificationRequests, boolean fullyValidate, long transactionId)
          Requests verification for the specified number of operation verification requests.
 boolean forwardBusinessTransaction(IdentityToken identityToken, long transactionId)
          Forwards an existing business transaction.
 java.util.List getAllHierarchyNodes(IdentityToken identityToken, EntityKey entityKey, long transactionId)
          Gets all ServerHierarchyNode objects relating to a particular object.
 ServerBusinessTransaction getBusinessTransaction(IdentityToken identityToken, long transactionId)
          Gets an existing business transaction by the provided identity and transaction identifiers.
 ServerConstraintViolation[] getConstraintViolations(IdentityToken identityToken, long transactionId)
          Gets any outstanding constraint violations from a business transaction.
 java.util.List getHierarchyChildren(IdentityToken identityToken, EntityKey entityKey, java.lang.String hierarchyType, java.util.Set entityTypes, long transactionId)
          Gets the child nodes of the specified entity in a specified hierarchy.
 ServerHierarchyNode getHierarchyNode(IdentityToken identityToken, EntityKey entityKey, java.lang.String hierarchyType, long transactionId)
          Gets a ServerHierarchyNode relating to a particular object in a particular hierarchy.
 java.util.List getHierarchyParents(IdentityToken identityToken, EntityKey entityKey, java.lang.String hierarchyType, long transactionId)
          Gets the parent nodes (recursive) of the specified entity in the particular hierarchy.
 ServerEntity getHierarchyRoot(IdentityToken identityToken, java.lang.String hierarchyType, long transactionId)
          Gets the ServerEntity that represents the root object of the hierarchy type.
 java.io.Serializable getIdentityTokenData(byte[] key)
          Gets updated identity token data.
 ServerEntity getMixin(IdentityToken identityToken, EntityKey entityKey, java.lang.String mixinType, long transactionId)
          Gets the mix-in entity of the specified entity.
 java.util.List getRelatedObjects(IdentityToken identityToken, EntityKey entityKey, java.lang.String relationshipPath, long transactionId)
          Gets all of the related objects based on the specified relationship path.
 ServerAuditSummary getServerAuditSummary(IdentityToken identityToken, EntityKey entityKey)
          Gets the ServerAuditSummary that represents the audit summary data for a particular entity.
 ServerChangeSummary getServerChangeSummary(IdentityToken identityToken, EntityKey entityKey, java.lang.String attributeName)
          Gets the ServerChangeSummary that represents the change summary data for a particular entity's attribute.
 ServerMetaData getServerMetaData(java.util.Locale locale)
          Gets localized ServerMetaData.
 boolean hasHierarchyChildren(IdentityToken identityToken, EntityKey entityKey, java.lang.String hierarchyType, java.util.Set entityTypes, long transactionId)
          Gets the child nodes of the specified entity in a specified hierarchy.
 java.util.List lookup(IdentityToken identityToken, java.lang.String definitionId, java.lang.String operationId, java.util.List keys, long transactionId)
          Invokes a lookup operation on the server.
 boolean quickValidate(IdentityToken identityToken, long transactionId)
          Runs lightweight validation tests.
 ServerPaginatedResultSet resolvePersonApprovers(IdentityToken identityToken, FilterCriterion personIdentificationFilter, FilterCriterion approverRoleIdentificationFilter, java.util.Set columnNames, long transactionId)
          Finds those persons that are approvers for the person identified using the specified approver role ID.
 ServerPaginatedResultSet search(IdentityToken identityToken, java.lang.String definitionId, java.lang.String operationId, CriterionSet criteria, ColumnSet columnSet, long transactionId)
          Invokes a search operation on the server.
 java.util.Map supplement(IdentityToken identityToken, long transactionId, java.lang.String definitionId, java.lang.String operationId, java.lang.String localName, java.util.Map argumentSet)
          Supplements a business transaction.

 

Methods inherited from interface javax.ejb.EJBObject
getEJBHome, getHandle, getPrimaryKey, isIdentical, remove

 

Field Detail

NO_TRANSACTION

static final long NO_TRANSACTION
A transaction ID indicating the lack of a business transaction (-1).
See Also:
Constant Field Values

Method Detail

authenticateSystemUser

IdentityToken authenticateSystemUser(java.lang.String username,
                                     java.lang.String password)
                                     throws javax.security.auth.login.LoginException,
                                            java.rmi.RemoteException
Authenticates as a system user with the provided the user ID and password.
Parameters:
username - username (userID) to authenticate with
password - password to authenticate with that should match the stored pasword associated with the provided username
Returns:
IdentityToken representing the authentication and that is used for client connection.
Throws:
javax.security.auth.login.LoginException - if the login fails for any reason
java.rmi.RemoteException - if there is a general problem with the server

authenticatePerson

IdentityToken authenticatePerson(java.lang.String ssoToken)
                                 throws javax.security.auth.login.LoginException,
                                        java.rmi.RemoteException
Authenticates as a person with the provided the user ID. This method is typically used when an SSO system is in place and the SSO system has already done the necessary authentication of the user involved.
Parameters:
ssoToken - username to authenticate with
Returns:
IdentityToken representing the authentication and that is used for client connection.
Throws:
javax.security.auth.login.LoginException - if the login fails for any reason
java.rmi.RemoteException - if there is a general problem with the server

authenticatePersonFromCredentials

IdentityToken authenticatePersonFromCredentials(java.lang.String username,
                                                java.lang.String password)
                                                throws javax.security.auth.login.LoginException,
                                                       java.rmi.RemoteException
Authenticates as a person with the provided username and password.
Parameters:
username - username (userID) to authenticate with
password - password to authenticate with that should match the stored pasword associated with the provided username
Returns:
IdentityToken that represents the authentication and that is used for client connection.
Throws:
javax.security.auth.login.LoginException - if the login fails for any reason
java.rmi.RemoteException - if there is a general problem with the server

getIdentityTokenData

java.io.Serializable getIdentityTokenData(byte[] key)
                                          throws java.rmi.RemoteException,
                                                 ServerException
Gets updated identity token data. This is used to keep internal IdentityToken data in sync with the server.
Parameters:
key - IdentityToken's key for which to get updated data
Returns:
Updated IdentityToken data
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server
See Also:
IdentityToken.getKey(), IdentityToken.update(Object)

getServerMetaData

ServerMetaData getServerMetaData(java.util.Locale locale)
                                 throws java.rmi.RemoteException,
                                        ServerException
Gets localized ServerMetaData.
Parameters:
locale - Locale for which to localize the metadata.
Returns:
localized ServerMetaData.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

lookup

java.util.List lookup(IdentityToken identityToken,
                      java.lang.String definitionId,
                      java.lang.String operationId,
                      java.util.List keys,
                      long transactionId)
                      throws java.rmi.RemoteException,
                             ServerException
Invokes a lookup operation on the server.
Parameters:
identityToken - IdentityToken that identifies the user
definitionId - ID of the definition from which the operation originates
operationId - ID of the operation to invoke
keys - List of identifiers of the object to look up (one per object)
transactionId - transaciton ID for the lookup
Returns:
List of ServerEntity objects that have been looked up by this operation
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

begin

ServerBusinessTransaction begin(IdentityToken identityToken,
                                java.lang.String definitionId,
                                java.lang.String operationId,
                                java.util.Map argumentSet)
                                throws java.rmi.RemoteException,
                                       ServerException
Begins a new business transaction.
Parameters:
identityToken - IdentityToken that identifies the user
definitionId - ID of the definition that the operation originates from
operationId - ID of the operation to invoke
argumentSet - Map of arguments to invoke the operation
Returns:
ServerBusinessTransaction representing the newly created business transaction.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getBusinessTransaction

ServerBusinessTransaction getBusinessTransaction(IdentityToken identityToken,
                                                 long transactionId)
                                                 throws java.rmi.RemoteException,
                                                        ServerException
Gets an existing business transaction by the provided identity and transaction identifiers.
Parameters:
identityToken - IdentityToken that identifies the user
transactionId - transaction ID of the transaction to retrieve
Returns:
ServerBusinessTransaction representing the business transaction
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

supplement

java.util.Map supplement(IdentityToken identityToken,
                         long transactionId,
                         java.lang.String definitionId,
                         java.lang.String operationId,
                         java.lang.String localName,
                         java.util.Map argumentSet)
                         throws java.rmi.RemoteException,
                                ServerException
Supplements a business transaction.
Parameters:
identityToken - IdentityToken that identifies the user
transactionId - ID identifying the transaction to supplement
definitionId - ID of the definition from which the operation originates
operationId - ID of the operation to invoke
localName - local ID of the operation if a transaction-bound supplemental operation
argumentSet - Map of arguments to invoke the operation
Returns:
return Map of output values from the operation
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

forwardBusinessTransaction

boolean forwardBusinessTransaction(IdentityToken identityToken,
                                   long transactionId)
                                   throws java.rmi.RemoteException,
                                          ServerException
Forwards an existing business transaction.
Parameters:
identityToken - IdentityToken that identifies the user
transactionId - transaction ID of the transaction to forward
Returns:
Boolean true if the forward operation immediately completed the business transaction, otherwise false.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

search

ServerPaginatedResultSet search(IdentityToken identityToken,
                                java.lang.String definitionId,
                                java.lang.String operationId,
                                CriterionSet criteria,
                                ColumnSet columnSet,
                                long transactionId)
                                throws java.rmi.RemoteException,
                                       ServerException
Invokes a search operation on the server.
Parameters:
identityToken - IdentityToken that identifies the user
definitionId - ID of the definition from which the operation originates
operationId - ID of the operation to invoke
criteria - search criteria with which to filter the results
columnSet - ColumnSet data to control the returned results (columns and sort orders)
transactionId - transaction ID within which to do the search
Returns:
ServerPaginatedResultSet containg the requested results, filtered by the user's permissions.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getConstraintViolations

ServerConstraintViolation[] getConstraintViolations(IdentityToken identityToken,
                                                    long transactionId)
                                                    throws java.rmi.RemoteException,
                                                           ServerException
Gets any outstanding constraint violations from a business transaction. As this data may be calculated asynchronously, it may be out of date at any point in time.
Parameters:
identityToken - IdentityToken that identifies the user
transactionId - transaction ID within which to look for constraint violations
Returns:
Array of server constraint violations or an empty array if there are none.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

cancelBusinessTransaction

void cancelBusinessTransaction(IdentityToken identityToken,
                               long transactionId)
                               throws java.rmi.RemoteException,
                                      ServerException
Cancels an existing business transaction.
Parameters:
identityToken - IdentityToken that identifies the user
transactionId - transaction ID of the transaction to cancel
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getHierarchyNode

ServerHierarchyNode getHierarchyNode(IdentityToken identityToken,
                                     EntityKey entityKey,
                                     java.lang.String hierarchyType,
                                     long transactionId)
                                     throws java.rmi.RemoteException,
                                            ServerException
Gets a ServerHierarchyNode relating to a particular object in a particular hierarchy.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity on which to look for a ServerHierarchyNode
hierarchyType - type of hierarchy
transactionId - transaction ID within which to do the lookup
Returns:
ServerHierarchyNode for the entity representing the hiearchy node or null if it does not have one
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getAllHierarchyNodes

java.util.List getAllHierarchyNodes(IdentityToken identityToken,
                                    EntityKey entityKey,
                                    long transactionId)
                                    throws java.rmi.RemoteException,
                                           ServerException
Gets all ServerHierarchyNode objects relating to a particular object.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity on which to look for ServerHierarchyNode objects
transactionId - transaction ID within which to do the lookup
Returns:
List of ServerHierarchyNode objects for the entity
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

hasHierarchyChildren

boolean hasHierarchyChildren(IdentityToken identityToken,
                             EntityKey entityKey,
                             java.lang.String hierarchyType,
                             java.util.Set entityTypes,
                             long transactionId)
                             throws java.rmi.RemoteException,
                                    ServerException
Gets the child nodes of the specified entity in a specified hierarchy.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity of which to get children
hierarchyType - type of hierarchy
entityTypes - Set of object types to filter the children by or empty if no filtering is required
transactionId - transaction ID within which to do the search
Returns:
boolean true if node has children of the specified entity, otherwise false.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getHierarchyChildren

java.util.List getHierarchyChildren(IdentityToken identityToken,
                                    EntityKey entityKey,
                                    java.lang.String hierarchyType,
                                    java.util.Set entityTypes,
                                    long transactionId)
                                    throws java.rmi.RemoteException,
                                           ServerException
Gets the child nodes of the specified entity in a specified hierarchy.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity of which to get children
hierarchyType - type of hierarchy
entityTypes - Set of object types to filter the children by or empty if no filtering is required
transactionId - transaction ID within which to do the search
Returns:
List of ServerEntity objects that are the hierarchy children of the specified entity
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getHierarchyParents

java.util.List getHierarchyParents(IdentityToken identityToken,
                                   EntityKey entityKey,
                                   java.lang.String hierarchyType,
                                   long transactionId)
                                   throws java.rmi.RemoteException,
                                          ServerException
Gets the parent nodes (recursive) of the specified entity in the particular hierarchy.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity of which to get parents
hierarchyType - type of hierarchy
transactionId - transaction ID within which to do the search
Returns:
List of ServerEntity objects that are the hierarchy parents of the specified entity
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getMixin

ServerEntity getMixin(IdentityToken identityToken,
                      EntityKey entityKey,
                      java.lang.String mixinType,
                      long transactionId)
                      throws java.rmi.RemoteException,
                             ServerException
Gets the mix-in entity of the specified entity.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity of which to get the mix-in
mixinType - type of mix-in
transactionId - transaction ID within which to do the lookup
Returns:
ServerEntity representing the entity object's mix-in or null if it does not have the specified mix-in.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getHierarchyRoot

ServerEntity getHierarchyRoot(IdentityToken identityToken,
                              java.lang.String hierarchyType,
                              long transactionId)
                              throws java.rmi.RemoteException,
                                     ServerException
Gets the ServerEntity that represents the root object of the hierarchy type.
Parameters:
identityToken - IdentityToken that identifies the user
hierarchyType - type of hierarchy
transactionId - transaction ID within which to do the lookup
Returns:
ServerEntity that represents the root object of the hierarchy type.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

resolvePersonApprovers

ServerPaginatedResultSet resolvePersonApprovers(IdentityToken identityToken,
                                                FilterCriterion personIdentificationFilter,
                                                FilterCriterion approverRoleIdentificationFilter,
                                                java.util.Set columnNames,
                                                long transactionId)
                                                throws java.rmi.RemoteException,
                                                       ServerException
Finds those persons that are approvers for the person identified using the specified approver role ID.
Parameters:
identityToken - IdentityToken that identifies the user
personIdentificationFilter - filter to use to identify the specific subject of the approval
approverRoleIdentificationFilter - filter to use to identify the specific approval role
columnNames - Set of column names of values to filter
transactionId - transaction ID within which to do the lookup
Returns:
ServerPaginatedResultSet of persons who are approvers with the values of the specified columns, or null if no approvers exist.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if a failure occurs while resolving the approver role.

checkOperation

OperationVerificationResponse[] checkOperation(IdentityToken identityToken,
                                               OperationVerificationRequest[] operationVerificationRequests,
                                               boolean fullyValidate,
                                               long transactionId)
                                               throws java.rmi.RemoteException,
                                                      ServerException
Requests verification for the specified number of operation verification requests.
Parameters:
identityToken - IdentityToken that identifies the user
operationVerificationRequests - set of operation verification requests that require the server to check.
fullyValidate - a flag to indicate whether to do a full validation or just authorization checks
transactionId - ID of the ongoing business transaction.
Returns:
Array of operation verification responses from the server whose indexes align with the requests passed in.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getServerAuditSummary

ServerAuditSummary getServerAuditSummary(IdentityToken identityToken,
                                         EntityKey entityKey)
                                         throws java.rmi.RemoteException,
                                                ServerException
Gets the ServerAuditSummary that represents the audit summary data for a particular entity.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - entity identifier with which to locate the audit summary data
Returns:
ServerAuditSummary that represents the audit summary data for a particular entity.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getRelatedObjects

java.util.List getRelatedObjects(IdentityToken identityToken,
                                 EntityKey entityKey,
                                 java.lang.String relationshipPath,
                                 long transactionId)
                                 throws java.rmi.RemoteException,
                                        ServerException
Gets all of the related objects based on the specified relationship path.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - key for the entity of which to get the mix-in
relationshipPath - relationshiup path to traverse
transactionId - ID of the transaction within which to do the lookup
Returns:
List of ServerEntitys representing the related objects.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

quickValidate

boolean quickValidate(IdentityToken identityToken,
                      long transactionId)
                      throws java.rmi.RemoteException,
                             ServerException
Runs lightweight validation tests. This should be used before forwarding the business transaction in order to minimize the possibility of the finalization processes failing when the user could have resolved the issue. <p/> If the validation fails, the issues should be available via the getConstraintViolations(IdentityToken,long) method.
Parameters:
identityToken - IdentityToken that identifies the user
transactionId - ID of the transaction to validate
Returns:
Boolean true if the validation succeeds, otherwise false.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

getServerChangeSummary

ServerChangeSummary getServerChangeSummary(IdentityToken identityToken,
                                           EntityKey entityKey,
                                           java.lang.String attributeName)
                                           throws java.rmi.RemoteException,
                                                  ServerException
Gets the ServerChangeSummary that represents the change summary data for a particular entity's attribute.
Parameters:
identityToken - IdentityToken that identifies the user
entityKey - entity identifier with which to locate the change summary data
attributeName - attribute name for the change summary data
Returns:
ServerChangeSummary that represents the change summary data for a particular entity's attribute.
Throws:
java.rmi.RemoteException - if there is a general problem with the remote server
ServerException - if there is a logical problem on the server

Skip navigation links

Oracle Role Manager Java API Reference
10g (10.1.4)
E14613-01


Copyright © 2008, 2009 Oracle. All Rights Reserved.