Interface IUserMetadataService
The UserMetadataService provides methods for querying and updating workflow metadata specific to users or groups. It is used for dealing with workflow assignment rules, user views, user preferences and vacation information.
An instance of IUserMetadataService can be created by calling
IWorkflowServiceClient.getUserMetadataService().
An instance of IWorkflowServiceClient
can be created using the WorkflowServiceClientFactory.
All the UserMetadataService methods take IWorkflowContext as their first parameter.
The IWorkflowContext object allows the UserMetdataService to validate that the method
is being called by an authenticated user, and that the user has the necessary authority
to perform the action being requested. The IWorkflowContext object also contains information
on the user's timezone and locale. An IWorkflowContext object can be obtained by calling
ITaskQueryService.authenticate(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
or ITaskQueryService.createContext(javax.servlet.http.HttpServletRequest).
For most methods, users can only query and update their own metadata - they are not permitted to access metadata belonging to other users. In the case of metadata for groups (specifically for workflow rules), only users who are registered as the owner of that group can access the metadata. However, users with administrator privileges can usually access any user or group's metadata.
Many of the parameters and return types of the methods are JAXB model objects from the packages
oracle.bpel.services.workflow.user.model,
oracle.bpel.services.workflow.query.model, and oracle.bpel.services.workflow.common.model.
These objects do not have public constructors. To create
new instances of these objects you should use the appropriate methods on
oracle.bpel.services.workflow.user.model.ObjectFactory,
oracle.bpel.services.workflow.query.model.ObjectFactory
or oracle.bpel.services.workflow.common.model.ObjectFactory
Many of the methods in this API use Participant objects to specify a
user or group. A Participant object contains parameters that specify
the user or group name, the realm (identity context) of the user, and whether
the Participant is a user or group.
- Since:
- 10.1.3.1
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enumEnumeration specifying the different types of presentation that can be defined.static enumEnumeration specifying the different grant types that can be used when granting another user access to a UserTaskView.static enumEnumeration specifying the different types of view that can be defined. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringRule action: Delegate task to specified user or groupstatic final StringRule action: Dynamically reasign task using dynamic assignment funtion to select userstatic final StringRule action: No operationstatic final StringRule action: Reassign task to specified user or groupstatic final StringRule action: Set task outcome to specified valuestatic final StringRule condition operator: Date occured afterstatic final StringRule condition operator: Date occured beforestatic final StringRule condition operator: String begins with valuestatic final StringRule condition operator: String contains valuestatic final StringRule condition operator: String ends with valuestatic final StringRule condition operator: equal to "=="static final StringRule condition operator: greater than ">"static final StringRule condition operator: greater than or equal to ">="static final StringRule condition operator: String values in liststatic final StringRule condition operator: less than "<"static final StringRule condition operator: less than or equal to "<="static final StringRule condition operator: not equal to "!="static final StringRule condition operator: String does not begin with valuestatic final StringRule condition operator: String does not contain valuestatic final StringRule condition operator: String does not end with valuestatic final String[]Array of valid operators for rule conditions on Date valuesstatic final String[]Array of valid operators for rule conditions on number valuesstatic final String[]Array of valid operators for rule conditions on String values -
Method Summary
Modifier and TypeMethodDescriptioncreatePresentation(IWorkflowContext ctx, PresentationType presentation) FOR FUTURE USE ONLY.createRule(IWorkflowContext ctx, RuleDetail rule) Creates a new rule from aRuleDetailobject.createUserApplicationData(IWorkflowContext ctx, UserApplicationDataType applicationData) FOR FUTURE USE ONLY.createUserTaskView(IWorkflowContext ctx, UserViewDetail view) Creates a new view from the specifiedUserViewDetailobject.voiddecreaseRulePriority(IWorkflowContext ctx, String ruleId) Decreases the priority of the specified rule by 1.voiddeleteAnyUserTaskView(IWorkflowContext ctx, String viewId) Deletes an existing view identifies by its viewId.voiddeletePresentation(IWorkflowContext ctx, String presentationId) FOR FUTURE USE ONLY.voiddeleteRule(IWorkflowContext ctx, String ruleId) Deletes an existing workflow rule, based on its ruleId.voiddeleteUserApplicationData(IWorkflowContext ctx, String applicationDataId) FOR FUTURE USE ONLY.voiddeleteUserTaskView(IWorkflowContext ctx, String viewId) Deletes an existing view identifies by its viewId.getGrantedTaskViewList(IWorkflowContext ctx, Participant user) Gets the list of task views that have been granted to the specified user by other users.getPresentation(IWorkflowContext ctx, String presentationId) FOR FUTURE USE ONLY.getPublicPreferences(IWorkflowContext ctx, Participant user) Gets 'public' preferences for specified user.getRuleDetail(IWorkflowContext ctx, String ruleId) Returns the full details for a particular rule, identified by its ruleId.getRuleList(IWorkflowContext ctx, Participant user) Returns a list of rules for the specified user or group, as aRuleListobject.getRuleSetInfo(IWorkflowContext ctx, Participant user) Deprecated.Rules persistence is no longer configurable, and rules are now persisted internally in the workflow database schema, so this method is now of limited use.getStandardTaskViewDetails(IWorkflowContext ctx, String viewId) Gets the full details for a particular standard view, identified by its viewId.Gets the list of standard task views which ship with the product, and are available to all users.getUserApplicationData(IWorkflowContext ctx, String applicationDataId) FOR FUTURE USE ONLY.getUserInboxView(IWorkflowContext ctx, Participant user) Deprecated.getUserPreferences(IWorkflowContext ctx, Participant user) Gets the user preferences for the specified user as aUserPreferencesobject.getUserTaskViewDetails(IWorkflowContext ctx, String viewId) Gets the full details for a particular user view, identified by its viewId.getUserTaskViewList(IWorkflowContext ctx, Participant user) Gets the list of task views belonging to the specified user.getUserViewList(IWorkflowContext ctx, Participant user) Gets the list of task views belonging to the specified user.getVacationInfo(IWorkflowContext ctx, Participant user) Gets the current vacation information for the specified user in the form of aVacationInfoobject.voidincreaseRulePriority(IWorkflowContext ctx, String ruleId) Increases the priority of the specified rule by 1.listGrantedPresentations(IWorkflowContext ctx, IUserMetadataService.PresentationDataType presentationType, PrincipleRefType grantee, boolean directOnly) FOR FUTURE USE ONLY.listGrantedUserApplicationData(IWorkflowContext ctx, String dataType, PrincipleRefType grantee, boolean directOnly) FOR FUTURE USE ONLY.listGrantedUserViews(IWorkflowContext ctx, IUserMetadataService.UserTaskViewType viewType, PrincipleRefType grantee, IUserMetadataService.UserTaskViewGrantType grantType, boolean directOnly) Returns a list of all views of the specified type (task views, process views, standard task views, standard process views) and grant type (data or definition) granted to the specified grantee.listPresentations(IWorkflowContext ctx, IUserMetadataService.PresentationDataType presentationType, String owner) FOR FUTURE USE ONLY.listUserApplicationData(IWorkflowContext ctx, String dataType, String owner) FOR FUTURE USE ONLY.listUserViews(IWorkflowContext ctx, IUserMetadataService.UserTaskViewType viewType, String ownerUser) Returns a list of all views of the specified view type (task views, process views, standard task views, standard process views) and grant type (data or definition) owned by the specified user.listViewsUsingPresentation(IWorkflowContext ctx, String presentationId) Returns a list ofViewSummaryTypeobjects that describe views which are using the specified presentation.setPublicPreferences(IWorkflowContext ctx, UserPreferences prefs) Sets 'public' preferences for specified user.setUserPreferences(IWorkflowContext ctx, UserPreferences prefs) Sets the user preferences for the specified from aUserPreferencesobject.setVacationInfo(IWorkflowContext ctx, VacationInfo vacationInfo) Updates the vacation information for a user using the suppliedVacationInfoobject.updateGrantedTaskView(IWorkflowContext ctx, ViewGrant grant) Allows a grantee to update certain information on a view that has been granted to them.updatePresentation(IWorkflowContext ctx, PresentationType presentation) FOR FUTURE USE ONLY.updateRule(IWorkflowContext ctx, RuleDetail rule) Updates an existing workflow rule to the definition specified in aRuleDetailobject.updateUserApplicationData(IWorkflowContext ctx, UserApplicationDataType applicationData) FOR FUTURE USE ONLY.updateUserTaskView(IWorkflowContext ctx, UserViewDetail view) Updates an existing view to the defintion specified in aUserViewDetailobject.
-
Field Details
-
RULE_ACTION_NOOP
Rule action: No operation- See Also:
-
RULE_ACTION_REASSIGN
Rule action: Reassign task to specified user or group- See Also:
-
RULE_ACTION_DYN_REASSIGN
Rule action: Dynamically reasign task using dynamic assignment funtion to select user- See Also:
-
RULE_ACTION_DELEGATE
Rule action: Delegate task to specified user or group- See Also:
-
RULE_ACTION_SET_OUTCOME
Rule action: Set task outcome to specified value- See Also:
-
RULE_OP_LTE
Rule condition operator: less than or equal to "<="- See Also:
-
RULE_OP_GTE
Rule condition operator: greater than or equal to ">="- See Also:
-
RULE_OP_EQ
Rule condition operator: equal to "=="- See Also:
-
RULE_OP_NEQ
Rule condition operator: not equal to "!="- See Also:
-
RULE_OP_LT
Rule condition operator: less than "<"- See Also:
-
RULE_OP_GT
Rule condition operator: greater than ">"- See Also:
-
RULE_OP_CONTAINS
Rule condition operator: String contains value- See Also:
-
RULE_OP_NOT_CONTAINS
Rule condition operator: String does not contain value- See Also:
-
RULE_OP_BEGINS
Rule condition operator: String begins with value- See Also:
-
RULE_OP_NOT_BEGINS
Rule condition operator: String does not begin with value- See Also:
-
RULE_OP_ENDS
Rule condition operator: String ends with value- See Also:
-
RULE_OP_NOT_ENDS
Rule condition operator: String does not end with value- See Also:
-
RULE_OP_IN
Rule condition operator: String values in list- See Also:
-
RULE_OP_BEFORE
Rule condition operator: Date occured before- See Also:
-
RULE_OP_AFTER
Rule condition operator: Date occured after- See Also:
-
VALID_STRING_RULE_OPS
Array of valid operators for rule conditions on String values -
VALID_DATE_RULE_OPS
Array of valid operators for rule conditions on Date values -
VALID_NUMBER_RULE_OPS
Array of valid operators for rule conditions on number values
-
-
Method Details
-
getVacationInfo
Gets the current vacation information for the specified user in the form of aVacationInfoobject. Vacation information specifies two dates between which the user is unavailable for assignment of tasks. Dynamic Assignment functions will not assign tasks to users who are currently on vacation. If the user has defined any rules that are flagged as being vacation rules, then the start and end dates for the vacation rules will match the vacation start and end dates.If no vacation information has been set for the user, an empty VactionInfo object is returned.
VacationInfo has the following properties:
- isOnVacation
booleantrueif current date is between vacation start and end date, otherwisefalse.- user
PrincipleRefTypeThe user this vacation information is for.- startDate
Calendarstart date for vacation period. A null startDate and null endDate indicates that there are no vacation dates currently set for the user.- endDate
Calendarend date for vacation period. A null startDate and null endDate indicates that there are no vacation dates currently set for the user.- Parameters:
ctx- authenticatedIWorkflowContextfor useruser-Participantuser to query information for- Returns:
- empty
VacationInfoobject if no vacation information has been set for user, otherwise aVacationInfoobject populated with vacation information. - Throws:
WorkflowException- if non-admin user attempts to query information for another user, or some other error condition occurs
- isOnVacation
-
setVacationInfo
VacationInfo setVacationInfo(IWorkflowContext ctx, VacationInfo vacationInfo) throws WorkflowException Updates the vacation information for a user using the suppliedVacationInfoobject. Vacation information specifies two dates between which the user is unavailable for assignment of tasks. Dynamic Assignment functions will not assign tasks to users who are currently on vacation. In addition the start and end dates of any rules for the user which are marked as being 'vacation rules' will automatically be updated so that the rule start and end dates match the vacation startand end dates.The method validates that both a start and end date have been specified, and that the end date occurs after the start date.
VacationInfo has the following properties:
- isOnVacation
booleanNot used on update, is set by API when querying vacation info.- user
PrincipleRefTypeThe user this vacation information is for.- startDate
Calendarstart date for vacation period. Setting a null startDate and null endDate will clear existing vacation dates for the user.- endDate
Calendarstart date for vacation period. Setting a null startDate and null endDate will clear existing vacation dates for the user.- Parameters:
ctx- authenticatedIWorkflowContextfor uservacationInfo-VacationInfothe vacation information to set- Returns:
- the updated
VacationInfovacation information - Throws:
WorkflowException- if non-admin user attempts to update information for another user, or some other error condition occurs
- isOnVacation
-
getRuleSetInfo
Deprecated.Rules persistence is no longer configurable, and rules are now persisted internally in the workflow database schema, so this method is now of limited use.Returns information relating to the Oracle Business Rules rule set being used to store the rules for a particular user or group, in the form of aRulesetInfoobject. This is useful if a client wants to make use of the rules SDK directly for manipulating rules, rather than using the user metadata service. A ruleset is created for each user or group that has workflow assignment rules defined.- Parameters:
ctx- authenticatedIWorkflowContextfor user.user-Participantuser or group to get ruleset information for.- Returns:
RulesetInfoobject containing the ruleset information- Throws:
WorkflowException
-
getRuleList
Returns a list of rules for the specified user or group, as aRuleListobject. TheRuleListobject contains aListofRuleInfoTypeobjects. Each RuleInfoType object provides summary information about a rule. In order to retreive the full details for a particular rule, the methodgetRuleDetail(IWorkflowContext, String)should be used.The RuleInfoType object has the following properties:
- ruleType
String"USER" or "GROUP". Maintained by API.- ruleId
Stringunique identifier for rule. Populated by API on rule creation. ruleId is derived from rule name, and will change if the rule name is changed.- ruleName
Stringthe name of rule.- priority
intrule priority. Larger numerical value indicates higher priority. API maintains rule priorities to ensure that there is a continuous numerical sequence.- owner
PrincipleRefTypeThe owner (user or group) of this rule.- A rule may optionally be restricted to only be triggered for tasks of a cetain type by setting one of the following properties:
- workflowId
Stringrestrict rule to tasks with a specific TaskDefintionId. Only tasks with for the specified deployment (version and partition) will be targeted. If you want the rule to apply to all deployments of a task definition, use taskNamespace instead. - taskNamespace
Stringrestrict rule to tasks with a particular taskNamespace. All deployments of a particular task definition share the same namespace, so all versions and deployment partitions of the task definition will be targeted. If you want the rule to be targeted to a specific deployment version, use workflowId instead. - taskCategory
Stringrestrict rules to tasks having a particular category. Rule will apply to all tasks having the specified category - this category may span different task types, and will span all deployed versions and partitions. If you want to target a rule to a specific task definition, use workflowId or taskNamespace instead.
- taskDefinitionDisplayName
StringIf workflowId or taskNamespace is set, the display name for the targeted task definition, otherwise null. Maintained by API.- taskCategoryDisplayName
StringIf taskCategory is set, the display name for the targeted task category, otherwise null. Maintained by API.- actionType
Stringthe type of action performed by the rule. Will be one of:RULE_ACTION_REASSIGN,RULE_ACTION_DYN_REASSIGN,RULE_ACTION_DELEGATE,RULE_ACTION_SET_OUTCOME,RULE_ACTION_NOOP. This field is maintained by the API, and will be ignored for create/update operations. Clients should set aRuleActionTypeobject inRuleDetailType.setAction(oracle.bpel.services.workflow.user.model.RuleActionType)to set the rule action on create/update.- actionTarget
Stringthe target for the selected rule action. An assignee, delegate, assignment pattern or outcome. Will be null for a no-op action. Maintained by the API.- startDate
Calendara rule may optioanlly be restricted to only be triggered for tasks assigned after a certain date.- endDate
Calendara rule may optioanlly be restricted to only be triggered for tasks assigned before a certain date.- isVacationRule
booleanif a rule is marked as a vacation rule, then the UserMetdataService will automatically synchonize the rule's start and end dates with the vacation start and end date's for the view's owner.- description
Stringan optional description of the rule.- createdDate
Calendarthe date on which the rule was created. Populated automatically by the API on rule creation.- updatedDate
Calendarthe date on which the rule was last updated. Populated automatically by the API on rule creation and update.- Parameters:
ctx- authenticatedIWorkflowContextfor useruser-Participantuser or group to get RuleList for.- Returns:
RuleListobject containing list of summary information for each rule- Throws:
WorkflowException- if non-admin user attempts to retrieve information for another user, or for a group that they to not own, or some other error condition occurs
- ruleType
-
getRuleDetail
Returns the full details for a particular rule, identified by its ruleId. Rule details are returned in the form of aRuleDetailobject. SeecreateRule(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.RuleDetail)for a description of the RuleDetail object.- Parameters:
ctx- authenticatedIWorkflowContextfor userruleId-Stringa unique identitier for the rule- Returns:
- full details for rule, as a
RuleDetailobject. - Throws:
WorkflowException- if non-admin user attempts to retrieve information for a rule belonging to another user or a group that they to not own or have not been granted, or some other error condition occurs.
-
createRule
Creates a new rule from a
RuleDetailobject. A user may create rules for themselves, and for any groups that they own. Rules are evaluated when a task is assigned to that user or group - if the task meets the conditions specified in a rule, the rule is triggered, and will attempt to perform an action on the task, as specified in the RuleDetail.Rules are evaluated in order of their priority from highest (largest numerical value) to lowest. Only the first rule whose conditions are met will be triggered. Rules of lower priority will be ignored, even if the task also meets their conditions.
Rules will only be evaluated if the current date is between the rule start and end date. If no rule start and end date is specfied, the rule will always be evaluated.
If the IsVacationRule flag is set for a rule, then its start and end dates will be automatically synchronized with the user's vacation start and end dates (as configured via the setVacationInfo method in this interface). If no vacation period is currently defined for the user, then the vacation rule's start and end date's will automatically be set in the past, to ensure the rule does not get triggered
.RuleDetailhas the following parameters:- generalInfo
RuleInfoTypedescribes general information about the rule. This is the same information that is returned by thegetRuleList(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.common.model.Participant)method.RuleInfoTypehas the following parameters:- ruleType
String"USER" or "GROUP". Maintained by API. - ruleId
Stringunique identifier for rule. Populated by API on rule creation. ruleId is derived from rule name, and will change if the rule name is changed. - ruleName
Stringthe name of rule. - priority
intrule priority. Larger numerical value indicates higher priority. API maintains rule priorities to ensure that there is a continuous numerical sequence. - owner
PrincipleRefTypeThe owner (user or group) of this rule. - A rule may optionally be restricted to only be triggered for tasks of a
cetain type by setting one of the following properties:
- workflowId
Stringrestrict rule to tasks with a specific TaskDefintionId. Only tasks for the specified deployment (version and partition) will be targeted. If you want the rule to apply to all deployments of a task definition, use taskNamespace instead. - taskNamespace
Stringrestrict rule to tasks with a particular taskNamespace. All deployments of a particular task definition share the same namespace, so all versions and deployment partitions of the task definition will be targeted. If you want the rule to be targeted to a specific deployment version, use workflowId instead. - taskCategory
Stringrestrict rules to tasks having a particular category. Rule will apply to all tasks having the specified category - this category may span different task types, and will span all deployed versions and partitions. If you want to target a rule to a specific task definition, use workflowId or taskNamespace instead.
- workflowId
- taskDefinitionDisplayName
StringIf workflowId or taskNamespace is set, the display name for the targeted task definition, otherwise null. Maintained by API. - taskCategoryDisplayName
StringIf taskCategory is set, the display name for the targeted task category, otherwise null. Maintained by API. - actionType
Stringthe type of action performed by the rule. Will be one of:RULE_ACTION_REASSIGN,RULE_ACTION_DYN_REASSIGN,RULE_ACTION_DELEGATE,RULE_ACTION_SET_OUTCOME,RULE_ACTION_NOOP. This field is maintained by the API, and will be ignored for create/update operations. Clients should set aRuleActionTypeobject inRuleDetailType.setAction(oracle.bpel.services.workflow.user.model.RuleActionType)to set the rule action on create or update. - actionTarget
Stringthe target for the selected rule action. An assignee, delegate, assignment pattern or outcome. Will be null for a no-op action. Maintained by the API. - startDate
Calendara rule may optioanlly be restricted to only be triggered for tasks assigned after a certain date. - endDate
Calendara rule may optioanlly be restricted to only be triggered for tasks assigned before a certain date. - isVacationRule
booleanif a rule is marked as a vacation rule, then the UserMetdataService will automatically synchonize the rule's start and end dates with the vacation start and end date's for the view's owner. - description
Stringan optional description of the rule. - createdDate
Calendarthe date on which the rule was created. Populated automatically by the API on rule creation. - updatedDate
Calendarthe date on which the rule was last updated. Populated automatically by the API on rule creation and update.
- taskTests
RuleTestListTypeA rule may optionally specify a number of test conditions that must be satisified for the rule to be triggered. The RuleTestListType object should be populated withRuleTestTypeobjects. Each RuleTestType defines a test against a single attribute of aTask, and can be added to the RuleTestListType by calling the method RuleTestListType.getTest().add(RuleTestType test). The properties ofRuleTestTypeare:- field
Stringused to specify whichTaskattribute the test is for, using dot-separators to specify the path to attributes. For example, "title", "systemAttributes.createdDate", or "systemMessageAttributes.textAttribute1". The attribute paths for aTaskcan be determined using the methodsITaskMetadataService.getTaskAttributes(oracle.bpel.services.workflow.verification.IWorkflowContext)orITaskMetadataService.getTaskAttributesForTaskDefinition(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String). - operation
Stringused to specify the operator for the test. The operator should be one of the RULE_OP constants specified in this interface. Note that certain operators are only valid for certain attribute types. The String array constantsVALID_DATE_RULE_OPS,VALID_NUMBER_RULE_OPSandVALID_STRING_RULE_OPSlist which operators are valid for different attribute types. - value
Stringused to specify the value for the test for all attribute types other than dates. - dateValue
Calendarused to specify the value for the test for date attribute types.
- payloadTests Not used. Task payload tests are not currently supported. To create rules pased on a payload value, the
IRuntimeConfigServicecan be used to create a PayloadMapping between the payload attribute and a Task flexfield. It is then possible to specify taskTests against the mapped flexfield.- action
RuleActionTypeSpecies the action to be taken if the rule is triggered. An action must be set on the rule. The properties of RuleActionType are:- actionType
StringThe actionType must be set to one of the following values:- IUserMetadataService.RULE_ACTION_NOOP Rule takes no action. No other fields on the RuleActionType object need to be set.
- IUserMetadataService.RULE_ACTION_REASSIGN Rule attempts to
reassign the task to another user or group.
The reassign field of the RuleActionType object must be set with a
RuleAssignmentTypeobject. Only the assignee field of the RuleAssignmentType object should be set. - IUserMetadataService.RULE_ACTION_DYN_REASSIGN Rule attempts to reassign
the task to a user selected from the specified group using the specified dynamic
assignment function. The reassign field of the RuleActionType object must
be set with a
RuleAssignmentTypeobject. The assignee field of the RuleAssignmentType object should be set to a group, and the dynamicAssignmentFunction field should be set to the name of the Dynamic Assignment Function to use. - IUserMetadataService.RULE_ACTION_DELEGATE Rule attempts to delegate
the task to the specified user or group. The delegate field of the RuleActionType
object must be set with a
RuleAssignmentTypeobject. The assignee field of the RuleAssignmentType object should be set to the user or group being delegated to. - IUserMetadataService.RULE_ACTION_SET_OUTCOME Rule attempts to set the task outcome to the specified value. The setOutcome field of the RuleActionType should be populated with the desired outcome.
- noOperation Not used.
- reassign
RuleAssignmentTypeMust be set for REASSIGN and DYN_REASSIGN rule actions. The properties of RuleAssignmentType are:- assignee
PrincipleRefTypeThe target assignee. - dynamicAssignmentFunction
StringFor DYN_REASSIGN rule action, this must be set to the Dynamic Assignment Function to be used to select a user from the group specified in the assignee property. A list of suitable Dynamic Assignment Functions can be determined from the methodIRuntimeConfigService.getUserDynamicAssignmentFunctions(oracle.bpel.services.workflow.verification.IWorkflowContext).
- assignee
- delegate
RuleAssignmentTypeMust be set for DELEGATE rule action. The properties of RuleAssignmentType are:- assignee
PrincipleRefTypeThe user or group to delegate the task to. - dynamicAssignmentFunction
StringNot used for DELEGATE rule action.
- assignee
- setOutcome
StringMust be set for SET_OUTCOME action. The outcome that the Task will be set to.
- Parameters:
ctx- authenticatedIWorkflowContextfor user.rule-RuleDetailobject defining the rule.- Returns:
- the created
RuleDetail. The ruleId will be populated on the returned object. - Throws:
WorkflowException- if non-admin user attempts to create a rule for another user or for a group that they to not own, or some other error condition occurs.
- generalInfo
-
updateRule
Updates an existing workflow rule to the definition specified in a
RuleDetailobject. SeecreateRule(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.RuleDetail)for a description of how to use theRuleDetailobject.Note that the name of a rule is used to generate its ruleId. Updating a rule name will result in its ruleId changing. The RuleDetail object returned by this method will contain the updated ruleId.
- Parameters:
ctx- authenticatedIWorkflowContextfor user.rule-RuleDetailobject defining the rule.- Returns:
- the updated
RuleDetail. The correct ruleId will be populated on the returned object. - Throws:
WorkflowException- if non-admin user attempts to update information for a rule belonging to another user or a group that they to not own, or some other error condition occurs.
-
deleteRule
Deletes an existing workflow rule, based on its ruleId.- Parameters:
ctx- authenticatedIWorkflowContextfor user.ruleId-Stringunique identifier for rule.- Throws:
WorkflowException- if non-admin user attempts to delete a a rule belonging to another user or a group that they to not own, or some other error condition occurs.
-
increaseRulePriority
Increases the priority of the specified rule by 1. Rules are evaluated in order of their priority from highest (largest numerical value) to lowest. Only the first rule whose conditions are met will be triggered. Rules of lower priority will be ignored, even if the task also meets their conditions.- Parameters:
ctx- authenticatedIWorkflowContextfor user.ruleId-Stringunique identifier for rule.- Throws:
WorkflowException- if non-admin user attempts to update information for a rule belonging to another user or a group that they to not own, or some other error condition occurs.
-
decreaseRulePriority
Decreases the priority of the specified rule by 1. Rules are evaluated in order of their priority from highest (largest numerical value) to lowest. Only the first rule whose conditions are met will be triggered. Rules of lower priority will be ignored, even if the task also meets their conditions.- Parameters:
ctx- authenticatedIWorkflowContextfor user.ruleId-Stringunique identifier for rule.- Throws:
WorkflowException- if non-admin user attempts to update information for a rule belonging to another user or a group that they to not own, or some other error condition occurs.
-
listUserViews
List<ViewSummaryType> listUserViews(IWorkflowContext ctx, IUserMetadataService.UserTaskViewType viewType, String ownerUser) throws WorkflowException Returns a list of all views of the specified view type (task views, process views, standard task views, standard process views) and grant type (data or definition) owned by the specified user.The IdentityService realm for the owner is assumed to be the same as the context user. Only an admin can call this method with an owner different to the context user.
If no owner user is specified, then the views owned by the context user are returned.
Note that if the view type specifies standard views (STANARD_VIEW or STDPROCESS_VIEW), then all standard views of that type are returned, regardless of owner, as standard views are accessible by all users. When a standard view type is specified, then setting the owner field has no affect on the list of views returned.
If no view type is specified, then all views owned by the specified owner, are returned regardless of type. Note that the list will not include standard views, unless the standard view happens to be owned by that user
The method returns a List of
ViewSummaryTypeobjects, each of which provides summary information about a view. In order to retreive the full details for a particular rule, the methodgetUserTaskViewDetails(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String)should be should be used.ViewSummaryType has the following properties:
- id
Stringunique identifier for view, automatically populated by API on view creation.- name
Stringthe name of the view. If this is a standard view, and the WorkflowLabels.proprties resource bundle contains an entry for this standard view name, then the label from the apppropriate Locale for the context user will be used instead.- owner
PrincipleRefTypeThe owner of the view.- hidden
booleanvalue. Can be used by UI to determine how to display the view. In the sample worklist application, views marked as "hidden" are not displayed in the list of views in the user's task listing page.- viewType String identifying the type of view, will be set to the toString() value of one of the members of the enumeration
IUserMetadataService.UserTaskViewType.- description
For regular process and task views, the list of views owned by the user is returned. For standard views, the complete list of standard views of the specified type is returned.Stringoptional description of view.- Parameters:
ctx- authenticatedIWorkflowContextfor user.viewType- a value from the enumIUserMetadataService.UserTaskViewTypespecifying the type of views to list. If no viewType is specfied, then all types of view owned by the user will be listed. If a standard view type is specified, then all standard views of the specified type will be listed, regardless of owner.ownerUser- String name of the user owing the views to list. If null, the views owned by the context user will be listed. Only an admin may list views owned by a user other than the context user. The value of the owner parameter is ignored if the viewType parameter is set to STANDARD_VIEW or STDPROCESS_VIEW.- Returns:
- a List of
ViewSummaryTypeobjects. - Throws:
WorkflowException
- id
-
listGrantedUserViews
List<ViewGrantType> listGrantedUserViews(IWorkflowContext ctx, IUserMetadataService.UserTaskViewType viewType, PrincipleRefType grantee, IUserMetadataService.UserTaskViewGrantType grantType, boolean directOnly) throws WorkflowException Returns a list of all views of the specified type (task views, process views, standard task views, standard process views) and grant type (data or definition) granted to the specified grantee.If no grantee is specified, then the views granted to the context user are returned.
If no view type is specified, then all granted views matching the grantee (and grant type, if specified) are listed, regardless of type.
If no grant type is specified, then all grants matching the grantee (and view type, if specified) are listed, regardless of grant type.
If
directOnlyis set to true, then only the views granted directly to the specified grantee are returned. Otherwise, all views granted directly to the grantee, and views granted to any groups or application roles the grantee is a member of are returned.Only an admin can query the views granted to another user. Only an admin, a group or application role owner, or a member of the group or application role can query views granted to a group or application role.
The method returns a List of
ViewGrantTypeobjects, which have the following properties:- grantType Specifies the type of view grant, and determines whether the grantee will see their own data, or the view owner's data when using the view. Will be set to one of the toString values of the
IUserMetadataService.UserTaskViewGrantTypeenumeration ("DATA" or "DEFINITION").- viewId
Stringunique identifier for the granted view.- grantee
PrincipleRefTypeThe user to whom the view has been granted- grantedName
StringThe grantee may choose to use a different name for the view to the one chosen by the view's owner.- grantedDescription
StringThe grantee may choose to use a different description for the view to the one chosen by the view's owner.- hidden
booleanCan be used by UI to determine how to display the view. In the sample worklist application, granted views marked as "hidden" are not displayed in the list of views in the user's task listing page.- viewOwner
PrincipleRefTypeThe owner of the view.- originalName
StringThe name of the view chosen by the owner.- originalDescription
StringThe description for the view chosen by the owner.- Parameters:
ctx- authenticatedIWorkflowContextfor user.viewType- a value from the enumIUserMetadataService.UserTaskViewTypespecifying the type of views to list. If no viewType is specfied, then all types of view gratned to the grantee will be listed.grantee-PrincipleRefTypeidentifying the user, group or application role for which to list the granted views. If null, then the context user will be used as the grantee. Note that only an admin can query the views granted to another user. Only an admin, a group or application role owner, or a member of the group or application role can query views granted to a group or application role.grantType- a value from the enumIUserMetadataService.UserTaskViewGrantTypespecifying the type of view grant to list. If null, then all types of view grant will be listed.directOnly- iftrue, then only views granted directly to the grantee will be listed. Otherwise, views granted directly to the grantee, and views granted to any groups and application roles the grantee is a member of will be listed.- Returns:
- a List of
ViewGrantTypeobjects. - Throws:
WorkflowException
- grantType Specifies the type of view grant, and determines whether the grantee will see their own data, or the view owner's data when using the view. Will be set to one of the toString values of the
-
getStandardTaskViewList
Gets the list of standard task views which ship with the product, and are available to all users. Only views of typeIUserMetadataService.UserTaskViewType.STANDARD_VIEWwill be returned. (This list of standard views can be altered by admin users creating, updating or deleting views of type UserTaskViewType.STANDARD_VIEW.) Views are returned as aUserViewListobject. The UserViewList object contains aListofViewSummaryTypeobjects, accessed by calling theUserViewListType.getView()method. Each ViewSummaryType object provides summary information about a view. In order to retreive the full details for a particular rule, the methodgetStandardTaskViewDetails(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String)should be used.ViewSummaryType has the following properties:
- id
Stringunique identifier for view, automatically populated by API on view creation.- name
Stringthe name of the view. If the WorkflowLabels.proprties resource bundle contains an entry for this standard view name, then the label from the apppropriate resource bundle for the context user will be used instead.- owner
PrincipleRefTypeThe owner of the view- this is set to a dummy value for standard views.- hidden
booleanvalue. Can be used by UI to determine how to display the view. In the sample worklist application, views marked as "hidden" are not displayed in the list of views in the user's task listing page.- viewType String identifying the type of view, will be set to the toString() value of
IUserMetadataService.UserTaskViewType.STANDARD_VIEW.- description
Stringoptional description of view.- Parameters:
ctx- authenticatedIWorkflowContextfor user.- Returns:
UserViewListlist ofViewSummaryTypeobjects.- Throws:
WorkflowException- if an error occurs retrieving the standard views.
- id
-
getUserTaskViewList
Gets the list of task views belonging to the specified user. Only views of typeIUserMetadataService.UserTaskViewType.VIEWwill be returned. Views are returned as aUserViewListobject. TheUserViewListobject contains aListofViewSummaryTypeobjects, accessed by calling theUserViewListType.getView()method. Each ViewSummaryType object provides summary information about a view. In order to retreive the full details for a particular rule, the methodgetUserTaskViewDetails(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String)should be used.ViewSummaryType has the following properties:
- id
Stringunique identifier for view, automatically populated by API on view creation.- name
Stringthe name of the view.- owner
PrincipleRefTypeThe owner of the view.- hidden
booleanvalue. Can be used by UI to determine how to display the view. In the sample worklist application, views marked as "hidden" are not displayed in the list of views in the user's task listing page.- viewType String identifying the type of view, will be set to the toString() value of
IUserMetadataService.UserTaskViewType.VIEW.- description
Stringoptional description of view.- Parameters:
ctx- authenticatedIWorkflowContextfor user.user-Participantuser to get the views for.- Returns:
UserViewListlist ofViewSummaryTypeobjects.- Throws:
WorkflowException- if non-admin user attempts to retrieve the list of views for another user, or some other error condition occurs.
- id
-
getUserViewList
Gets the list of task views belonging to the specified user. Only views of typeIUserMetadataService.UserTaskViewType.VIEWwill be returned. Views are returned as aUserViewListobject. TheUserViewListobject contains aListofViewSummaryTypeobjects, accessed by calling theUserViewListType.getView()method. Each ViewSummaryType object provides summary information about a view. In order to retreive the full details for a particular rule, the methodgetUserTaskViewDetails(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String)should be used.ViewSummaryType has the following properties:
- id
Stringunique identifier for view, automatically populated by API on view creation.- name
Stringthe name of the view.- owner
PrincipleRefTypeThe owner of the view.- hidden
booleanvalue. Can be used by UI to determine how to display the view. In the sample worklist application, views marked as "hidden" are not displayed in the list of views in the user's task listing page.- viewType String identifying the type of view, will be set to the toString() value of
IUserMetadataService.UserTaskViewType.VIEW.- description
Stringoptional description of view.- Parameters:
ctx- authenticatedIWorkflowContextfor user.user-Participantuser to get the views for.- Returns:
UserViewListlist ofViewSummaryTypeobjects.- Throws:
WorkflowException- if non-admin user attempts to retrieve the list of views for another user, or some other error condition occurs.
- id
-
getUserInboxView
Deprecated.- Throws:
WorkflowException
-
getGrantedTaskViewList
GrantedViewList getGrantedTaskViewList(IWorkflowContext ctx, Participant user) throws WorkflowException Gets the list of task views that have been granted to the specified user by other users. Only views of typeIUserMetadataService.UserTaskViewType.VIEWwill be returned. Users that have been granted a view can use that view to query tasks as the owner of the view. The view owner and the grantee will see the same data when using the view. The grantee is able query, but not update view details for the granted view.Granted views are returned as a
GrantedViewListobject. The GrantedViewList object contains aListofViewGrantTypeobjects, accessed by calling theGrantedViewListType.getViewGrant()method. ViewGrantType has the following properties:- grantType
StringSpecifies the type of view grant, and determines whether the grantee will see their own data, or the view owner's data when using the view. Will be set to one of the toString values of theIUserMetadataService.UserTaskViewGrantTypeenumeration ("DATA" or "DEFINITION").- viewId
Stringunique identifier for the granted view.- grantee
PrincipleRefTypeThe user to whom the view has been granted- grantedName
StringThe grantee may choose to use a different name for the view to the one chosen by the view's owner.- grantedDescription
StringThe grantee may choose to use a different description for the view to the one chosen by the view's owner.- hidden
booleanCan be used by UI to determine how to display the view. In the sample worklist application, granted views marked as "hidden" are not displayed in the list of views in the user's task listing page.- viewOwner
PrincipleRefTypeThe owner of the view.- originalName
StringThe name of the view chosen by the owner.- originalDescription
StringThe description for the view chosen by the owner.- Parameters:
ctx- authenticatedIWorkflowContextfor user.user-Participantuser to get the granted views for.- Returns:
GrantedViewListlist ofViewGrantTypeobjects.- Throws:
WorkflowException- if non-admin user attempts to retrieve the list of granted views for another user, or some other error condition occurs.
- grantType
-
getStandardTaskViewDetails
UserViewDetail getStandardTaskViewDetails(IWorkflowContext ctx, String viewId) throws WorkflowException Gets the full details for a particular standard view, identified by its viewId. View details are returned as aUserViewDetailobject. SeecreateUserTaskView(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.UserViewDetail)for a description of the UserViewDetail properties.- Parameters:
ctx- authenticatedIWorkflowContextfor user.viewId-Stringunique identifier for view.- Returns:
UserViewDetaildescribing standard view.- Throws:
WorkflowException- if error occurs retrieving view details.
-
getUserTaskViewDetails
Gets the full details for a particular user view, identified by its viewId. View details are returned as aUserViewDetailobject. SeecreateUserTaskView(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.UserViewDetail)for a description of the UserViewDetail properties.- Parameters:
ctx- authenticatedIWorkflowContextfor user.viewId-Stringunique identifier for view.- Returns:
UserViewDetaildescribing user view.- Throws:
WorkflowException- if non-admin user attempts to retrieve view belonging to another user, or some other error condition occurs.
-
createUserTaskView
UserViewDetail createUserTaskView(IWorkflowContext ctx, UserViewDetail view) throws WorkflowException Creates a new view from the specified
UserViewDetailobject. Views provide a way for users to persist queries that return lists of tasks. A view can define which task columns should be queried, how the tasks should be filtered, and how the tasks should be ordered. Views are persisted by the API, and a view can be used to query a list of tasks using the methodITaskQueryService.queryViewTasks(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String, oracle.bpel.services.workflow.repos.Predicate, oracle.bpel.services.workflow.repos.Ordering, int, int).Users can grant other users access to their views, allowing the grantee to query the view data as if they are the view owner.
The UserViewDetail object properties are as follows:
- id
Stringunique identifier for view, automatically populated by API on view creation. - viewType
Stringindicates whether this view is one of the 'standard views', visible to all users, or is a personal view. Should be set to one of the String values of the enumerationIUserMetadataService.UserTaskViewType. (Either 'VIEW' or 'STANDARD_VIEW'). Only admin users can create (or update, or delete) standard views. If no value is specified, viewType will default to 'VIEW'. - name
Stringname for view. In the case of standard views, this name can be used to lookup a resource string from the WorkflowLabels.properties resource bundle. When querying standard views, if such a resource string is available, the value of this field will be replaced by this resource string (in the appropriate Locale, as determined from the IWorkflowContext object). If no resource string is found, then the name of the standard view will be set to the same value as specified in this field when the view was created or updated. - owner
PrincipleRefTypeThe owner of the view. - hidden
booleanvalue. Can be used by UI to determine how to display the view. In the sample worklist application, views marked as "hidden" are not displayed in the list of views in the user's task listing page. - description
Stringoptional description of view. - presentationId @{link String} unique idenitifier for the Presentation
associated with this view. The Presentation object determines how the results
of the view query should be ordered and formatted. Associating a view
with a presentaion is optional. If a view is associated with a Presentation,
then the view's viewColumns, viewOptionalInfo and viewOrdering
properties are ignored - the values from the Presentation are used instead.
Refer to the documentation for the
createPresentation(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.PresentationType)method for more details. - viewColumns Note that if a Presentation is associated
with the view, this field will be ignored.
ColumnListTypespecifies which task columns should be retrieved by the view. TheColumnListTypeobject should be populated withColumnTypeobjects. ColumnType objects can be added to the ColumnListType by calling the method ColumnListType.getColumn().add(ColumnType column). ColumnType has the following properties:- columnName
StringThe column name should be the name of a column in the WFTASK database table. A list of column names can be retrieved using the methodsITaskMetadataService.getTaskAttributes(oracle.bpel.services.workflow.verification.IWorkflowContext)orITaskMetadataService.getTaskAttributesForTaskDefinition(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String). - displayName
StringThe display name to use for the column. This property has no meaning for HWF Service APIs, it is up to client applications how to interpret this field, if they choose to use it. - columnWidth An integer indicating the display width of the column. This property has no meaning for HWF Service APIs, it is up to client applications how to interpret this field, if they choose to use it.
- formatMask A
Stringindicating a format mask to be used to format the column data. This property has no meaning for HWF Service APIs, it is up to client applications how to interpret this field, if they choose to use it.
- columnName
- viewOptionalInfo Note that if a Presentation is associated
with the view, this field will be ignored.
TaskOptionalInfoTypespecifies additional information that the view query will return in addtion to that which can be queried directly from task columns. The TaskOptionalInfoType object contains aListofStringvalues, that should correspond to values determined from theITaskQueryService.OptionalInfoenum. Values can be added to the TaskOptionalInfoType by calling the method TaskOptionalInfoType.getTaskOptionalInfo().add(String value). - viewPredicate
TaskPredicateTypespecifies how the view should filter tasks. The TaskPredicateType object contains the following properties:- assignmentFilter
Stringvalue corresponding to a value ofITaskQueryService.AssignmentFilterenum. - keywords
Stringoptional keyword search string. If this parameter is null, it is omitted from all query. If not null, predicates will be added to the query to perform SQL 'like' operation (of the form LIKE '%keyword%') on the following task attributes: task title, identification key, all textAttributes in task, task number (only if the keyword is a number) - clause Deprecated. Use the predicate property instead. This property is still available to preserve backward compatibility.
- predicate A
PredicateTypeobject that specifies the additional conditions in the view query. The simplest way to construct a PredicateType object is to construct aPredicate, and then use the methodPredicate.getPredicateType()to obtain the PredicateType object that represents the Predicate.
- assignmentFilter
- viewOrdering Note that if a Presentation is associated
with the view, this field will be ignored.
TaskOrderingTypespecifies how the Tasks or Process Instances selected by the view should be ordered. The TaskOrderingType object contains aListofOrderingClauseTypeobjects. OrderingClauseTypes can be added to the TaskOrderingType by calling the method TaskOrderingType.getClause().add(OrderingClauseType clause). Each OrderingClauseType specifies a single ordering clause, using the following properties:- sortOrder
StringShould beOrdering.ASCENDING_ORDERorOrdering.DESCENDING_ORDER. Default is ascending. - nullFirst
booleanShould null values be listed first or last. - column
Stringname of column to sort on. The column name should be the a column on the WFTASK table. A list of column names can be retrieved using the methodsITaskMetadataService.getTaskAttributes(oracle.bpel.services.workflow.verification.IWorkflowContext)orITaskMetadataService.getTaskAttributesForTaskDefinition(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String).
- sortOrder
- chart
ChartTypeA client application may use this property to define how task counts should be aggregated when using the methodITaskQueryService.queryViewAggregatedTasks(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String, oracle.bpel.services.workflow.repos.Predicate, oracle.bpel.services.workflow.repos.Column, boolean, boolean). ChartType has the following properties:- groupByColumn
StringThe name of the column the task counts should be grouped by. - selectValues
ChartType.SelectValuesTypeoptionally specifies a list of values from the groupByColumn that should be selected for aggregation. If no selectValues are selected, then all agregation is over all values of the groupBy column - orderByCount
booleaniftrue, results will be ordered by the counts, iffalse, results will be ordered by the values of the group by column. - ascendingOrder
booleaniftrue, results will be in ascending order, otherwise results will be in descending order.
- groupByColumn
- grantees
ViewGranteeListTypeA view can be granted to other users, allowing the grantee users to query tasks using the view. Depending on the grant type specified, grantees will either query data as the view owner (seeing the same data as the view owner sees), or query their own data, filteted by the view. Grantees are able to query, but not update the view definition. ViewGranteeListType contains aListofViewGranteeTypeobjects. ViewGranteeType objects can be added to the ViewGranteeListType using the method ViewGranteeListType.getGrantee().add(ViewGranteeType grantee). Each ViewGranteeType defines the grant of the view to another user, and has the following properties:- grantType
String Specifies the type of view grant,
and determines whether the grantee will see their own data, or the view owner's
data when using the view. Must be set to one of the toString values of the
- name
Stringthe name of the grantee. - realm
Stringthe name of the IdentityService realm the grantee belongs to, if the grantee is a USER or a GROUP. - applicationContext
Stringthe name of the Application the grantee belongs to, if the grantee is an APPROLE. - type
Stringcurrently unused. The type of grantee ("USER", "GROUP", or "APPROLE"). Granting of views to groups is not currently supported.
IUserMetadataService.UserTaskViewGrantTypeenumeration ("DATA" or "DEFINITION"). - grantType
- Parameters:
ctx- authenticatedIWorkflowContextfor user.view-UserViewDetailthat defines view to be created.- Returns:
UserViewDetailthat was created, with viewId populated.- Throws:
WorkflowException- if non-admin user attempts to create a view belonging to another user, or some other error condition occurs.
- id
-
updateUserTaskView
UserViewDetail updateUserTaskView(IWorkflowContext ctx, UserViewDetail view) throws WorkflowException Updates an existing view to the defintion specified in aUserViewDetailobject. SeecreateUserTaskView(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.UserViewDetail)for a description of the UserViewDetail object.- Parameters:
ctx- authenticatedIWorkflowContextfor user.view-UserViewDetailthat defines view to be updated.- Returns:
UserViewDetailthat was updated.- Throws:
WorkflowException- if non-admin user attempts to update a view belonging to another user, or some other error condition occurs.
-
deleteUserTaskView
Deletes an existing view identifies by its viewId.- Parameters:
ctx- authenticatedIWorkflowContextfor user.viewId-Stringunique identifier for view.- Throws:
WorkflowException- if non-admin user attempts to delete a view belonging to another user, or some other error condition occurs.
-
deleteAnyUserTaskView
Deletes an existing view identifies by its viewId.- Parameters:
ctx- authenticatedIWorkflowContextfor user.viewId-Stringunique identifier for view.- Throws:
WorkflowException- if non-admin user attempts to delete a view belonging to another user.
-
updateGrantedTaskView
Allows a grantee to update certain information on a view that has been granted to them. The grantee of a view may update certain properties on theViewGrant, which affect how the view is displayed to them. They may not update the definition of the view itself. The properties they may update are:- grantedName
Stringgrantee may choose to use a different name for the view to the one chosen by the view's owner.- grantedDescription
Stringgrantee may choose to use a different description for the view to the one chosen by the view's owner.- hidden
booleanCan be used by UI to determine how to display the view. In the sample worklist application, granted views marked as "hidden" are not displayed in the list of views in the user's task listing page.- Parameters:
ctx- authenticatedIWorkflowContextfor user.grant-ViewGrantobject containing updated properties.- Returns:
- The updated
ViewGrantobject. - Throws:
WorkflowException- if non-admin user attempts to update a view grant granted to another user, or some other error condition occurs.
- grantedName
-
getUserPreferences
Gets the user preferences for the specified user as aUserPreferencesobject.User preferences are a set of name value pairs, stored against a specfic user. They can be used by client programs for implementing user-specific preferences. The sample worklist application uses user preferences for storing such information as what size the main application window should be, and how many rows should be returned in paging queries.
The UserPreferences object contains a
ListofUserPreferenceTypeobjects, each of which represents a name value pair. The properties of UserPreferenceType are:- user
PrincipleRefTypeThe user who set this preference.- name
StringThe name of this preference.- value
StringThe value of this preference.- Parameters:
ctx- authenticatedIWorkflowContextfor user.user-Participantuser to get preferences for.- Returns:
UserPreferenceslist ofUserPreferenceTypeobjects.- Throws:
WorkflowException- if non-admin user attempts to query the preferences for another user, or some other error condition occurs.
- user
-
setUserPreferences
UserPreferences setUserPreferences(IWorkflowContext ctx, UserPreferences prefs) throws WorkflowException Sets the user preferences for the specified from aUserPreferencesobject.User preferences are a set of name value pairs, stored against a specfic user. They can be used by client programs for implementing user-specific preferences. The sample worklist application uses user preferences for storing such information as what size the main application window should be, and how many rows should be returned in paging queries.
The UserPreferences object contains a
ListofUserPreferenceTypeobjects, each of which represents a name value pair. The properties of UserPreferenceType are:- user
PrincipleRefTypeThe user who set this preference.- name
StringThe name of this preference.- value
StringThe value of this preference.- Parameters:
ctx- authenticatedIWorkflowContextfor user.prefs-UserPreferenceslist ofUserPreferenceTypeobjects.- Returns:
UserPreferencesthe updated User Preferences.- Throws:
WorkflowException- if non-admin user attempts to update the preferences for another user, or some other error condition occurs.
- user
-
getPublicPreferences
UserPreferences getPublicPreferences(IWorkflowContext ctx, Participant user) throws WorkflowException Gets 'public' preferences for specified user. Public preferences are preferences that can be read by any user, but can only be updated by the owning user, or an admin. Public preferences are useful for specifying application preferences that apply to all users of a custom client. These custom client application preferences could be created and maintained by an admin user, and be queried by all users, using the admin user's username.- Parameters:
ctx- authenticatedIWorkflowContextfor user.user-Participantuser to get public preferences for.- Returns:
UserPreferenceslist ofUserPreferenceTypeobjects.- Throws:
WorkflowException- if some error condition occurs.
-
setPublicPreferences
UserPreferences setPublicPreferences(IWorkflowContext ctx, UserPreferences prefs) throws WorkflowException Sets 'public' preferences for specified user. Public preferences are preferences that can be read by any user, but can only be updated by the owning user, or an admin. Public preferences are useful for specifying application preferences that apply to all users.- Parameters:
ctx- authenticatedIWorkflowContextfor user.prefs-UserPreferenceslist ofUserPreferenceTypeobjects.- Returns:
UserPreferencesthe updated public User Preferences.- Throws:
WorkflowException
-
createUserApplicationData
UserApplicationDataType createUserApplicationData(IWorkflowContext ctx, UserApplicationDataType applicationData) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Creates an instance of aUserApplicationDataTypeobject for a user. UserApplicationData is used to store application-specific data for a particular user. The actual data can be of any format.Only the owning user or an admin can create, update or delete their application data, but a user can choose to grant read-only access to application data to other users, groups, or application roles.
The UserMetadataService is entirely agnostic to the actual application data being stored. All parsing,validation and processing must be performed by the client.
The properties of a UserApplicationData object are as follows:
- id
Stringglobally unique identifier for UserApplicationData, automatically populated by API on creation. - name
StringName identifying the application data. The combination of owner, applicationDataType and name must be unique. - applicationDataType
Stringstring identifying the type of data being stored, for example "LAYOUT" or "BAMDASHBOARD". This can be any value - it is up to API clients to define the types of data. - owner
Stringthe username of the user that owns this data. If this field is not populated, it will be defaulted to the name of the context user. Only the owner or an admin may create, update or delete application data belonging to the owner. - identityContext
Stringthe IdentityService realm to which the owner belongs. If left null, it will be defaulted to the realm of the context user. - data
StringActual data that is stored by API. This is text of unlimited length, and can be any format (XML, CSV etc.). The UserMetadataService is entirely agnostic to the content of this field. All parsing, validation and processing must be performed by the client. - grantees A
PrincipleListTypeobject containing aListofPrincipleRefTypeobjects identifying the users, groups or application roles that this application data has been shared with. Grantees get read-only access to the application data. - createdDate
CalendarDate this application data entry was created. Automatically populated by UserMetadataService API. - updatedDate
CalendarDate this application data entry was last updated. Automatically populated by UserMetadataService API.
- Parameters:
ctx- authenticatedIWorkflowContextfor user.applicationData- theUserApplicationDataTypeobject to create.- Returns:
- the
UserApplicationDataTypeobject that was created, with automatically maintained fields populated. - Throws:
WorkflowException
- id
-
updateUserApplicationData
UserApplicationDataType updateUserApplicationData(IWorkflowContext ctx, UserApplicationDataType applicationData) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Updates a UserApplicationDataType object. Application data can only be updated by the owner or an admin.For a full description of the UserApplicationDataType object, refer to the documentation for the method
createUserApplicationData(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.UserApplicationDataType)/- Parameters:
ctx- authenticatedIWorkflowContextfor user.applicationData- theUserApplicationDataTypeobject to update.- Returns:
- the
UserApplicationDataTypeobject that was created, with automatically maintained fields updated. - Throws:
WorkflowException
-
deleteUserApplicationData
void deleteUserApplicationData(IWorkflowContext ctx, String applicationDataId) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Deletes a UserApplicationDataType object. Application data can only be deleted by the owner or an admin.- Parameters:
ctx- authenticatedIWorkflowContextfor user.applicationDataId-Stringunique identifier of the user applicaiton data to be deleted.- Throws:
WorkflowException
-
getUserApplicationData
UserApplicationDataType getUserApplicationData(IWorkflowContext ctx, String applicationDataId) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Gets the UserApplicationData object with the specified id. Only the owner, a grantee or an admin can query a UserApplicationData object.- Parameters:
ctx- authenticatedIWorkflowContextfor user.applicationDataId-Stringunique identifier of the user applicaiton data to be deleted.- Returns:
- a
UserApplicationDataTypeobject. - Throws:
WorkflowException
-
listUserApplicationData
List<UserApplicationDataType> listUserApplicationData(IWorkflowContext ctx, String dataType, String owner) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product.Gets a list of UserApplicationData objects of the specified type, belonging to the specified owner. (The owner's identityContext is assumed to be the same as the context user).
Note that only admins can call the method and specify an owner other than the context user.
If no type is specfied, then all the ApplicationData for the specified owner are returned, regardless of type.
If no owner is specified, then the method will return a list of all UserApplicationData owned by the context user, filtered by the specified type (if any).
This method returns only application data owned by the specified user. To get application data granted to a user, the method
listGrantedUserApplicationData(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String, oracle.bpel.services.workflow.common.model.PrincipleRefType, boolean)should be used instead.For a description of the UserApplicationDataType object, refer to the documentation for the method
createUserApplicationData(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.UserApplicationDataType)- Parameters:
ctx- authenticatedIWorkflowContextfor user.dataType-Stringthe type of application data to return. Ifnull, all UserApplicationData for the specified owner will be returned.owner-Stringthe owner of the application data to return. The owner's IdentityService realm is assumed to be the same as that as the context user. If no owner is specified, then the method will return a list of all UserApplicationData owned by the context user, filtered by the specified type (if any).- Returns:
- a
ListofUserApplicationDataTypeobjects. - Throws:
WorkflowException
-
listGrantedUserApplicationData
List<UserApplicationDataType> listGrantedUserApplicationData(IWorkflowContext ctx, String dataType, PrincipleRefType grantee, boolean directOnly) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Gets a list of UserApplicationData objects of the specified type, granted to the specified grantee (which may be a user, group or application role).If no dataType is specfied, then all the ApplicationData granted to the specified grantee are returned, regardless of type.
If no grantee is specified, then the method will use the context user as the grantee.
If
directOnlyis set totrue, then only ApplicationData granted directly to the specified grantee will be returned. Otherwise ApplicationData granted directly to the grantee, and ApplicationData granted to any groups or application roles the grantee is a member of will be returnedOnly an admin can query the application data granted to another user. Only an admin, a group or application role owner, or a member of the group or application role can query application data granted to a group or application role.
This method returns only application data granted to the specified grantee. To get application data owned by a user, the method
listUserApplicationData(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String, java.lang.String)should be used instead.For a description of the UserApplicationDataType object, refer to the documentation for the method
createUserApplicationData(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.UserApplicationDataType)- Parameters:
ctx- authenticatedIWorkflowContextfor user.dataType-Stringthe type of application data to return. Ifnull, all UserApplicationData for the specified grantee will be returned.grantee-PrincipleRefTypeidentifying the grantee of the application data to return. If no grantee is specfied, then the context user is used as the grantee.directOnly- iftrue, then only the ApplicationData directly granted to the grantee will be listed. Otherwise, ApplicationData granted to groups or application roles the grantee is a member of will also be listed.- Returns:
- a
ListofUserApplicationDataTypeobjects. - Throws:
WorkflowException
-
createPresentation
PresentationType createPresentation(IWorkflowContext ctx, PresentationType presentation) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Creates a new Presentation object. Presentations are meta-data that describe how query results should be presented - which columns, how the column data should be formatted, how the results should be sorted, and any additional data that should be fetched.Presentations are owned by a specific user, and only the owning user or an admin can create, update or delete presentations, but a user can choose to grant read-only access to application data to other users, groups, or application roles.
Presentations can be associated with one or more views, and provide a way of defining a standard presentation of data that can be shared amongst multiple views.
The properties of the
PresentationTypeobject are:- id A
Stringglobally unique idenitier for the Presentation. Automatically assigned by the API when Presentation is created. - presentationDataType A
Stringidentifying the type of data this presentation is intended to format - "TASK" or "PROCESS". If no value is specified, the presentationDataType will default to "TASK". - name
StringName for this presentation - must be unique to the set of presentations belonging to the same owner. The combinition of name and owner must be unique. - owner
Stringthe username of the user that owns this Presentation. If this field is not populated, it will be defaulted to the name of the context user. Only the owner or an admin may create, update or delete Presentations belonging to the owner. - identityContext
Stringthe IdentityService realm to which the owner belongs. If left null, it will be defaulted to the realm of the context user. - columns
ColumnListTypespecifies which task columns should be retrieved by the view. TheColumnListTypeobject should be populated withColumnTypeobjects. ColumnType objects can be added to the ColumnListType by calling the method ColumnListType.getColumn().add(ColumnType column). ColumnType has the following properties:- columnName
StringThe column name should be the name of a column in the WFTASK database table. A list of column names can be retrieved using the methodsITaskMetadataService.getTaskAttributes(oracle.bpel.services.workflow.verification.IWorkflowContext)orITaskMetadataService.getTaskAttributesForTaskDefinition(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String). - displayName
StringThe display name to use for the column. This property has no meaning for HWF Service APIs, it is up to client applications how to interpret this field, if they choose to use it. - columnWidth An integer indicating the display width of the column. This property has no meaning for HWF Service APIs, it is up to client applications how to interpret this field, if they choose to use it.
- formatMask A
Stringindicating a format mask to be used to format the column data. This property has no meaning for HWF Service APIs, it is up to client applications how to interpret this field, if they choose to use it.
- columnName
- optionalInfo
TaskOptionalInfoTypespecifies additional information that the view query will return in addtion to that which can be queried directly from task columns. The TaskOptionalInfoType object contains aListofStringvalues, that should correspond to values determined from theITaskQueryService.OptionalInfoenum. Values can be added to the TaskOptionalInfoType by calling the method TaskOptionalInfoType.getTaskOptionalInfo().add(String value). - ordering
TaskOrderingTypespecifies how the Tasks or Process Instances selected by the view should be ordered. The TaskOrderingType object contains aListofOrderingClauseTypeobjects. OrderingClauseTypes can be added to the TaskOrderingType by calling the method TaskOrderingType.getClause().add(OrderingClauseType clause). Each OrderingClauseType specifies a single ordering clause, using the following properties:- sortOrder
StringShould beOrdering.ASCENDING_ORDERorOrdering.DESCENDING_ORDER. Default is ascending. - nullFirst
booleanShould null values be listed first or last. - column
Stringname of column to sort on. The column name should be the a column on the WFTASK table. A list of column names can be retrieved using the methodsITaskMetadataService.getTaskAttributes(oracle.bpel.services.workflow.verification.IWorkflowContext)orITaskMetadataService.getTaskAttributesForTaskDefinition(oracle.bpel.services.workflow.verification.IWorkflowContext, java.lang.String).
- sortOrder
- grantees A
PrincipleListTypeobject containing aListofPrincipleRefTypeobjects identifying the users, groups or application roles that this Presentation has been shared with. Grantees get read-only access to the Presentation. - createdDate
CalendarDate this Presentation was created. Automatically populated by UserMetadataService API. - createdDate
CalendarDate this Presentation was last updated. Automatically populated by UserMetadataService API.
- Parameters:
ctx- authenticatedIWorkflowContextfor user.presentation-PresentationTypeobject representing the presentation to create.- Returns:
- the created
PresentationType, with API maintained properties populated. - Throws:
WorkflowException
- id A
-
updatePresentation
PresentationType updatePresentation(IWorkflowContext ctx, PresentationType presentation) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Update the definition of an existing Presentation. Only the owner of the Presentation or an admin can update it.For a description of the PresentationType object, refer to the documentation for the method
createPresentation(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.PresentationType)- Parameters:
ctx- ctx authenticatedIWorkflowContextfor user.presentation- thePresentationTypeto update.- Returns:
- the updated
PresentationType, with API maintained properties updated. - Throws:
WorkflowException
-
deletePresentation
FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Deletes the specified Presentation. Only the owner of the Presentation, or an admin can delete it.- Parameters:
ctx- authenticatedIWorkflowContextfor user.presentationId-Stringunique identifier for the Presentation to be deleted.- Throws:
WorkflowException
-
getPresentation
PresentationType getPresentation(IWorkflowContext ctx, String presentationId) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Returns thePresentationTypeobject with the specified presentationId. Only the owner, a grantee, or an admin can query a PresentationType.For a description of the PresentationType object, refer to the documentation for the method
createPresentation(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.PresentationType)- Parameters:
ctx- authenticatedIWorkflowContextfor user.presentationId-Stringunique identifier for the PresentationType being queried.- Returns:
PresentationTypemathcing the specified id.- Throws:
WorkflowException
-
listPresentations
List<PresentationType> listPresentations(IWorkflowContext ctx, IUserMetadataService.PresentationDataType presentationType, String owner) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Returns a List ofPresentationTypeobjects owned by the specified owner, and of the specified type (task or process).The IdentityService realm for the owner is assumed to be the same as the context user. Only an admin can call this method with an owner different to the context user.
If the owner parameter is left
null, then the list of presentations owned by the context user is returned.If the presentation type parameter is left
null, then the list of all presentations for the owner is returned regardless of typeThis method returns only Presentations owned by the specified user. To get Presentations granted to a user, the method
listGrantedPresentations(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.IUserMetadataService.PresentationDataType, oracle.bpel.services.workflow.common.model.PrincipleRefType, boolean)should be used instead.For a description of the PresentationType object, refer to the documentation for the method
createPresentation(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.PresentationType)- Parameters:
ctx- authenticatedIWorkflowContextfor user.presentationType- a value from the enumIUserMetadataService.PresentationDataTypespecifying the type of presentation to list. If no presentationType is specfied, then all types of view owned by the user will be listed.owner-Stringthe owner of the Presentations to return. The owner's IdentityService realm is assumed to be the same as that as the context user. If no owner is specified, then the method will return a list of all Presentations owned by the context user.- Returns:
- a list of
PresentationTypeobjects. - Throws:
WorkflowException
-
listGrantedPresentations
List<PresentationType> listGrantedPresentations(IWorkflowContext ctx, IUserMetadataService.PresentationDataType presentationType, PrincipleRefType grantee, boolean directOnly) throws WorkflowException FOR FUTURE USE ONLY. This method is intended for use in the BPM product. Gets a list of PresentationType objects that are granted to the specified grantee (which may be a user, group or application role), and are of the specified type.If the presentation type parameter is left
null, then the list of all presentations for the owner is returned regardless of typeIf no grantee is specified, then the method will use the context user as the grantee.
If
directOnlyistrue, then only presentations granted directly to the grantee are listed. Otherwise, presentations granted directly to the grantee and presentations granted to any groups or application roles to which the grantee belongs are listed.Only an admin can query the presentations granted to another user. Only an admin, a group or application role owner, or a member of the group or application role can query presentations granted to a group or application role.
This method returns only PresentationType objects granted to the specified grantee (or context user). To get application data owned by a user, the method
listPresentations(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.IUserMetadataService.PresentationDataType, java.lang.String)should be used instead.For a description of the PresentationType object, refer to the documentation for the method
createPresentation(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.user.model.PresentationType)- Parameters:
ctx- authenticatedIWorkflowContextfor user.presentationType- a value from the enumerationIUserMetadataService.PresentationDataType. Only presnetations of the specified type will be listed. Ifnullthen all presentations granted to the grantee, will be listed, regardless of type.grantee-PrincipleRefTypedescribing the grantee (user, group or application role) to list the granted presentations for. Ifnull, then the presentations granted to the context user will be listed instead.directOnly- iftrue, then only the presentations directly granted to the grantee will be listed. Otherwise, presentations granted to groups or application roles the grantee is a member of will also be listed.- Returns:
- a List of
PresentationTypeobjects. - Throws:
WorkflowException
-
listViewsUsingPresentation
List<ViewSummaryType> listViewsUsingPresentation(IWorkflowContext ctx, String presentationId) throws WorkflowException Returns a list ofViewSummaryTypeobjects that describe views which are using the specified presentation.For a description of the ViewSummaryType object, refer to the documentation for the method
getUserTaskViewList(oracle.bpel.services.workflow.verification.IWorkflowContext, oracle.bpel.services.workflow.common.model.Participant).- Parameters:
ctx- authenticatedIWorkflowContextfor user.presentationId-Stringunique identifier for the presentation- Returns:
ListofViewSummaryTypeobjects for views using the specified presentation.- Throws:
WorkflowException
-