Class JdbcAuditTrailManager

java.lang.Object
org.apereo.cas.audit.spi.AbstractAuditTrailManager
org.apereo.inspektr.audit.support.JdbcAuditTrailManager
All Implemented Interfaces:
org.apereo.cas.util.thread.Cleanable, org.apereo.inspektr.audit.AuditTrailManager, org.springframework.beans.factory.DisposableBean

public class JdbcAuditTrailManager extends org.apereo.cas.audit.spi.AbstractAuditTrailManager

Implementation of AuditTrailManager to persist the audit trail to the AUDIT_TRAIL table in the Oracle data base.

 CREATE TABLE COM_AUDIT_TRAIL
 (
  AUD_USER      VARCHAR2(100)  NOT NULL,
  AUD_CLIENT_IP VARCHAR(15)    NOT NULL,
  AUD_SERVER_IP VARCHAR(15)    NOT NULL,
  AUD_RESOURCE  VARCHAR2(1024) NOT NULL,
  AUD_ACTION    VARCHAR2(100)  NOT NULL,
  APPLIC_CD     VARCHAR2(5)    NOT NULL,
  AUD_DATE      TIMESTAMP      NOT NULL,
  AUD_GEOLOCATION   VARCHAR2(100)  NOT NULL,
  AUD_USERAGENT     VARCHAR2(100)  NOT NULL,
  AUD_LOCALE        VARCHAR2(50)   NOT NULL,
  AUD_HEADERS       JSON   NOT NULL,
  AUD_EXTRA_INFO    JSON   NOT NULL
 )
 
Since:
1.0
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    Auditable columns in the database table.

    Nested classes/interfaces inherited from interface org.apereo.inspektr.audit.AuditTrailManager

    org.apereo.inspektr.audit.AuditTrailManager.AuditableFields, org.apereo.inspektr.audit.AuditTrailManager.AuditFormats, org.apereo.inspektr.audit.AuditTrailManager.WhereClauseFields
  • Field Summary

    Fields inherited from interface org.apereo.inspektr.audit.AuditTrailManager

    LOG, MAPPER
  • Constructor Summary

    Constructors
    Constructor
    Description
    JdbcAuditTrailManager(org.springframework.transaction.support.TransactionOperations transactionTemplate, org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    Set<? extends org.apereo.inspektr.audit.AuditActionContext>
    getAuditRecords(Map<org.apereo.inspektr.audit.AuditTrailManager.WhereClauseFields,Object> whereClause)
     
    void
     
    void
     
    void
    setColumnLength(int columnLength)
     
    void
    setDateFormatterFunction(String dateFormatterFunction)
     
    void
    setDateFormatterPattern(String dateFormatterPattern)
     
    void
    setHeaderNames(List<String> headerNames)
     
    void
    setSelectByDateSqlTemplate(String selectByDateSqlTemplate)
     
    void
    setTableName(String tableName)
     

    Methods inherited from class org.apereo.cas.audit.spi.AbstractAuditTrailManager

    destroy, getExecutorService, isAsynchronous, record, setAsynchronous

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.apereo.inspektr.audit.AuditTrailManager

    setAuditFormat
  • Constructor Details

    • JdbcAuditTrailManager

      public JdbcAuditTrailManager(org.springframework.transaction.support.TransactionOperations transactionTemplate, org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
  • Method Details

    • clean

      public void clean()
    • removeAll

      public void removeAll()
    • getAuditRecords

      public Set<? extends org.apereo.inspektr.audit.AuditActionContext> getAuditRecords(Map<org.apereo.inspektr.audit.AuditTrailManager.WhereClauseFields,Object> whereClause)
    • setTableName

      public void setTableName(String tableName)
    • setColumnLength

      public void setColumnLength(int columnLength)
    • setSelectByDateSqlTemplate

      public void setSelectByDateSqlTemplate(String selectByDateSqlTemplate)
    • setDateFormatterPattern

      public void setDateFormatterPattern(String dateFormatterPattern)
    • setDateFormatterFunction

      public void setDateFormatterFunction(String dateFormatterFunction)
    • setCleanupCriteria

      public void setCleanupCriteria(WhereClauseMatchCriteria cleanupCriteria)
    • setHeaderNames

      public void setHeaderNames(List<String> headerNames)