Package org.javers.repository.sql
Class JaversSqlRepository
- java.lang.Object
-
- org.javers.repository.sql.JaversSqlRepository
-
- All Implemented Interfaces:
org.javers.repository.api.JaversRepository
public class JaversSqlRepository extends java.lang.Object implements org.javers.repository.api.JaversRepository
-
-
Constructor Summary
Constructors Constructor Description JaversSqlRepository(SessionFactory sessionFactory, CommitMetadataRepository commitRepository, GlobalIdRepository globalIdRepository, CdoSnapshotRepository cdoSnapshotRepository, CdoSnapshotFinder finder, JaversSchemaManager schemaManager, SqlRepositoryConfiguration sqlRepositoryConfiguration)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidensureSchema()voidevictCache()JaversSqlRepository uses the cache for GlobalId primary keys.voidevictSequenceAllocationCache()Clears the sequence allocation cache.SqlRepositoryConfigurationgetConfiguration()intgetGlobalIdPkCacheSize()org.javers.core.commit.CommitIdgetHeadId()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)voidpersist(org.javers.core.commit.Commit commit)voidsetJsonConverter(org.javers.core.json.JsonConverter jsonConverter)
-
-
-
Constructor Detail
-
JaversSqlRepository
public JaversSqlRepository(SessionFactory sessionFactory, CommitMetadataRepository commitRepository, GlobalIdRepository globalIdRepository, CdoSnapshotRepository cdoSnapshotRepository, CdoSnapshotFinder finder, JaversSchemaManager schemaManager, SqlRepositoryConfiguration sqlRepositoryConfiguration)
-
-
Method Detail
-
getLatest
public java.util.Optional<org.javers.core.metamodel.object.CdoSnapshot> getLatest(org.javers.core.metamodel.object.GlobalId globalId)
- Specified by:
getLatestin interfaceorg.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:
getLatestin interfaceorg.javers.repository.api.JaversRepository
-
getSnapshots
public java.util.List<org.javers.core.metamodel.object.CdoSnapshot> getSnapshots(org.javers.repository.api.QueryParams queryParams)
- Specified by:
getSnapshotsin interfaceorg.javers.repository.api.JaversRepository
-
persist
public void persist(org.javers.core.commit.Commit commit)
- Specified by:
persistin interfaceorg.javers.repository.api.JaversRepository
-
getHeadId
public org.javers.core.commit.CommitId getHeadId()
- Specified by:
getHeadIdin interfaceorg.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:
getSnapshotsin interfaceorg.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:
getStateHistoryin interfaceorg.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:
getStateHistoryin interfaceorg.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:
getValueObjectStateHistoryin interfaceorg.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 inJaversTransactionalDecoratorfromjavers-springmodule. If you are usingjavers-spring-boot-starter-sql(or directlyjavers-spring) you don't need to call this method.- Since:
- 2.7.2
-
getGlobalIdPkCacheSize
public int getGlobalIdPkCacheSize()
- Since:
- 2.7.2
-
getConfiguration
public SqlRepositoryConfiguration getConfiguration()
- 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:
setJsonConverterin interfaceorg.javers.repository.api.JaversRepository
-
ensureSchema
public void ensureSchema()
- Specified by:
ensureSchemain interfaceorg.javers.repository.api.JaversRepository
-
-