Class AuditEventServiceImpl
java.lang.Object
ubic.gemma.persistence.service.common.auditAndSecurity.AuditEventServiceImpl
- All Implemented Interfaces:
AuditEventService
@Service("auditEventService")
public class AuditEventServiceImpl
extends Object
implements AuditEventService
- Author:
- pavlidis
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T extends Auditable>
Map<T, AuditEvent> getCreateEvents
(Collection<T> auditables) getLastEvent
(Auditable auditable) getLastEvent
(Auditable auditable, Class<? extends AuditEventType> type) getLastEvent
(Auditable auditable, Class<? extends AuditEventType> type, Collection<Class<? extends AuditEventType>> excludedTypes) <T extends Auditable>
Map<T, AuditEvent> getLastEvents
(Class<T> auditableClass, Class<? extends AuditEventType> type) <T extends Auditable>
Map<Class<? extends AuditEventType>, Map<T, AuditEvent>> getLastEvents
(Collection<T> auditables, Collection<Class<? extends AuditEventType>> types) Fast method to retrieve auditEventTypes of multiple classes.<T extends Auditable>
Collection<T> getNewSinceDate
(Class<T> auditableClass, Date date) <T extends Auditable>
Collection<T> getUpdatedSinceDate
(Class<T> auditableClass, Date date) boolean
hasEvent
(Auditable a, Class<? extends AuditEventType> type) void
retainHavingEvent
(Collection<? extends Auditable> a, Class<? extends AuditEventType> type) void
retainLackingEvent
(Collection<? extends Auditable> a, Class<? extends AuditEventType> type)
-
Constructor Details
-
AuditEventServiceImpl
-
-
Method Details
-
getEvents
- Specified by:
getEvents
in interfaceAuditEventService
-
getCreateEvents
@Transactional(readOnly=true) public <T extends Auditable> Map<T,AuditEvent> getCreateEvents(Collection<T> auditables) - Specified by:
getCreateEvents
in interfaceAuditEventService
-
getLastEvent
- Specified by:
getLastEvent
in interfaceAuditEventService
-
getLastEvent
@Transactional(readOnly=true) public AuditEvent getLastEvent(Auditable auditable, Class<? extends AuditEventType> type) - Specified by:
getLastEvent
in interfaceAuditEventService
-
getLastEvent
@Transactional(readOnly=true) public AuditEvent getLastEvent(Auditable auditable, Class<? extends AuditEventType> type, Collection<Class<? extends AuditEventType>> excludedTypes) - Specified by:
getLastEvent
in interfaceAuditEventService
-
getLastEvents
@Transactional(readOnly=true) public <T extends Auditable> Map<T,AuditEvent> getLastEvents(Class<T> auditableClass, Class<? extends AuditEventType> type) - Specified by:
getLastEvents
in interfaceAuditEventService
-
getLastEvents
@Transactional(readOnly=true) public <T extends Auditable> Map<Class<? extends AuditEventType>,Map<T, getLastEventsAuditEvent>> (Collection<T> auditables, Collection<Class<? extends AuditEventType>> types) Description copied from interface:AuditEventService
Fast method to retrieve auditEventTypes of multiple classes.- Specified by:
getLastEvents
in interfaceAuditEventService
- Parameters:
auditables
- auditablestypes
- types- Returns:
- map of AuditEventType to a Map of Auditable to the AuditEvent matching that type. Note: cannot secure this very easily since map key is a Class.
-
getNewSinceDate
@Transactional(readOnly=true) public <T extends Auditable> Collection<T> getNewSinceDate(Class<T> auditableClass, Date date) - Specified by:
getNewSinceDate
in interfaceAuditEventService
-
getUpdatedSinceDate
@Transactional(readOnly=true) public <T extends Auditable> Collection<T> getUpdatedSinceDate(Class<T> auditableClass, Date date) - Specified by:
getUpdatedSinceDate
in interfaceAuditEventService
- Parameters:
date
- date- Returns:
- a collection of Auditable objects that were updated since the date entered. Note that this security setting works even though auditables aren't necessarily securable; non-securable auditables will be returned. See AclEntryAfterInvocationCollectionFilteringProvider and applicationContext-security.xml
-
hasEvent
@Transactional(readOnly=true) public boolean hasEvent(Auditable a, Class<? extends AuditEventType> type) - Specified by:
hasEvent
in interfaceAuditEventService
-
retainHavingEvent
@Transactional(readOnly=true) public void retainHavingEvent(Collection<? extends Auditable> a, Class<? extends AuditEventType> type) - Specified by:
retainHavingEvent
in interfaceAuditEventService
-
retainLackingEvent
@Transactional(readOnly=true) public void retainLackingEvent(Collection<? extends Auditable> a, Class<? extends AuditEventType> type) - Specified by:
retainLackingEvent
in interfaceAuditEventService
-