Class ContentDirectoryStructureAttachmentDataFileSystemV004

  • All Implemented Interfaces:
    AttachmentDataFileSystem, AttachmentDataFileSystemInternals

    public class ContentDirectoryStructureAttachmentDataFileSystemV004
    extends Object
    implements AttachmentDataFileSystem, AttachmentDataFileSystemInternals
    An implementation of AttachmentDataFileSystem which stores the attachment data as files on a filesystem, using the standard File API.

    The files are stored within a hierarchical directory structure that incorporates an attachment IDs to which the attachment data belongs to. Data corresponding to each version of the attachment are stored, as are different "streams" of data for each version (see AttachmentDataStreamType.

    The directory structure is described by the following pattern: "a1/a2/ax/attachmentId.a/attachmentFile"

    where a1, a2, ax are subdirectories generated from the attachment id by splitting the attachment id into up to 3 digits long substrings, and attachmentFile represents a combination of the attachment id, version and the data stream type. Attachments AttachmentDataStreamType.RAW_BINARY format has a filename that consists of the attachment id and the version separated by a dot (eg. "123456.1"). For other stream types, the filename is "id.version.streamType" (e.g. "123456.1.extracted_text"). Suffix ".a" in the attachment versions folder name is added to avoid clashes between attachment id and subdirectories' name.

    Since:
    8.1.0