public static PageControl getExplicitPageControl(int firstRecord, int recordCount) { PageControl pc = new PageControl(-1, recordCount); pc.firstRecord = firstRecord; return pc; }
@Override public void setPaging(int pageNumber, int pageSize) { pageControl.setPageNumber(pageNumber); pageControl.setPageSize(pageSize); }
public void clearPaging() { PageControl unlimited = PageControl.getUnlimitedInstance(); this.pageNumber = unlimited.getPageNumber(); this.pageSize = unlimited.getPageSize(); this.pageControlOverrides = null; }
public Object clone() { return new PageControl(pageNumber, pageSize, getOrderingFieldsAsArray()); }
PageControl pc = new PageControl(); pc.setPageNumber(0); pc.setPageSize(PAGE_SIZE); // condition composites are small so we can grab alot; use the setter, constructor limits this to 100 pc.setPageNumber(pc.getPageNumber() + 1);
if (pageControl.getPageSize() == PageControl.SIZE_UNLIMITED && pageControl.getPageNumber() != 0) { pageControl.setPageNumber(0); if (results.getTotalSize() <= pageControl.getStartRow() || (results.isEmpty() && pageControl.getPageNumber() != 0)) { if (log.isTraceEnabled()) { if (results.getTotalSize() <= pageControl.getStartRow()) { pageControl.reset(); // this will reset to page 1, but will not reset any ordering. if (log.isTraceEnabled()) { pageControl.reset(); // this will reset to page 1, but will not reset any ordering. if (log.isTraceEnabled()) {
PageControl pageControl = new PageControl(0, 20); Query query = PersistenceUtility.createQueryWithOrderBy(entityManager, Configuration.QUERY_GET_PLUGIN_CONFIG_MAP_BY_GROUP_ID, new OrderingField("r.id", PageOrdering.ASC)); break; pageControl.setPageNumber(pageControl.getPageNumber() + 1); // advance the page
private static String addLimitOffsetToQuery(String query, PageControl pageControl) { StringBuilder queryWithPagingSorting = new StringBuilder(query.length() + 50); queryWithPagingSorting.append(query); // for postgres, first order by queryWithPagingSorting.append(getOrderByFragment(pageControl.getOrderingFieldsAsArray())); // for postgres, then paginate queryWithPagingSorting.append(" LIMIT ").append(pageControl.getPageSize()); queryWithPagingSorting.append(" OFFSET ").append(pageControl.getStartRow()); return queryWithPagingSorting.toString(); } }
@Override @RequiredPermission(Permission.MANAGE_INVENTORY) public List<Resource> getQueuedPlatformChildServers(Subject user, InventoryStatus status, Resource platform) { PageList<Resource> childServers = resourceManager.findChildResourcesByCategoryAndInventoryStatus(user, platform, ResourceCategory.SERVER, status, PageControl.getUnlimitedInstance()); return childServers; }
public StandardBindings(PrintWriter output, RhqFacade rhqFacade) { facadeChangeListeners = new HashSet<RhqFacadeChangeListener>(); PageControl pc = new PageControl(); pc.setPageNumber(-1); //these are generic and don't require an RHQ facade... put(UNLIMITED_PC, pc); put(PAGE_CONTROL, PageControl.getUnlimitedInstance()); put(EXPORTER, new Exporter()); put(PRETTY, new TabularWriter(output)); put(ASSERT, new ScriptAssert()); setFacade(output, rhqFacade); }
} else { if (criteria.getPageNumber() == null || criteria.getPageSize() == null) { pc = PageControl.getUnlimitedInstance(); } else { pc = new PageControl(criteria.getPageNumber(), criteria.getPageSize()); pc.addDefaultOrderingField(getCleansedFieldName(sortField, 4), pageOrdering); if (!pc.isUnlimited() && criteria.isSupportsAddSortId()) { pc.addDefaultOrderingField("id");
int page = pc.getPageNumber(); if (resultList.getTotalSize()> (pc.getPageNumber() +1 ) * pc.getPageSize()) { int nextPage = page+1; if (!pc.isUnlimited()) { int lastPage = (resultList.getTotalSize() / pc.getPageSize() ) -1;
@Override public PageList<Resource> findGroupMemberCandidateResources(Subject subject, ResourceCriteria criteria, int[] alreadySelectedResourceIds) { PageControl originalPageControl = getPageControl(criteria); if (originalPageControl.isUnlimited()) { throw new UnsupportedOperationException("Supplied criteria has an unlimited PageControl"); } Set<Integer> alreadySelectedResourceIdSet = new HashSet<Integer>( ArrayUtils.wrapInList(alreadySelectedResourceIds == null ? new int[0] : alreadySelectedResourceIds)); PageControl pageControl = (PageControl) originalPageControl.clone(); criteria.setPageControl(pageControl); int requiredPageSize = pageControl.getPageSize(); criteria.setRestriction(COUNT_ONLY); int totalSize = findResourcesByCriteria(subject, criteria).getTotalSize(); int totalPages = (totalSize / requiredPageSize) + (((totalSize % requiredPageSize) > 0) ? 1 : 0); criteria.setRestriction(COLLECTION_ONLY); List<Resource> candidates = new LinkedList<Resource>(); for (int pageNumber = 0; candidates.size() < requiredPageSize && pageNumber < totalPages; pageNumber++) { pageControl.setPageNumber(pageNumber); PageList<Resource> foundResources = findResourcesByCriteria(subject, criteria); Collection<Resource> filteredResources = filterOutAlreadySelectedResources(foundResources, alreadySelectedResourceIdSet); candidates.addAll(filteredResources); } if (candidates.size() > requiredPageSize) { candidates = candidates.subList(0, requiredPageSize); } return new PageList<Resource>(candidates, totalSize, originalPageControl); }
public static void testResourceGroupCriteria() { ResourceGroupCriteria groupCriteria = new ResourceGroupCriteria(); groupCriteria.addSortName(PageOrdering.DESC); groupCriteria.addSortResourceTypeName(PageOrdering.ASC); groupCriteria.addSortPluginName(PageOrdering.DESC); CriteriaQueryGenerator generator = new CriteriaQueryGenerator(new Subject(), groupCriteria); System.out.println(generator.getQueryString(false)); System.out.println(generator.getQueryString(true)); PageControl customPC = new PageControl(); customPC.addDefaultOrderingField("0", PageOrdering.DESC); customPC.addDefaultOrderingField("name", PageOrdering.DESC); customPC.addDefaultOrderingField("resourceType.name", PageOrdering.ASC); groupCriteria.setPageControl(customPC); System.out.println(generator.getQueryString(false)); System.out.println(generator.getQueryString(true)); }
@Override @SuppressWarnings("unchecked") public List<IntegerOptionItem> findAlertDefinitionOptionItemsForGroup(Subject subject, int groupId) { PageControl pageControl = PageControl.getUnlimitedInstance(); pageControl.initDefaultOrderingField("ad.name", PageOrdering.ASC); Query query = PersistenceUtility.createQueryWithOrderBy(entityManager, AlertDefinition.QUERY_FIND_OPTION_ITEMS_BY_GROUP, pageControl); query.setParameter("groupId", groupId); List<IntegerOptionItem> results = query.getResultList(); return results; }
PageControl pageControl = new PageControl(); pageControl.setPageSize(200); criteria.setPageControl(pageControl);
int minTotalSize = getStartRow(); int pageSize = isUnlimited() ? Integer.MAX_VALUE : getPageSize();
if (pageControl.getPrimarySortColumn() != null) { PageOrdering order = (pageControl.getPrimarySortOrder() == null) ? PageOrdering.ASC : pageControl .getPrimarySortOrder(); filter = getOrderByFragment(new OrderingField(pageControl.getPrimarySortColumn(), order)); if (pageControl.getPageSize() > 0) { query.setFirstResult(pageControl.getPageNumber() * pageControl.getPageSize()); query.setMaxResults(pageControl.getPageSize());
public static void setDataPage(Query query, PageControl pageControl) { if (pageControl.getPageSize() > 0) { query.setFirstResult(pageControl.getStartRow()); query.setMaxResults(pageControl.getPageSize()); } }
public boolean isUnlimited() { return getPageNumber() == 0 && getPageSize() == SIZE_UNLIMITED; }