Class OcflPersistentStorageSession

  • All Implemented Interfaces:
    org.fcrepo.persistence.api.PersistentStorageSession

    public class OcflPersistentStorageSession
    extends Object
    implements org.fcrepo.persistence.api.PersistentStorageSession
    OCFL Persistent Storage class.
    Since:
    2019-09-20
    Author:
    whikloj
    • Constructor Detail

      • OcflPersistentStorageSession

        protected OcflPersistentStorageSession​(org.fcrepo.kernel.api.Transaction tx,
                                               FedoraToOcflObjectIndex fedoraOcflIndex,
                                               org.fcrepo.storage.ocfl.OcflObjectSessionFactory objectSessionFactory,
                                               ReindexService reindexService)
        Constructor
        Parameters:
        tx - the transaction.
        fedoraOcflIndex - the index
        objectSessionFactory - the session factory
    • Method Detail

      • getId

        public String getId()
        Specified by:
        getId in interface org.fcrepo.persistence.api.PersistentStorageSession
      • persist

        public void persist​(org.fcrepo.kernel.api.operations.ResourceOperation operation)
                     throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        persist in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • getHeaders

        public org.fcrepo.kernel.api.models.ResourceHeaders getHeaders​(org.fcrepo.kernel.api.identifiers.FedoraId identifier,
                                                                       Instant version)
                                                                throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        getHeaders in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • getTriples

        public org.fcrepo.kernel.api.RdfStream getTriples​(org.fcrepo.kernel.api.identifiers.FedoraId identifier,
                                                          Instant version)
                                                   throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        getTriples in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • listVersions

        public List<InstantlistVersions​(org.fcrepo.kernel.api.identifiers.FedoraId fedoraIdentifier)
                                   throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        listVersions in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • getBinaryContent

        public InputStream getBinaryContent​(org.fcrepo.kernel.api.identifiers.FedoraId identifier,
                                            Instant version)
                                     throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        getBinaryContent in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • getBinaryRange

        public InputStream getBinaryRange​(org.fcrepo.kernel.api.identifiers.FedoraId identifier,
                                          Instant version,
                                          long start,
                                          long end)
                                   throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        getBinaryRange in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • prepare

        public void prepare()
        Specified by:
        prepare in interface org.fcrepo.persistence.api.PersistentStorageSession
      • commit

        public void commit()
                    throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        commit in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException
      • rollback

        public void rollback()
                      throws org.fcrepo.persistence.api.exceptions.PersistentStorageException
        Specified by:
        rollback in interface org.fcrepo.persistence.api.PersistentStorageSession
        Throws:
        org.fcrepo.persistence.api.exceptions.PersistentStorageException