Interface ShuffleCache

  • All Known Implementing Classes:
    ShuffleCacheImpl

    public interface ShuffleCache
    Cache for alfresco "save shuffles" which are used by some applications to compensate for a most computer filesystem being non atomic.

    Overlays an Alfresco repository with temporary files being created and soft deleted from folders that are likely to have save shuffles going on.

    Implementations must be thread safe

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void createTemporaryFile​(java.lang.String path)
      Add a new temporary file to the "shuffle cache".
      boolean isCreated​(java.lang.String path)
      Has the path been "soft created"
      boolean isDeleted​(java.lang.String path)
      Has the path been "soft deleted"
      boolean isShuffleDirectory​(java.lang.String dir)
      Does the specified directory contain a shuffled temporary file
      void renameTemporaryFile​(java.lang.String oldPath, java.lang.String newPath)
      Takes the contents of a temporary file and applies it to the new path.
      void softDelete​(java.lang.String path)
      Soft delete a file.
    • Method Detail

      • createTemporaryFile

        void createTemporaryFile​(java.lang.String path)
        Add a new temporary file to the "shuffle cache". Content is not persisted in the alfresco repo until either a rename occurs or after a time delay.
      • softDelete

        void softDelete​(java.lang.String path)
        Soft delete a file. The file may be re-instated later or the delete made permenant after a time delay.
      • renameTemporaryFile

        void renameTemporaryFile​(java.lang.String oldPath,
                                 java.lang.String newPath)
        Takes the contents of a temporary file and applies it to the new path.

        If the new path has been soft deleted then the soft delete is removed.

        After the contents of the temporary file have been written the it may may be made available for garbage collection.

        Parameters:
        oldPath - the location of the temporaryFile
        newPath - the location of the new file.
      • isShuffleDirectory

        boolean isShuffleDirectory​(java.lang.String dir)
        Does the specified directory contain a shuffled temporary file
        Parameters:
        dir - String
        Returns:
        boolean
      • isDeleted

        boolean isDeleted​(java.lang.String path)
        Has the path been "soft deleted"
      • isCreated

        boolean isCreated​(java.lang.String path)
        Has the path been "soft created"
        Parameters:
        path - String
        Returns:
        boolean