|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.hibernate.envers.reader.AuditReaderImpl
public class AuditReaderImpl
Constructor Summary | |
---|---|
AuditReaderImpl(AuditConfiguration verCfg,
Session session,
SessionImplementor sessionImplementor)
|
Method Summary | ||
---|---|---|
AuditQueryCreator |
createQuery()
|
|
|
find(Class<T> cls,
Object primaryKey,
Number revision)
Find an entity by primary key at the given revision. |
|
|
find(Class<T> cls,
String entityName,
Object primaryKey,
Number revision)
Find an entity by primary key at the given revision with the specified entityName. |
|
|
findRevision(Class<T> revisionEntityClass,
Number revision)
A helper method; should be used only if a custom revision entity is used. |
|
|
getCurrentRevision(Class<T> revisionEntityClass,
boolean persist)
Gets an instance of the current revision entity, to which any entries in the audit tables will be bound. |
|
FirstLevelCache |
getFirstLevelCache()
|
|
Date |
getRevisionDate(Number revision)
Get the date, at which a revision was created. |
|
Number |
getRevisionNumberForDate(Date date)
Gets the revision number, that corresponds to the given date. |
|
List<Number> |
getRevisions(Class<?> cls,
Object primaryKey)
Get a list of revision numbers, at which an entity was modified. |
|
List<Number> |
getRevisions(Class<?> cls,
String entityName,
Object primaryKey)
Get a list of revision numbers, at which an entity was modified, looking by entityName. |
|
Session |
getSession()
|
|
SessionImplementor |
getSessionImplementor()
|
|
boolean |
isEntityClassAudited(Class<?> entityClass)
Checks if the entityClass was configured to be audited. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AuditReaderImpl(AuditConfiguration verCfg, Session session, SessionImplementor sessionImplementor)
Method Detail |
---|
public SessionImplementor getSessionImplementor()
getSessionImplementor
in interface AuditReaderImplementor
public Session getSession()
getSession
in interface AuditReaderImplementor
public FirstLevelCache getFirstLevelCache()
getFirstLevelCache
in interface AuditReaderImplementor
public <T> T find(Class<T> cls, Object primaryKey, Number revision) throws IllegalArgumentException, NotAuditedException, IllegalStateException
AuditReader
find
in interface AuditReader
cls
- Class of the entity.primaryKey
- Primary key of the entity.revision
- Revision in which to get the entity.
IllegalArgumentException
- If cls or primaryKey is null or revision is less or equal to 0.
NotAuditedException
- When entities of the given class are not audited.
IllegalStateException
- If the associated entity manager is closed.public <T> T find(Class<T> cls, String entityName, Object primaryKey, Number revision) throws IllegalArgumentException, NotAuditedException, IllegalStateException
AuditReader
find
in interface AuditReader
cls
- Class of the entity.entityName
- EntityName to find.primaryKey
- Primary key of the entity.revision
- Revision in which to get the entity.
IllegalArgumentException
- If cls or primaryKey is null or revision is less or equal to 0.
NotAuditedException
- When entities of the given class are not audited.
IllegalStateException
- If the associated entity manager is closed.public List<Number> getRevisions(Class<?> cls, Object primaryKey) throws IllegalArgumentException, NotAuditedException, IllegalStateException
AuditReader
getRevisions
in interface AuditReader
cls
- Class of the entity.primaryKey
- Primary key of the entity.
IllegalArgumentException
- If cls or primaryKey is null.
NotAuditedException
- When entities of the given class are not audited.
IllegalStateException
- If the associated entity manager is closed.public List<Number> getRevisions(Class<?> cls, String entityName, Object primaryKey) throws IllegalArgumentException, NotAuditedException, IllegalStateException
AuditReader
getRevisions
in interface AuditReader
cls
- Class of the entity.entityName
- EntityName to find.primaryKey
- Primary key of the entity.
IllegalArgumentException
- If cls or primaryKey is null.
NotAuditedException
- When entities of the given class are not audited.
IllegalStateException
- If the associated entity manager is closed.public Date getRevisionDate(Number revision) throws IllegalArgumentException, RevisionDoesNotExistException, IllegalStateException
AuditReader
getRevisionDate
in interface AuditReader
revision
- Number of the revision for which to get the date.
IllegalArgumentException
- If revision is less or equal to 0.
RevisionDoesNotExistException
- If the revision does not exist.
IllegalStateException
- If the associated entity manager is closed.public Number getRevisionNumberForDate(Date date)
AuditReader
getRevisionDate(getRevisionNumberForDate(date)) <= date
and
getRevisionDate(getRevisionNumberForDate(date)+1) > date
.
getRevisionNumberForDate
in interface AuditReader
date
- Date for which to get the revision.
public <T> T findRevision(Class<T> revisionEntityClass, Number revision) throws IllegalArgumentException, RevisionDoesNotExistException, IllegalStateException
AuditReader
RevisionEntity
.
findRevision
in interface AuditReader
revisionEntityClass
- Class of the revision entity. Should be annotated with RevisionEntity
.revision
- Number of the revision for which to get the data.
IllegalArgumentException
- If revision is less or equal to 0 or if the class of the revision entity
is invalid.
RevisionDoesNotExistException
- If the revision does not exist.
IllegalStateException
- If the associated entity manager is closed.public <T> T getCurrentRevision(Class<T> revisionEntityClass, boolean persist)
AuditReader
persist
is false
, and no audited entities are modified in this session,
then the obtained revision entity instance won't be persisted. If persist
is true
, the revision
entity instance will always be persisted, regardless of whether audited entities are changed or not.
getCurrentRevision
in interface AuditReader
revisionEntityClass
- Class of the revision entity. Should be annotated with RevisionEntity
.persist
- If the revision entity is not yet persisted, should it become persisted. This way, the primary
identifier (id) will be filled (if it's assigned by the DB) and available, but the revision entity will be
persisted even if there are no changes to audited entities. Otherwise, the revision number (id) can be
null
.
public AuditQueryCreator createQuery()
createQuery
in interface AuditReader
public boolean isEntityClassAudited(Class<?> entityClass)
AuditReader
isEntityClassAudited
in interface AuditReader
entityClass
- Class of the entity asking for audit support
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |