Package lumis.content.core
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$
-
Interface Summary Interface Description ContentPublicationActivityGenerationTransactionObserver.IObserverBuilder<T extends ITransactionObserver> IContentManager Provides content management operations.IContentManagerSPI Content manager for internal use. -
Class Summary Class Description Content A content entity object.ContentAdminActivityGenerationTransactionObserver Transaction observer that generatesactivities
for aContentLocale
with target audience of its content administrators.ContentAssociation Represents an association from aContentVersion
to aContent
.ContentComment A comment done for a content in a specific locale.ContentLocale Contains the content information for a specific locale.ContentManager Content manager implementation.ContentPublication A content publication definition entity class.ContentPublicationActivityGenerationTransactionObserver Transaction observer that generatesactivities
when aContentLocale
becomes published.ContentRenderDataChangedEvent Event that indicates that the render data of a content may have changed.ContentTag A tag object entity.ContentUniqueSlug Content unique slug.ContentUrlUpdateObserver ObservesWorkflowActionExecutedEvent
andContentVersion
events to recalculate the content's web resources friendly paths when a new value forContentVersion.getUrlTitle()
is published.ContentUtilInternal Content utilities.ContentVersion Represents a specific version of a content.ContentVersionCleanerClock -
Enum Summary Enum Description LockType Represents the different types of locks allowed when editing an existing content. -
Exception Summary Exception Description ContentLocaleAlreadyLockedException Occurs when a user tries to lock a content that is already locked by another user.