package gov.samhsa.consent2share.infrastructure.report; import java.util.Collection; /** * An interface that provides the report data. {@link AbstractReportController} * depends on this interface to get the report data. * * @see AbstractReportController */ public interface ReportDataProvider { /** * Gets the report data. This method will be called by report controllers to * get the data for the report. * * @param <T> * the generic type * @param args * the args that can be passed down to the implementation to * parameterize the query * @return the report data that can be filled to the report */ public abstract <T> Collection<T> getReportData(Object... args); }