Class JaversSqlRepository

  • All Implemented Interfaces:
    org.javers.repository.api.JaversRepository

    public class JaversSqlRepository
    extends java.lang.Object
    implements org.javers.repository.api.JaversRepository
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void ensureSchema()  
      void evictCache()
      JaversSqlRepository uses the cache for GlobalId primary keys.
      void evictSequenceAllocationCache()
      Clears the sequence allocation cache.
      SqlRepositoryConfiguration getConfiguration()  
      int getGlobalIdPkCacheSize()  
      org.javers.core.commit.CommitId getHeadId()  
      java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getLatest​(java.util.Collection<org.javers.core.metamodel.object.GlobalId> globalIds)  
      java.util.Optional<org.javers.core.metamodel.object.CdoSnapshot> getLatest​(org.javers.core.metamodel.object.GlobalId globalId)  
      java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getSnapshots​(java.util.Collection<org.javers.repository.api.SnapshotIdentifier> snapshotIdentifiers)  
      java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getSnapshots​(org.javers.repository.api.QueryParams queryParams)  
      java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getStateHistory​(java.util.Set<org.javers.core.metamodel.type.ManagedType> givenClasses, org.javers.repository.api.QueryParams queryParams)  
      java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getStateHistory​(org.javers.core.metamodel.object.GlobalId globalId, org.javers.repository.api.QueryParams queryParams)  
      java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getValueObjectStateHistory​(org.javers.core.metamodel.type.EntityType ownerEntity, java.lang.String path, org.javers.repository.api.QueryParams queryParams)  
      void persist​(org.javers.core.commit.Commit commit)  
      void setJsonConverter​(org.javers.core.json.JsonConverter jsonConverter)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getLatest

        public java.util.Optional<org.javers.core.metamodel.object.CdoSnapshot> getLatest​(org.javers.core.metamodel.object.GlobalId globalId)
        Specified by:
        getLatest in interface org.javers.repository.api.JaversRepository
      • getLatest

        public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getLatest​(java.util.Collection<org.javers.core.metamodel.object.GlobalId> globalIds)
        Specified by:
        getLatest in interface org.javers.repository.api.JaversRepository
      • getSnapshots

        public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getSnapshots​(org.javers.repository.api.QueryParams queryParams)
        Specified by:
        getSnapshots in interface org.javers.repository.api.JaversRepository
      • persist

        public void persist​(org.javers.core.commit.Commit commit)
        Specified by:
        persist in interface org.javers.repository.api.JaversRepository
      • getHeadId

        public org.javers.core.commit.CommitId getHeadId()
        Specified by:
        getHeadId in interface org.javers.repository.api.JaversRepository
      • getSnapshots

        public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getSnapshots​(java.util.Collection<org.javers.repository.api.SnapshotIdentifier> snapshotIdentifiers)
        Specified by:
        getSnapshots in interface org.javers.repository.api.JaversRepository
      • getStateHistory

        public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getStateHistory​(org.javers.core.metamodel.object.GlobalId globalId,
                                                                                            org.javers.repository.api.QueryParams queryParams)
        Specified by:
        getStateHistory in interface org.javers.repository.api.JaversRepository
      • getStateHistory

        public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getStateHistory​(java.util.Set<org.javers.core.metamodel.type.ManagedType> givenClasses,
                                                                                            org.javers.repository.api.QueryParams queryParams)
        Specified by:
        getStateHistory in interface org.javers.repository.api.JaversRepository
      • getValueObjectStateHistory

        public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getValueObjectStateHistory​(org.javers.core.metamodel.type.EntityType ownerEntity,
                                                                                                       java.lang.String path,
                                                                                                       org.javers.repository.api.QueryParams queryParams)
        Specified by:
        getValueObjectStateHistory in interface org.javers.repository.api.JaversRepository
      • evictCache

        public void evictCache()
        JaversSqlRepository uses the cache for GlobalId primary keys. This cache is non-transactional.

        If a SQL transaction encounters errors and must be rolled back, then cache modifications should be rolled back as well.

        JaVers does this automatically in JaversTransactionalDecorator from javers-spring module. If you are using javers-spring-boot-starter-sql (or directly javers-spring) you don't need to call this method.
        Since:
        2.7.2
      • getGlobalIdPkCacheSize

        public int getGlobalIdPkCacheSize()
        Since:
        2.7.2
      • evictSequenceAllocationCache

        public void evictSequenceAllocationCache()
        Clears the sequence allocation cache. It can be useful for testing. See https://github.com/javers/javers/issues/532
        Since:
        3.1.1
      • setJsonConverter

        public void setJsonConverter​(org.javers.core.json.JsonConverter jsonConverter)
        Specified by:
        setJsonConverter in interface org.javers.repository.api.JaversRepository
      • ensureSchema

        public void ensureSchema()
        Specified by:
        ensureSchema in interface org.javers.repository.api.JaversRepository