001package io.ebean.event.changelog; 002 003/** 004 * Listen for changes. 005 * <p> 006 * Implementations can take the changes and store them in a document store for auditing purposes etc. 007 * </p> 008 */ 009public interface ChangeLogPrepare { 010 011 /** 012 * In the foreground prepare the changeLog for sending. 013 * <p> 014 * This is intended to set extra context information onto the ChangeSet such 015 * as the application user id and client ip address. 016 * </p> 017 * <p> 018 * Returning false means the changeLog is not sent to the log() method in a background thread 019 * and implies that the changeSet should be ignored or that is has been handled in this prepare() 020 * method call. 021 * </p> 022 * 023 * @return true if the changeLog should then be sent to the log method in a background thread. 024 */ 025 boolean prepare(ChangeSet changeSet); 026 027}