Class AuditServiceImpl

java.lang.Object
org.alfresco.repo.audit.AuditServiceImpl
All Implemented Interfaces:
AuditService

public class AuditServiceImpl extends Object implements AuditService
The implementation of the AuditService for application auditing.
Since:
3.2
Author:
Derek Hulley
  • Constructor Details

    • AuditServiceImpl

      public AuditServiceImpl()
  • Method Details

    • setAuditComponent

      public void setAuditComponent(AuditComponent auditComponent)
    • isAuditEnabled

      public boolean isAuditEnabled()
      Specified by:
      isAuditEnabled in interface AuditService
      Returns:
      Returns true if auditing is globally enabled
      Since:
      3.4
    • setAuditEnabled

      public void setAuditEnabled(boolean enable)
      Enable or disable the global auditing state
      Specified by:
      setAuditEnabled in interface AuditService
      Parameters:
      enable - true to enable auditing globally or false to disable
      Since:
      3.4
    • getAuditApplications

      public Map<String,AuditService.AuditApplication> getAuditApplications()
      Get all registered audit applications
      Specified by:
      getAuditApplications in interface AuditService
      Returns:
      Returns a map of audit applications keyed by their name
      Since:
      3.4
    • isAuditEnabled

      public boolean isAuditEnabled(String applicationName, String path)
      Specified by:
      isAuditEnabled in interface AuditService
      Parameters:
      applicationName - the name of the application to check
      path - the path to check
      Returns:
      Returns true if auditing is enabled for the given path
      Since:
      3.2
    • enableAudit

      public void enableAudit(String applicationName, String path)
      Enable auditing for an application path
      Specified by:
      enableAudit in interface AuditService
      Parameters:
      applicationName - the name of the application to check
      path - the path to enable
      Since:
      3.2
    • disableAudit

      public void disableAudit(String applicationName, String path)
      Disable auditing for an application path
      Specified by:
      disableAudit in interface AuditService
      Parameters:
      applicationName - the name of the application to check
      path - the path to disable
      Since:
      3.2
    • clearAudit

      public int clearAudit(String applicationName)
      Remove all audit entries for the given application
      Specified by:
      clearAudit in interface AuditService
      Parameters:
      applicationName - the name of the application for which to remove entries
      Returns:
      Returns the number of audit entries deleted
      Since:
      3.2
    • clearAudit

      public int clearAudit(String applicationName, Long fromTime, Long toTime)
      Remove audit entries for the given application between the time ranges. If no start time is given then entries are deleted as far back as they exist. If no end time is given then entries are deleted up until the current time.
      Specified by:
      clearAudit in interface AuditService
      Parameters:
      applicationName - the name of the application for which to remove entries
      fromTime - the start time of entries to remove (inclusive and optional)
      toTime - the end time of entries to remove (exclusive and optional)
      Returns:
      Returns the number of audit entries deleted
      Since:
      3.4
    • clearAuditByIdRange

      public int clearAuditByIdRange(String applicationName, Long fromId, Long toId)
      Remove audit entries for the given application between the audit entry ids.
      Specified by:
      clearAuditByIdRange in interface AuditService
      Parameters:
      applicationName - the name of the application for which to remove entries
      fromId - the start time of entries to remove (inclusive and optional)
      toId - the end time of entries to remove (exclusive and optional)
      Returns:
      Returns the number of audit entries deleted
      Since:
      5.2.2
    • clearAudit

      public int clearAudit(List<Long> auditEntryIds)
      Delete a discrete list of audit entries.

      This method should not be called while processing query results.

      Specified by:
      clearAudit in interface AuditService
      Parameters:
      auditEntryIds - the IDs of all audit entries to delete
      Returns:
      Returns the number of audit entries deleted
      Since:
      3.4
    • auditQuery

      public void auditQuery(AuditService.AuditQueryCallback callback, AuditQueryParameters parameters, int maxResults)
      Issue an audit query using the given parameters and consuming results in the callback. Results are returned in entry order, corresponding to time order.
      Specified by:
      auditQuery in interface AuditService
      Parameters:
      callback - the callback that will handle results
      parameters - the parameters for the query (may not be null)
      maxResults - the maximum number of results to retrieve (must be greater than 0)
      Since:
      3.3
    • getAuditMinMaxByApp

      public HashMap<String,Long> getAuditMinMaxByApp(String applicationName, List<String> extremes)
      Issue an audit query to retrieve min / max audit record id for a given application.
      Specified by:
      getAuditMinMaxByApp in interface AuditService
      Parameters:
      applicationName - the name of the application
      extremes - a list containing min/max or both
      Returns:
      a map containing min/max and the associated value
    • getAuditEntriesCountByApp

      public int getAuditEntriesCountByApp(String applicationName)
      Issue an audit query to retrieve min / max audit record id for a given application.
      Specified by:
      getAuditEntriesCountByApp in interface AuditService
      Parameters:
      applicationName - the name of the application
      Returns:
      a map containing min/max and the associated value
    • getAuditEntriesCountByAppAndProperties

      public int getAuditEntriesCountByAppAndProperties(String applicationName, AuditQueryParameters parameters)
      Issue an audit query to retrieve min / max audit record id for a given application and properties
      Specified by:
      getAuditEntriesCountByAppAndProperties in interface AuditService
      Parameters:
      applicationName - the name of the application
      parameters - audit parameters provided by the where clause on the ReST API
      Returns:
      a map containing min/max and the associated value