Class FsFullFileStorePlugin

java.lang.Object
io.vertigo.datastore.plugins.filestore.fs.FsFullFileStorePlugin
All Implemented Interfaces:
io.vertigo.core.node.component.CoreComponent, io.vertigo.core.node.component.Plugin, io.vertigo.core.node.definition.DefinitionProvider, io.vertigo.core.node.definition.SimpleDefinitionProvider, FileStorePlugin

public final class FsFullFileStorePlugin extends Object implements FileStorePlugin, io.vertigo.core.node.definition.SimpleDefinitionProvider
Permet de gérer les accès atomiques à n'importe quel type de stockage SQL/ non SQL pour les traitements de FileInfo.
Author:
pchretien, npiedeloup, skerdudou
  • Constructor Details

    • FsFullFileStorePlugin

      @Inject public FsFullFileStorePlugin(Optional<String> name, String path, String fileInfoClassName, io.vertigo.commons.transaction.VTransactionManager transactionManager, Optional<Integer> purgeDelayMinutesOpt)
      Constructor.
      Parameters:
      name - Store name
      path - Root directory
      transactionManager - Transaction manager
      purgeDelayMinutesOpt - purge files older than this delay
  • Method Details

    • provideDefinitions

      public List<? extends io.vertigo.core.node.definition.Definition> provideDefinitions(io.vertigo.core.node.definition.DefinitionSpace definitionSpace)
      Specified by:
      provideDefinitions in interface io.vertigo.core.node.definition.SimpleDefinitionProvider
    • deleteOldFiles

      public void deleteOldFiles()
    • getName

      public String getName()
      Specified by:
      getName in interface FileStorePlugin
      Returns:
      Store name
    • read

      public FileInfo read(FileInfoURI uri)
      Load a file by its URI.
      Specified by:
      read in interface FileStorePlugin
      Parameters:
      uri - FileURI requested
      Returns:
      FileInfo for this uri (null if not found).
    • create

      public FileInfo create(FileInfo fileInfo)
      Save a file. Input FileInfo must have an empty URI : insert mode
      Specified by:
      create in interface FileStorePlugin
      Parameters:
      fileInfo - File to save (creation)
      Returns:
      the created FileInfo
    • update

      public void update(FileInfo fileInfo)
      Save a file. Input FileInfo must have an URI : update mode
      Specified by:
      update in interface FileStorePlugin
      Parameters:
      fileInfo - File to save (modification)
    • delete

      public void delete(FileInfoURI uri)
      Delete a file.
      Specified by:
      delete in interface FileStorePlugin
      Parameters:
      uri - File's URI to remove
    • getFileInfoClass

      public Class<? extends FileInfo> getFileInfoClass()
      Description copied from interface: FileStorePlugin
      Get's the FileInfo Class that are handled by the particular plugin
      Specified by:
      getFileInfoClass in interface FileStorePlugin
      Returns: