001package com.avaje.ebean.delegate; 002 003import com.avaje.ebean.EbeanServer; 004import com.avaje.ebean.Query; 005import com.avaje.ebean.Transaction; 006 007import java.util.List; 008 009/** 010 * Wraps an underlying EbeanServer providing the publishing features. 011 * <p> 012 * Can you used for testing purposes when you want to create a test double that 013 * only replaces some of the underlying functionality of the EbeanServer. 014 */ 015public class DelegatePublish implements InterceptPublish { 016 017 protected EbeanServer delegate; 018 019 public DelegatePublish(EbeanServer delegate) { 020 this.delegate = delegate; 021 } 022 023 @Override 024 public <T> T publish(Class<T> beanType, Object id, Transaction transaction) { 025 return delegate.publish(beanType, id, transaction); 026 } 027 028 @Override 029 public <T> T publish(Class<T> beanType, Object id) { 030 return delegate.publish(beanType, id); 031 } 032 033 @Override 034 public <T> List<T> publish(Query<T> query, Transaction transaction) { 035 return delegate.publish(query, transaction); 036 } 037 038 @Override 039 public <T> List<T> publish(Query<T> query) { 040 return delegate.publish(query); 041 } 042 043 @Override 044 public <T> T draftRestore(Class<T> beanType, Object id, Transaction transaction) { 045 return delegate.draftRestore(beanType, id, transaction); 046 } 047 048 @Override 049 public <T> T draftRestore(Class<T> beanType, Object id) { 050 return delegate.draftRestore(beanType, id); 051 } 052 053 @Override 054 public <T> List<T> draftRestore(Query<T> query, Transaction transaction) { 055 return delegate.draftRestore(query, transaction); 056 } 057 058 @Override 059 public <T> List<T> draftRestore(Query<T> query) { 060 return delegate.draftRestore(query); 061 } 062}