package org.audt4j.demo.spring.config; import java.util.ArrayList; import java.util.List; import org.audit4j.core.handler.ConsoleAuditHandler; import org.audit4j.core.handler.Handler; import org.audit4j.core.layout.SimpleLayout; import org.audit4j.handler.db.DatabaseAuditHandler; import org.audit4j.integration.spring.AuditAspect; import org.audit4j.integration.spring.SpringAudit4jConfig; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.EnableAspectJAutoProxy; @Configuration @EnableAspectJAutoProxy public class AuditConfig { @Bean public AuditAspect auditAspect() { AuditAspect auditAspect = new AuditAspect(); return auditAspect; } // If you want to load configurations from file // (resources/audit4j.conf.yaml), // comment below method @Bean public DatabaseAuditHandler databaseHandler() { DatabaseAuditHandler dbHandler = new DatabaseAuditHandler(); dbHandler.setEmbedded("true"); return dbHandler; } // If you want to load configurations from file // (resources/audit4j.conf.yaml), // comment below method @Bean public SpringAudit4jConfig springAudit4jConfig() { SpringAudit4jConfig springAudit4jConfig = new SpringAudit4jConfig(); springAudit4jConfig.setLayout(new SimpleLayout()); List<Handler> handlers = new ArrayList<Handler>(); handlers.add(new ConsoleAuditHandler()); handlers.add(databaseHandler()); springAudit4jConfig.setHandlers(handlers); springAudit4jConfig.setMetaData(new AuditMetaData()); return springAudit4jConfig; } }