Package lumis.content.core

Provides the core content management operations.

This packages provides the API for accessing content persistence, including support for versioning, tagging, multi-language and publication definition.

The entry points for this API are IContentManager (available in ContentManagerFactory.getContentManager()) and EntityManager (available in ManagerFactory.getEntityManager()), that may be used on entities in this package.

The Content object represents a content. A content belongs to a service instance. When the service instance is deleted, all its contents are also deleted.

Each content may have data in multiple locales. Each locale specific data is represented by ContentLocale. Each ContentLocale may contain authoring comments (ContentComment) and multiple versions (ContentVersion) of data.

Each ContentLocale has an active version, and may have a published version. The active version is the current version, available for editing and is shown in administration interfaces. The published version is the version that is shown in publication interfaces, if its publication rules (defined in ContentPublication) are fulfilled.

Each ContentLocale may have association with tags. Tags are contents, and their data is stored in ContentTag. ContentLocale offers methods for adding (auto-creating if necessary), reading and dissociating tags. Tags may be deleted using ContentTag.deleteContent().

Tags belong to a tag repository. A tag repository is a service instance of the Tag service. The ContentLocale's service instance must be associated to a tag repository, to allow it to be tagged.

The following diagram displays the main classes provided by this package and their relationships:

In the default content process action handlers implementations, the following behaviors are applied:

  • If multi-language is not enabled, the current user's locale is used for new contents.
  • If versioning is enabled each time a content is saved, a new ContentVersion is created and made active.
  • If versioning is not enabled the same version is overwritten for each modification.

Since:
4.2.0
Version:
$Revision$ $Date$