Class CmsExportPointDriver

java.lang.Object
org.opencms.db.CmsExportPointDriver
All Implemented Interfaces:
I_CmsExportPointDriver
Direct Known Subclasses:
CmsTempFolderExportPointDriver

public class CmsExportPointDriver extends Object implements I_CmsExportPointDriver
Provides methods to write export points to the "real" file system.

Since:
6.0.0
  • Field Details

  • Constructor Details

    • CmsExportPointDriver

      public CmsExportPointDriver(Set<CmsExportPoint> exportpoints)
      Constructor for a CmsExportPointDriver.

      Parameters:
      exportpoints - the list of export points
    • CmsExportPointDriver

      Empty default constructor, necessary for subclasses which may need to do initialization differently.

  • Method Details

    • createFolder

      public void createFolder(String resourceName, String exportpoint)
      If required, creates the folder with the given root path in the real file system.

      Specified by:
      createFolder in interface I_CmsExportPointDriver
      Parameters:
      resourceName - the root path of the folder to create
      exportpoint - the export point to create the folder in
    • deleteResource

      public void deleteResource(String resourceName, String exportpoint)
      Deletes a file or a folder in the real file sytem.

      If the given resource name points to a folder, then this folder is only deleted if it is empty. This is required since the same export point RFS target folder may be used by multiple export points. For example, this is usually the case with the /WEB-INF/classes/ and /WEB-INF/lib/ folders which are export point for multiple modules. If all resources in the RFS target folder where deleted, uninstalling one module would delete the export classes and lib resources of all other modules.

      Specified by:
      deleteResource in interface I_CmsExportPointDriver
      Parameters:
      resourceName - the root path of the resource to be deleted
      exportpoint - the name of the export point
    • getExportPoint

      public String getExportPoint(String rootPath)
      Returns the export point path for the given resource root path, or null if the resource is not contained in any export point.

      Specified by:
      getExportPoint in interface I_CmsExportPointDriver
      Parameters:
      rootPath - the root path of a resource in the OpenCms VFS
      Returns:
      the export point path for the given resource, or null if the resource is not contained in any export point
    • getExportPointPaths

      Returns the set of all VFS paths that are exported as an export point.

      Specified by:
      getExportPointPaths in interface I_CmsExportPointDriver
      Returns:
      the set of all VFS paths that are exported as an export point
    • writeFile

      public void writeFile(String resourceName, String exportpoint, byte[] content)
      Writes the file with the given root path to the real file system.

      If required, missing parent folders in the real file system are automatically created.

      Specified by:
      writeFile in interface I_CmsExportPointDriver
      Parameters:
      resourceName - the root path of the file to write
      exportpoint - the export point to write file to
      content - the contents of the file to write
    • getExportPointFile

      protected File getExportPointFile(String rootPath, String exportpoint)
      Returns the File for the given export point resource.

      Parameters:
      rootPath - name of a file in the VFS
      exportpoint - the name of the export point
      Returns:
      the File for the given export point resource
    • writeResource

      protected void writeResource(File file, byte[] content)
      Writes file data to the RFS.

      Parameters:
      file - the RFS file location
      content - the file content
    • writeResource

      protected void writeResource(String resourceName, String exportpoint, byte[] content)
      Writes (if required creates) a resource with the given name to the real file system.

      Parameters:
      resourceName - the root path of the resource to write
      exportpoint - the name of the export point
      content - the contents of the file to write