001package com.avaje.ebean.event;
002
003import java.util.Set;
004
005import com.avaje.ebean.Ebean;
006
007/**
008 * Listen for bulk table events that occur.
009 * <p>
010 * These events can be triggered via
011 * {@link Ebean#externalModification(String, boolean, boolean, boolean)} or
012 * automatically determined from Ebean bulk update statements.
013 * </p>
014 * 
015 * @author Robin Bygrave
016 * 
017 */
018public interface BulkTableEventListener {
019
020  /**
021   * Return the tables that this listener is interested in.
022   */
023  Set<String> registeredTables();
024
025  /**
026   * Process the event.
027   */
028  void process(BulkTableEvent bulkTableEvent);
029
030}