Here's a runtime view of the system using this forge module components.
Note: Elements in yellow color are provided by this forge module project while the other elements are provided by brXM as built-in features.
Here are some highlights about each element and communication between elements.
DocumentManagementService
is a service interface to invoke CMS Document/Folder
Workflow operations more easily with simpler parameters.
DocumentManagementService
interface is registered by
DocumentManagementServiceDaemonModule
through
HippoServiceRegistry
, and so the service can be used in any web applications in the same
servlet container through
HippoServiceRegistry
.
In addition, the service is also exposed through JMX as
DocumentManagementServiceMXBean
,
so it's also possible to use the service through JMX standard API.
DocumentCopyingPageCopyEventListener
is an implementation to subscribe
org.hippoecm.hst.pagecomposer.jaxrs.api.PageCopyEvent
event
propagated by CMS Experience Manager through HST-2 Guava Event Bus.
DocumentCopyingPageCopyEventListener
retrieves all the linked document paths in the page
and its components (by invoking org.hippoecm.hst.core.linking.DocumentParamsScanner
),
and copy each document from the source channel to the target channel if not existing in target channel.