Red Hat Web Application Framework 6.1 Manuale Utente

Pagina di 230
18
Chapter 4. WAF Component: Services
4.10. Workflow Service
Workflows allow specialized members of a group to collaborate using a standard process. Developers
can define new workflows using the
workflow service.
A workflow contains a set of tasks, each of which may depend on one or more other tasks. A task is a
single unit of work. It can be enabled, disabled, or finished. A task may be assigned to a user or group.
Section 11.4.1 Simple Workflow describes the components of the simple
workflow and how to create
workflows and assign them to users and groups.
4.11. Versioning Service
The goal of the the
versioning system is to provide facilities for versioning data objects. This involves
recording information about changes made to the data in order to be able to:
1. Roll back to an earlier point in a data object’s history.
2. Undelete a data object (corollary of ability to perform rollback).
3. Compute the difference between any two versions of the data object.
To illustrate the last point, suppose you want to know the difference between the Jan 12 and Apr 19
versions of an article. The
versioning service can tell you that the article’s title changed from Ravioli
is better than spaghetti to Macaroni is better than spaghetti, and its by-line changed from Guy Lewis
Steel to Guy Lewis Steele, Jr.
The service does not provide redundant storage. If you delete the versioned article in a context where
the
versioning service is not available (either because it is turned off, or because you are manipulating
the database directly through JDBC or command-line client), there is no way for the
versioning
service to restore it. It is not a substitute for regular database backups.
The service is provided transparently. There is very little that a developer has to do in order to make
their data versioned. To gain conceptual understanding of the
versioning service, one must be familiar
with the key concepts of persistence: data objects and PDL (see Section 2.4 Persistence and Domain
APIs (DataObject, DataAssociation, DataCollection, DomainObjects), Section 2.3 Persistence Defi-
nition Language (PDL)). For a more detailed explanation of
versioning, please refer to Section 11.5
Versioning Tutorial.