org.exoplatform.services.wcm.publication
Class WebpagePublicationPlugin

java.lang.Object
  extended by org.exoplatform.container.component.BaseComponentPlugin
      extended by org.exoplatform.services.ecm.publication.PublicationPlugin
          extended by org.exoplatform.services.wcm.publication.WebpagePublicationPlugin
All Implemented Interfaces:
org.exoplatform.container.component.ComponentPlugin
Direct Known Subclasses:
SimplePublicationPlugin, StageAndVersionPublicationPlugin

public abstract class WebpagePublicationPlugin
extends org.exoplatform.services.ecm.publication.PublicationPlugin

Base class of Webpage Publication plugins. Webpage publication plugins implement a publication lifecycle. Each time a new custom lifecycle needs to be defined, a new plugin has to be implemented and registered with the Publication Service.


Field Summary
 
Fields inherited from class org.exoplatform.container.component.BaseComponentPlugin
desc, name
 
Constructor Summary
WebpagePublicationPlugin()
           
 
Method Summary
abstract  java.lang.String getLifecycleType()
          Gets the lifecycle type.
abstract  java.util.List<java.lang.String> getListPageNavigationUri(org.exoplatform.portal.config.model.Page page, java.lang.String remoteUser)
          Gets the list page navigation uri.
abstract  void publishContentToCLV(javax.jcr.Node content, org.exoplatform.portal.config.model.Page page, java.lang.String clvPortletId, java.lang.String portalOwnerName, java.lang.String remoteUser)
          Publish content node to a portal page.
abstract  void publishContentToSCV(javax.jcr.Node content, org.exoplatform.portal.config.model.Page page, java.lang.String portalOwnerName)
          Publish content node to a portal page.
abstract  void suspendPublishedContentFromPage(javax.jcr.Node content, org.exoplatform.portal.config.model.Page page, java.lang.String remoteUser)
          Suspend published content from a portal page.
abstract  void updateLifecycleOnChangeNavigation(org.exoplatform.portal.config.model.PageNavigation navigation, java.lang.String remoteUser)
          Update lifecyle state of the any content relates to a navigation when the navigation is changed.
abstract  void updateLifecycleOnRemovePage(org.exoplatform.portal.config.model.Page page, java.lang.String remoteUser)
          Update lifecyle state of the any content relates to the page when page is removed.
abstract  void updateLifecyleOnChangeContent(javax.jcr.Node node, java.lang.String remoteUser)
          Update the lifecycle of the content depending of its current state.
abstract  void updateLifecyleOnChangeContent(javax.jcr.Node node, java.lang.String remoteUser, java.lang.String newState)
          Update the lifecycle of the content depending of its current state.
abstract  void updateLifecyleOnChangePage(org.exoplatform.portal.config.model.Page page, java.lang.String remoteUser)
          Update lifecyle state of the any content relates to the page when page is changed.
abstract  void updateLifecyleOnCreateNavigation(org.exoplatform.portal.config.model.PageNavigation navigation)
          Update lifecyle state of the any content relates to a navigation when the navigation is created.
abstract  void updateLifecyleOnCreatePage(org.exoplatform.portal.config.model.Page page, java.lang.String remoteUser)
          Update lifecyle state of the any content relates to the page when page is created.
abstract  void updateLifecyleOnRemoveNavigation(org.exoplatform.portal.config.model.PageNavigation navigation)
          Update lifecyle state of the any content relates to a navigation when the navigation is removed.
 
Methods inherited from class org.exoplatform.services.ecm.publication.PublicationPlugin
addMixin, canAddMixin, changeState, getLifecycleName, getLocalizedAndSubstituteMessage, getNodeLifecycleDesc, getNodeView, getPossibleStates, getStateImage, getStateUI, getUserInfo
 
Methods inherited from class org.exoplatform.container.component.BaseComponentPlugin
getDescription, getName, setDescription, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WebpagePublicationPlugin

public WebpagePublicationPlugin()
Method Detail

publishContentToSCV

public abstract void publishContentToSCV(javax.jcr.Node content,
                                         org.exoplatform.portal.config.model.Page page,
                                         java.lang.String portalOwnerName)
                                  throws java.lang.Exception
Publish content node to a portal page. Base of each publication lifecycle implementation,a new portlet can be added to the page and the lifecyle state will be created

Parameters:
content - the jcr content node
page - the portal page
portalOwnerName - the portal owner name
Throws:
java.lang.Exception - the exception

publishContentToCLV

public abstract void publishContentToCLV(javax.jcr.Node content,
                                         org.exoplatform.portal.config.model.Page page,
                                         java.lang.String clvPortletId,
                                         java.lang.String portalOwnerName,
                                         java.lang.String remoteUser)
                                  throws java.lang.Exception
Publish content node to a portal page.

Parameters:
content - the content
page - the page
clvPortletId - the clv portlet id
portalOwnerName - the portal owner name
remoteUser - the remote user
Throws:
java.lang.Exception - the exception

suspendPublishedContentFromPage

public abstract void suspendPublishedContentFromPage(javax.jcr.Node content,
                                                     org.exoplatform.portal.config.model.Page page,
                                                     java.lang.String remoteUser)
                                              throws java.lang.Exception
Suspend published content from a portal page. Base of each publication lifecycle implementation, a portlet that is used to publish the content can be removed to the page and the lifecyle state will be created

Parameters:
content - the content
page - the page
remoteUser - the remote user
Throws:
java.lang.Exception - the exception

updateLifecyleOnCreatePage

public abstract void updateLifecyleOnCreatePage(org.exoplatform.portal.config.model.Page page,
                                                java.lang.String remoteUser)
                                         throws java.lang.Exception
Update lifecyle state of the any content relates to the page when page is created.

Parameters:
page - the page
remoteUser - the remote user
Throws:
java.lang.Exception - the exception

updateLifecyleOnChangePage

public abstract void updateLifecyleOnChangePage(org.exoplatform.portal.config.model.Page page,
                                                java.lang.String remoteUser)
                                         throws java.lang.Exception
Update lifecyle state of the any content relates to the page when page is changed.

Parameters:
page - the page
remoteUser - the remote user
Throws:
java.lang.Exception - the exception

updateLifecycleOnRemovePage

public abstract void updateLifecycleOnRemovePage(org.exoplatform.portal.config.model.Page page,
                                                 java.lang.String remoteUser)
                                          throws java.lang.Exception
Update lifecyle state of the any content relates to the page when page is removed.

Parameters:
page - the page
remoteUser - the remote user
Throws:
java.lang.Exception - the exception

updateLifecyleOnCreateNavigation

public abstract void updateLifecyleOnCreateNavigation(org.exoplatform.portal.config.model.PageNavigation navigation)
                                               throws java.lang.Exception
Update lifecyle state of the any content relates to a navigation when the navigation is created.

Parameters:
navigation - the navigation
Throws:
java.lang.Exception - the exception

updateLifecycleOnChangeNavigation

public abstract void updateLifecycleOnChangeNavigation(org.exoplatform.portal.config.model.PageNavigation navigation,
                                                       java.lang.String remoteUser)
                                                throws java.lang.Exception
Update lifecyle state of the any content relates to a navigation when the navigation is changed.

Parameters:
navigation - the navigation
remoteUser - the remote user
Throws:
java.lang.Exception - the exception

updateLifecyleOnRemoveNavigation

public abstract void updateLifecyleOnRemoveNavigation(org.exoplatform.portal.config.model.PageNavigation navigation)
                                               throws java.lang.Exception
Update lifecyle state of the any content relates to a navigation when the navigation is removed.

Parameters:
navigation - the navigation
Throws:
java.lang.Exception - the exception

updateLifecyleOnChangeContent

public abstract void updateLifecyleOnChangeContent(javax.jcr.Node node,
                                                   java.lang.String remoteUser)
                                            throws java.lang.Exception
Update the lifecycle of the content depending of its current state. This method is generally called when the node has been modified (saved).

Parameters:
node - the node
remoteUser - the remote user
Throws:
java.lang.Exception - the exception
See Also:
PostCreateContentEventListener, PostEditContentEventListener

updateLifecyleOnChangeContent

public abstract void updateLifecyleOnChangeContent(javax.jcr.Node node,
                                                   java.lang.String remoteUser,
                                                   java.lang.String newState)
                                            throws java.lang.Exception
Update the lifecycle of the content depending of its current state. This method is generally called when the node has been modified (saved).

Parameters:
node - the node
remoteUser - the remote user
newState - the new state
Throws:
java.lang.Exception - the exception
See Also:
PostCreateContentEventListener, PostEditContentEventListener

getLifecycleType

public abstract java.lang.String getLifecycleType()
Gets the lifecycle type.

Returns:
the lifecycle type

getListPageNavigationUri

public abstract java.util.List<java.lang.String> getListPageNavigationUri(org.exoplatform.portal.config.model.Page page,
                                                                          java.lang.String remoteUser)
                                                                   throws java.lang.Exception
Gets the list page navigation uri.

Parameters:
page - the page
remoteUser - the remote user
Returns:
the list page navigation uri
Throws:
java.lang.Exception - the exception


Copyright © 2011 eXo Platform SAS. All Rights Reserved.