001package com.avaje.ebean.delegate;
002
003import com.avaje.ebean.Query;
004import com.avaje.ebean.Transaction;
005
006import java.util.List;
007
008/**
009 * Created by rob on 13/01/16.
010 */
011public interface InterceptPublish {
012
013  <T> T publish(Class<T> beanType, Object id, Transaction transaction);
014
015  <T> T publish(Class<T> beanType, Object id);
016
017  <T> List<T> publish(Query<T> query, Transaction transaction);
018
019  <T> List<T> publish(Query<T> query);
020
021  <T> T draftRestore(Class<T> beanType, Object id, Transaction transaction);
022
023  <T> T draftRestore(Class<T> beanType, Object id);
024
025  <T> List<T> draftRestore(Query<T> query, Transaction transaction);
026
027  <T> List<T> draftRestore(Query<T> query);
028}