Liferay 6.1.2-ce-ga3

com.liferay.portal.kernel.lar
Interface PortletDataHandler

All Known Subinterfaces:
PortletDataHandler
All Known Implementing Classes:
BasePortletDataHandler, BasePortletDataHandler

public interface PortletDataHandler

A PortletDataHandler is a special class capable of exporting and importing portlet specific data to a Liferay Archive file (LAR) when a site's layouts are exported or imported. PortletDataHandlers are defined by placing a portlet-data-handler-class element in the portlet section of the liferay-portlet.xml file.


Method Summary
 PortletPreferences deleteData(PortletDataContext portletDataContext, String portletId, PortletPreferences portletPreferences)
          Deletes the data created by the portlet.
 String exportData(PortletDataContext portletDataContext, String portletId, PortletPreferences portletPreferences)
          Returns a string of data to be placed in the <portlet-data> section of the LAR file.
 String[] getDataPortletPreferences()
          Returns an array of the portlet preferences that reference data.
 PortletDataHandlerControl[] getExportControls()
          Returns an array of the controls defined for this data handler.
 PortletDataHandlerControl[] getExportMetadataControls()
          Returns an array of the metadata controls defined for this data handler.
 PortletDataHandlerControl[] getImportControls()
          Returns an array of the controls defined for this data handler.
 PortletDataHandlerControl[] getImportMetadataControls()
          Returns an array of the metadata controls defined for this data handler.
 PortletPreferences importData(PortletDataContext portletDataContext, String portletId, PortletPreferences portletPreferences, String data)
          Handles any special processing of the data when the portlet is imported into a new layout.
 boolean isAlwaysExportable()
          Returns true to allow the user to export data for this portlet even though it may not belong to any pages.
 boolean isAlwaysStaged()
           
 boolean isDataLocalized()
           
 boolean isPublishToLiveByDefault()
          Returns whether the data exported by this handler should be included by default when publishing to live.
 

Method Detail

deleteData

PortletPreferences deleteData(PortletDataContext portletDataContext,
                              String portletId,
                              PortletPreferences portletPreferences)
                              throws PortletDataException
Deletes the data created by the portlet. Can optionally return a modified version of preferences if it contains reference to data that does not exist anymore.

Parameters:
portletDataContext - the context of the data deletion
portletId - the portlet ID of the portlet
portletPreferences - the portlet preferences of the portlet
Returns:
A modified version of portlet preferences that should be saved. Null if the portlet preferences were unmodified by this data handler.
Throws:
PortletDataException

exportData

String exportData(PortletDataContext portletDataContext,
                  String portletId,
                  PortletPreferences portletPreferences)
                  throws PortletDataException
Returns a string of data to be placed in the <portlet-data> section of the LAR file. This data will be passed as the data parameter of importData().

Parameters:
portletDataContext - the context of the data export
portletId - the portlet ID of the portlet
portletPreferences - the portlet preferences of the portlet
Returns:
A string of data to be placed in the LAR. It may be XML, but not necessarily. Null should be returned if no portlet data is to be written out.
Throws:
PortletDataException

getDataPortletPreferences

String[] getDataPortletPreferences()
Returns an array of the portlet preferences that reference data. These preferences should only be updated if the referenced data is imported.

Returns:
A String array

getExportControls

PortletDataHandlerControl[] getExportControls()
                                              throws PortletDataException
Returns an array of the controls defined for this data handler. These controls enable the developer to create fine grained controls over export behavior. The controls are rendered in the export UI.

Returns:
an array of PortletDataHandlerControls
Throws:
PortletDataException

getExportMetadataControls

PortletDataHandlerControl[] getExportMetadataControls()
                                                      throws PortletDataException
Returns an array of the metadata controls defined for this data handler. These controls enable the developer to create fine grained controls over export behavior of metadata such as tags, categories, ratings or comments. The controls are rendered in the export UI.

Returns:
an array of PortletDataHandlerControls
Throws:
PortletDataException

getImportControls

PortletDataHandlerControl[] getImportControls()
                                              throws PortletDataException
Returns an array of the controls defined for this data handler. These controls enable the developer to create fine grained controls over import behavior. The controls are rendered in the import UI.

Returns:
An array of PortletDataHandlerControls
Throws:
PortletDataException

getImportMetadataControls

PortletDataHandlerControl[] getImportMetadataControls()
                                                      throws PortletDataException
Returns an array of the metadata controls defined for this data handler. These controls enable the developer to create fine grained controls over import behavior of metadata such as tags, categories, ratings or comments. The controls are rendered in the export UI.

Returns:
an array of PortletDataHandlerControls
Throws:
PortletDataException

importData

PortletPreferences importData(PortletDataContext portletDataContext,
                              String portletId,
                              PortletPreferences portletPreferences,
                              String data)
                              throws PortletDataException
Handles any special processing of the data when the portlet is imported into a new layout. Can optionally return a modified version of preferences to be saved in the new portlet.

Parameters:
portletDataContext - the context of the data import
portletId - the portlet ID of the portlet
portletPreferences - the portlet preferences of the portlet
data - the string data that was returned by exportData()
Returns:
A modified version of portlet preferences that should be saved. Null if the portlet preferences were unmodified by this data handler.
Throws:
PortletDataException

isAlwaysExportable

boolean isAlwaysExportable()
Returns true to allow the user to export data for this portlet even though it may not belong to any pages. See LPS-1624.

Returns:
true to allow the user to export data for this portlet even though it may not belong to any pages

isAlwaysStaged

boolean isAlwaysStaged()

isDataLocalized

boolean isDataLocalized()

isPublishToLiveByDefault

boolean isPublishToLiveByDefault()
Returns whether the data exported by this handler should be included by default when publishing to live. This should only be true for data that is meant to be managed in an staging environment such as CMS content, but not for data meant to be input by users such as wiki pages or message board posts.

Returns:
true to publish to live by default

Liferay 6.1.2-ce-ga3