/** * Licensed under the Artistic License; you may not use this file * except in compliance with the License. * You may obtain a copy of the License at * * http://displaytag.sourceforge.net/license.html * * THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ package org.displaytag.pagination; import java.util.List; import org.displaytag.properties.SortOrderEnum; /** * Interface describing an externally sorted and paginated list. * @author JBN */ public interface PaginatedList { /** * Returns the current partial list * @return the current partial list */ List getList(); /** * Returns the page number of the partial list (starts from 1) * @return the page number of the partial list */ int getPageNumber(); /** * Returns the number of objects per page. Unless this page is the last one the partial list should thus have a size * equal to the result of this method * @return the number of objects per page */ int getObjectsPerPage(); /** * Returns the size of the full list * @return the size of the full list */ int getFullListSize(); /** * Returns the sort criterion used to externally sort the full list * @return the sort criterion used to externally sort the full list */ String getSortCriterion(); /** * Returns the sort direction used to externally sort the full list * @return the sort direction used to externally sort the full list */ SortOrderEnum getSortDirection(); /** * Returns an ID for the search used to get the list. It may be null. Such an ID can be necessary if the full list * is cached, in a way or another (in the session, in the business tier, or anywhere else), to be able to retrieve * the full list from the cache * @return the search ID */ String getSearchId(); }