Class PageLoaderStrategyHelper

java.lang.Object
org.eclipse.nebula.widgets.pagination.PageLoaderStrategyHelper

public class PageLoaderStrategyHelper
extends java.lang.Object
This class help you to configure a PageableController to manage paginated list data in a Viewer. This helper manages the 2 following strategies for pagination :
  • load the paginated list and replace data from the viewer with the new list. See PageLoaderStrategyHelper#loadPageAndReplaceItems(PageableController, Viewer, IPageLoader)
  • load the paginated list and add to the data of the viewer the new list. See PageLoaderStrategyHelper#loadPageAndAddItems(PageableController, TableViewer, IPageLoader)
  • Constructor Details

  • Method Details

    • loadPageAndReplaceItems

      public static void loadPageAndReplaceItems​(PageableController controller, org.eclipse.jface.viewers.Viewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      This method loads the paginated list by using the given page loader IPageLoader and information about pagination from the given controller PageableController. After loading paginated list returned in a pagination structure PageResult, this method :
      • update the total elements of the given controller PageableController
      • refresh the given Viewer by replacing data with the new paginated list.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
    • createLoadPageAndReplaceItemsListener

      public static IPageChangedListener createLoadPageAndReplaceItemsListener​(PageableController controller, org.eclipse.jface.viewers.StructuredViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      Create IPageChangedListener with pagination "replace" strategy. See PageLoaderStrategyHelper#loadPageAndReplaceItems(PageableController, Viewer, IPageLoader) for more information.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
      Returns:
    • loadPageAndAddItems

      public static void loadPageAndAddItems​(PageableController controller, org.eclipse.jface.viewers.TableViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      This method loads the paginated list by using the given page loader IPageLoader and information about pagination from the given controller PageableController. After loading paginated list returned in a pagination structure PageResult, this method :
      • update the total elements of the given controller PageableController
      • refresh the given Viewer by replacing data with the new paginated list.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
    • createLoadPageAndAddItemsListener

      public static IPageChangedListener createLoadPageAndAddItemsListener​(PageableController controller, org.eclipse.jface.viewers.TableViewer viewer, IPageLoader<?> pageLoader, IPageLoaderHandler<PageableController> handler)
      Create IPageChangedListener with pagination "add" strategy. See PageLoaderStrategyHelper#loadPageAndAddItems(PageableController, TableViewer, IPageLoader) for more information.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
      Returns:
    • createLoadPageAndAddItemsListener

      public static IPageChangedListener createLoadPageAndAddItemsListener​(PageableController controller, org.eclipse.jface.viewers.TableViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      Create IPageChangedListener with pagination "add" strategy. See PageLoaderStrategyHelper#loadPageAndAddItems(PageableController, TableViewer, IPageLoader) for more information.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
      Returns:
    • loadPageAndAddItems

      public static void loadPageAndAddItems​(PageableController controller, java.lang.Object parentElementOrTreePath, org.eclipse.jface.viewers.TreeViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      This method loads the paginated list by using the given page loader IPageLoader and information about pagination from the given controller PageableController. After loading paginated list returned in a pagination structure PageResult, this method :
      • update the total elements of the given controller PageableController
      • refresh the given Viewer by replacing data with the new paginated list.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
    • createLoadPageAndAddItemsListener

      public static IPageChangedListener createLoadPageAndAddItemsListener​(PageableController controller, java.lang.Object parentElementOrTreePath, org.eclipse.jface.viewers.TreeViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      Create IPageChangedListener with pagination "add" strategy. See PageLoaderStrategyHelper#loadPageAndAddItems(PageableController, TableViewer, IPageLoader) for more information.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
      Returns:
    • loadPageAndAddItems

      public static void loadPageAndAddItems​(PageableController controller, org.eclipse.jface.viewers.AbstractListViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      This method loads the paginated list by using the given page loader IPageLoader and information about pagination from the given controller PageableController. After loading paginated list returned in a pagination structure PageResult, this method :
      • update the total elements of the given controller PageableController
      • refresh the given Viewer by replacing data with the new paginated list.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
    • createLoadPageAndAddItemsListener

      public static IPageChangedListener createLoadPageAndAddItemsListener​(PageableController controller, org.eclipse.jface.viewers.AbstractListViewer viewer, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      Create IPageChangedListener with pagination "add" strategy. See PageLoaderStrategyHelper#loadPageAndAddItems(PageableController, TableViewer, IPageLoader) for more information.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      viewer - the viewer to refresh with new paginated list.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
      Returns:
    • loadPageAndUpdateTotalElements

      public static java.lang.Object loadPageAndUpdateTotalElements​(PageableController controller, IPageLoader<?> pageLoader, IPageContentProvider pageContentProvider, IPageLoaderHandler<PageableController> handler)
      Load the paginated list and update the total element of the given controller.
      Parameters:
      controller - the controller to use to load paginated list and update the total elements.
      pageLoader - the page loader used to load paginated list.
      handler - the page loader handler to observe before/after page loading process. If null no observation is done.
      Returns:
      the pagination PageResult.
    • loadPage

      public static java.lang.Object loadPage​(IPageLoader<?> pageLoader, PageableController controller)
      Load the paginated list.
      Parameters:
      pageLoader - the page loader used to load paginated list.
      pageable - the pagination Pageable.
      Returns:
      the pagination PageResult.