public class DefaultAuditStrategy extends Object implements AuditStrategy
Constructor and Description |
---|
DefaultAuditStrategy() |
Modifier and Type | Method and Description |
---|---|
void |
addAssociationAtRevisionRestriction(org.hibernate.envers.internal.tools.query.QueryBuilder rootQueryBuilder,
org.hibernate.envers.internal.tools.query.Parameters parameters,
String revisionProperty,
String revisionEndProperty,
boolean addAlias,
org.hibernate.envers.internal.entities.mapper.relation.MiddleIdData referencingIdData,
String versionsMiddleEntityName,
String eeOriginalIdPropertyPath,
String revisionPropertyPath,
String originalIdPropertyName,
String alias1,
boolean inclusive,
org.hibernate.envers.internal.entities.mapper.relation.MiddleComponentData... componentDatas)
Update the rootQueryBuilder with an extra WHERE clause to restrict the revision for a middle-entity
association.
|
void |
addEntityAtRevisionRestriction(org.hibernate.envers.configuration.internal.GlobalConfiguration globalCfg,
org.hibernate.envers.internal.tools.query.QueryBuilder rootQueryBuilder,
org.hibernate.envers.internal.tools.query.Parameters parameters,
String revisionProperty,
String revisionEndProperty,
boolean addAlias,
org.hibernate.envers.internal.entities.mapper.relation.MiddleIdData idData,
String revisionPropertyPath,
String originalIdPropertyName,
String alias1,
String alias2,
boolean inclusive)
Update the rootQueryBuilder with an extra WHERE clause to restrict the revision for a two-entity relation.
|
void |
perform(Session session,
String entityName,
org.hibernate.envers.configuration.internal.AuditEntitiesConfiguration auditEntitiesConfiguration,
Serializable id,
Object data,
Object revision)
Perform the persistence of audited data for regular entities.
|
void |
performCollectionChange(Session session,
String entityName,
String propertyName,
org.hibernate.envers.configuration.internal.AuditEntitiesConfiguration auditEntitiesConfiguration,
org.hibernate.envers.internal.entities.mapper.PersistentCollectionChangeData persistentCollectionChangeData,
Object revision)
Perform the persistence of audited data for collection ("middle") entities.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
perform, performCollectionChange
public void perform(Session session, String entityName, org.hibernate.envers.configuration.internal.AuditEntitiesConfiguration auditEntitiesConfiguration, Serializable id, Object data, Object revision)
AuditStrategy
perform
in interface AuditStrategy
session
- Session, which can be used to persist the data.entityName
- Name of the entity, in which the audited change happensauditEntitiesConfiguration
- The audit entity configuration.id
- Id of the entity.data
- Audit data to persist.revision
- Current revision data.public void performCollectionChange(Session session, String entityName, String propertyName, org.hibernate.envers.configuration.internal.AuditEntitiesConfiguration auditEntitiesConfiguration, org.hibernate.envers.internal.entities.mapper.PersistentCollectionChangeData persistentCollectionChangeData, Object revision)
AuditStrategy
performCollectionChange
in interface AuditStrategy
session
- Session, which can be used to persist the data.entityName
- Name of the entity, in which the audited change happens.propertyName
- The name of the property holding the persistent collectionauditEntitiesConfiguration
- audit entity configurationpersistentCollectionChangeData
- Collection change data to be persisted.revision
- Current revision datapublic void addEntityAtRevisionRestriction(org.hibernate.envers.configuration.internal.GlobalConfiguration globalCfg, org.hibernate.envers.internal.tools.query.QueryBuilder rootQueryBuilder, org.hibernate.envers.internal.tools.query.Parameters parameters, String revisionProperty, String revisionEndProperty, boolean addAlias, org.hibernate.envers.internal.entities.mapper.relation.MiddleIdData idData, String revisionPropertyPath, String originalIdPropertyName, String alias1, String alias2, boolean inclusive)
AuditStrategy
DefaultAuditStrategy
a subquery is created:
e.revision = (SELECT max(...) ...)
ValidityAuditStrategy
the revision-end column is used:
e.revision <= :revision and (e.endRevision > :revision or e.endRevision is null)
addEntityAtRevisionRestriction
in interface AuditStrategy
globalCfg
- the GlobalConfiguration
rootQueryBuilder
- the QueryBuilder
that will be updatedparameters
- root parameters to which restrictions shall be addedrevisionProperty
- property of the revision columnrevisionEndProperty
- property of the revisionEnd column (only used for ValidityAuditStrategy
)addAlias
- boolean
indicator if a left alias is neededidData
- id-information for the two-entity relation (only used for DefaultAuditStrategy
)revisionPropertyPath
- path of the revision property (only used for ValidityAuditStrategy
)originalIdPropertyName
- name of the id property (only used for ValidityAuditStrategy
)alias1
- an alias used for subquery (only used for ValidityAuditStrategy
)alias2
- an alias used for subquery (only used for ValidityAuditStrategy
)inclusive
- indicates whether revision number shall be treated as inclusive or exclusivepublic void addAssociationAtRevisionRestriction(org.hibernate.envers.internal.tools.query.QueryBuilder rootQueryBuilder, org.hibernate.envers.internal.tools.query.Parameters parameters, String revisionProperty, String revisionEndProperty, boolean addAlias, org.hibernate.envers.internal.entities.mapper.relation.MiddleIdData referencingIdData, String versionsMiddleEntityName, String eeOriginalIdPropertyPath, String revisionPropertyPath, String originalIdPropertyName, String alias1, boolean inclusive, org.hibernate.envers.internal.entities.mapper.relation.MiddleComponentData... componentDatas)
AuditStrategy
DefaultAuditStrategy
a subquery is created:
e.revision = (SELECT max(...) ...)
ValidityAuditStrategy
the revision-end column is used:
e.revision <= :revision and (e.endRevision > :revision or e.endRevision is null)
addAssociationAtRevisionRestriction
in interface AuditStrategy
rootQueryBuilder
- the QueryBuilder
that will be updatedparameters
- root parameters to which restrictions shall be addedrevisionProperty
- property of the revision columnrevisionEndProperty
- property of the revisionEnd column (only used for ValidityAuditStrategy
)addAlias
- boolean
indicator if a left alias is neededreferencingIdData
- id-information for the middle-entity association (only used for DefaultAuditStrategy
)versionsMiddleEntityName
- name of the middle-entityeeOriginalIdPropertyPath
- name of the id property (only used for ValidityAuditStrategy
)revisionPropertyPath
- path of the revision property (only used for ValidityAuditStrategy
)originalIdPropertyName
- name of the id property (only used for ValidityAuditStrategy
)alias1
- an alias used for subqueries (only used for DefaultAuditStrategy
)inclusive
- indicates whether revision number shall be treated as inclusive or exclusivecomponentDatas
- information about the middle-entity relationCopyright © 2001-2018 Red Hat, Inc. All Rights Reserved.