An Waveset view is a collection of attributes that is assembled from one or more objects managed by Waveset. Views are transient, dynamic, and not stored in the repository. The data in a view can change if the view is refreshed to reflect a new role or resource assignment.
If you are using Waveset, you will encounter views primarily in forms and workflows. An Waveset form is an object that describes how to display view attributes in a browser for editing. The form can also contain the rules by which hidden attributes are calculated from the displayed attributes. A workflow process is a logical, repeatable, series of activities during which documents, information, or tasks are passed from one participant to another for action, according to a set of procedural rules.
When working with views, it helps to first understand:
general view concepts
how views are used in Waveset
frequently customized views
The most important view is the user view, which contains the user attributes that are stored in Waveset and attributes that are read from accounts managed by Waveset. Some attributes in the user view are visible in the forms that are presented by the Waveset User and Administrator Interfaces. Other attributes are hidden or read-only. Hidden attributes are typically used by rules that derive other visible attributes or calculate field values.
For example, when creating a user (represented as a user view), an administrator enters a first and last name in the appropriate form fields on the Create User page. When the administrator saves the form, the system can calculate the user’s full name in a hidden field by concatenating the first and last name. This full name can then be saved to one or more resources, including Waveset. Once approved (where approval is required), the system converts the user view back into one or more objects in the Waveset repository and sends the view to the resources assigned to the user to create or update the user’s resource accounts.
A view is a collection of name/value pairs that are assembled from one or more objects stored in the repository, or read from resources. The value of a view attribute can be atomic such as a string, a collection such as a list, or reference to another object.
Any Boolean attribute can be omitted from a view. If omitted, the attribute is considered logically false.
View handlers are Java classes that contain the logic necessary to create a view and perform actions specified by setting attributes of the view. View handlers also can include information for the convenience of interactive forms. When a view is checked in, the view handler reads the view attributes and converts them into operations on repository objects. The view handler will often launch a workflow to perform more complex tasks such as approvals or provisioning. Most view handlers that operate on users prevent you from checking in the view if there is already a workflow in progress for that user.
Waveset forms contain rules for transforming data in views and describe how the view attributes are to be displayed and edited in a browser. The Waveset user interface processes the view and form to generate an HTML form. When the user submits the HTML form, Waveset merges the submitted values into the view, then asks the view handler to refresh the view. The view can be refreshed several times during an interactive editing session, and different HTML fields can be generated based on logic in the form. When the user is finished interacting, the view is checked in which typically results in the view being passed as input to a workflow process.
Checking in a view often results in a new workflow process being launched to complete the modifications specified in the view. The workflow can perform time-intensive tasks in the background, launch approval processes, query resources, or take whatever action is appropriate. During approvals, the administrator is able to examine the contents of the view and make changes if desired. After approvals, the view attributes are converted into modifications of one or more repository objects. For views related to users, provisioning may occur to propagate the changes to selected resource accounts.
When you assign an account type to a user, Waveset makes available the account type as well as the accountId. When working with the user-oriented views, including the User, Enable, Disable, and Deprovision views, follow these addressing guidelines:
Use a value of null to indicate an account of the default type. Reference an accounts of the default type by resource name for example, accounts[corp-ad]
Use a type-qualified name instead of the resource name to reference an account of a specific type. The type-qualified resource name takes this form:
<resource name>|<type of account>
To reference the account data for the account of type Admin on the resource corp-ad, reference accounts[corp-ad|Admin].
The following views are frequently used with both customized forms and workflows.
View |
Description |
---|---|
User |
Used to manipulate Waveset users and provision resource accounts. |
AccountCorrelation |
Used to search for users correlating to a specified account (or account attributes). |
AdminRole |
Used when assigning an Admin role to a user. |
Enable |
Used to present and select the list of resource accounts to be disabled. |
Deprovision |
Used to present and select a list of resources to be deprovisioned. |
Disable |
Used to present and select the list of resource accounts to be enabled. |
ChangeUserAnswers |
Used to change a user’s authentication answers. |
ChangeUserCapabilities |
Used to change an Waveset user’s capabilities. |
List |
Used to generate a list of work items and processes in the Waveset User Interface. |
Org |
Used to specify the type of organization created and options for processing it. |
Password |
Used to change an Waveset user’s password, and optionally propagate the password to resource accounts. |
Process |
Used to launch tasks such as workflows or reports. |
Reconcile |
Used to request or cancel reconciliation operations. |
ReconcileStatus |
Used to obtain the status of the last requested reconciliation operation. |
RenameUser |
Used to rename the Waveset and resource account identities. |
Reprovision |
Used to present and select the list of resources to be reprovisioned. |
ResetUserPassword |
Used by administrators to reset a password to a randomly generated password and optionally propagate the new password to resource accounts. |
Resource |
Used to manipulate resources. |
ResourceObject |
A family of views used to manipulate arbitrary objects supported by a resource, for example groups and mailing lists. |
Role |
Used to specify the types of Waveset roles created. |
TaskSchedule |
Used to create and modify TaskSchedule objects. |
Unlock |
Used to unlock accounts for those resources that support native account locking. |
WorkItem |
Used when writing a workflow approval form. |
WorkItemList |
Used to view information about collections of work items in the repository and to perform operations on multiple work items at a time. |