Package org.opencms.staticexport
Class A_CmsStaticExportHandler
- java.lang.Object
-
- org.opencms.staticexport.A_CmsStaticExportHandler
-
- All Implemented Interfaces:
I_CmsStaticExportHandler
- Direct Known Subclasses:
A_CmsOnDemandStaticExportHandler
,CmsAfterPublishStaticExportHandler
public abstract class A_CmsStaticExportHandler extends java.lang.Object implements I_CmsStaticExportHandler
Abstract base implementation for the
interface.I_CmsStaticExportHandler
This class provides several util methods to be used by static export handlers.
- Since:
- 6.1.7
- See Also:
I_CmsStaticExportHandler
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
m_busy
Indicates if this content handler is busy.
-
Constructor Summary
Constructors Constructor Description A_CmsStaticExportHandler()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.util.List<CmsPublishedResource>
addMovedLinkSources(CmsObject cms, java.util.List<CmsPublishedResource> publishedResources)
Add the link sources of moved resources to the list of published resources.protected abstract java.util.List<java.io.File>
getRelatedFilesToPurge(java.lang.String exportFileName, java.lang.String vfsName)
Returns a list of related files to purge.protected java.util.List<java.lang.String>
getSiblingsList(CmsObject cms, java.lang.String resPath)
Returns a list containing the root paths of all siblings of a resource.boolean
isBusy()
Returnstrue
if this static export handler is currently performing a static export operation.abstract void
performEventPublishProject(CmsUUID publishHistoryId, I_CmsReport report)
Scrubs files from the export folder that might have been changed.protected void
purgeFile(java.lang.String rfsFilePath, java.lang.String vfsName)
Deletes the given file from the RFS if it exists, also deletes all parameter variations of the file.java.util.List<CmsPublishedResource>
scrubExportFolders(CmsUUID publishHistoryId)
Scrubs all files from the export folder that might have been changed, so that the export is newly created after the next request to the resource.protected void
scrubResource(CmsObject cms, CmsPublishedResource res, java.util.Set<java.lang.String> scrubbedFolders, java.util.Set<java.lang.String> scrubbedFiles)
Scrub a single file or folder.
-
-
-
Field Detail
-
m_busy
protected boolean m_busy
Indicates if this content handler is busy.
-
-
Constructor Detail
-
A_CmsStaticExportHandler
public A_CmsStaticExportHandler()
-
-
Method Detail
-
isBusy
public boolean isBusy()
Description copied from interface:I_CmsStaticExportHandler
Returnstrue
if this static export handler is currently performing a static export operation.- Specified by:
isBusy
in interfaceI_CmsStaticExportHandler
- Returns:
true
if this static export handler is currently performing a static export operation- See Also:
I_CmsStaticExportHandler.isBusy()
-
performEventPublishProject
public abstract void performEventPublishProject(CmsUUID publishHistoryId, I_CmsReport report)
Description copied from interface:I_CmsStaticExportHandler
Scrubs files from the export folder that might have been changed.- Specified by:
performEventPublishProject
in interfaceI_CmsStaticExportHandler
- Parameters:
publishHistoryId
- the
of the published projectCmsUUID
report
- an
instance to print output message, orI_CmsReport
null
to write messages to the log file- See Also:
I_CmsStaticExportHandler.performEventPublishProject(org.opencms.util.CmsUUID, org.opencms.report.I_CmsReport)
-
scrubExportFolders
public java.util.List<CmsPublishedResource> scrubExportFolders(CmsUUID publishHistoryId)
Scrubs all files from the export folder that might have been changed, so that the export is newly created after the next request to the resource.- Parameters:
publishHistoryId
- id of the last published project- Returns:
- the list of
CmsPublishedResource
objects to export
-
addMovedLinkSources
protected java.util.List<CmsPublishedResource> addMovedLinkSources(CmsObject cms, java.util.List<CmsPublishedResource> publishedResources)
Add the link sources of moved resources to the list of published resources.- Parameters:
cms
- the cms contextpublishedResources
- the published resources- Returns:
- the list of published resources included the link sources of moved resources
-
getRelatedFilesToPurge
protected abstract java.util.List<java.io.File> getRelatedFilesToPurge(java.lang.String exportFileName, java.lang.String vfsName)
Returns a list of related files to purge.- Parameters:
exportFileName
- the previous exported rfs filename (already purged)vfsName
- the vfs name of the resource (to be used to compute more sofisticated sets of related files to purge- Returns:
- a list of related files to purge
-
getSiblingsList
protected java.util.List<java.lang.String> getSiblingsList(CmsObject cms, java.lang.String resPath)
Returns a list containing the root paths of all siblings of a resource.- Parameters:
cms
- the export user contextresPath
- the path of the resource to get the siblings for- Returns:
- a list containing the root paths of all siblings of a resource
-
purgeFile
protected void purgeFile(java.lang.String rfsFilePath, java.lang.String vfsName)
Deletes the given file from the RFS if it exists, also deletes all parameter variations of the file.- Parameters:
rfsFilePath
- the path of the RFS file to deletevfsName
- the VFS name of the file to delete (required for logging)
-
scrubResource
protected void scrubResource(CmsObject cms, CmsPublishedResource res, java.util.Set<java.lang.String> scrubbedFolders, java.util.Set<java.lang.String> scrubbedFiles)
Scrub a single file or folder.- Parameters:
cms
- an export cms objectres
- the resource to checkscrubbedFolders
- the list of already scrubbed foldersscrubbedFiles
- the list of already scrubbed files
-
-