@Override public PageList<DriftDefinitionComposite> findDriftDefinitionCompositesByCriteria(Subject subject, DriftDefinitionCriteria criteria) { PageList<DriftDefinition> defs = findDriftDefinitionsByCriteria(subject, criteria); PageList<DriftDefinitionComposite> result = new PageList<DriftDefinitionComposite>(defs.getPageControl()); List<DriftDefinitionComposite> composites = new ArrayList<DriftDefinitionComposite>(defs.size()); GenericDriftChangeSetCriteria csCriteria = new GenericDriftChangeSetCriteria(); for (DriftDefinition def : defs) { DriftDefinitionComposite composite = new DriftDefinitionComposite(def, null); csCriteria.addFilterDriftDefinitionId(def.getId()); csCriteria.addSortVersion(PageOrdering.DESC); csCriteria.setPageControl(PageControl.getSingleRowInstance()); PageList<? extends DriftChangeSet<?>> changeSets = findDriftChangeSetsByCriteria(subject, csCriteria); if (!changeSets.isEmpty()) { composite.setMostRecentChangeset(changeSets.get(0)); } composites.add(composite); } result.addAll(composites); return result; }
"Could not get consistent results of the paged data and a total count for " + CriteriaUtil.toString(criteria) + ". After " + e.getNumberOfAttempts() + " attempts, the collection size" + " is " + e.getList().size() + ", while the count query reports " + e.getList().getTotalSize() + " for " + pageControl + ". The discrepancy has not cleared up in " + e.getMillisecondsSpentTrying() + "ms so we're giving up, " LOG.debug("restriction=" + criteriaRestriction + ", resultSize=" + results.size() + ", resultCount=" + results.getTotalSize()); results = new PageList<T>(getCount(), pageControl); if (LOG.isDebugEnabled()) { LOG.debug("restriction=" + criteriaRestriction + ", resultCount=" + results.getTotalSize()); results = new PageList<T>(getCollection(), pageControl); if (LOG.isDebugEnabled()) { LOG.debug("restriction=" + criteriaRestriction + ", resultSize=" + results.size());
public PageList<Subject> findSubjectsByCriteria(Subject subject, SubjectCriteria criteria) { CriteriaQueryGenerator generator = new CriteriaQueryGenerator(subject, criteria); CriteriaQueryRunner<Subject> queryRunner = new CriteriaQueryRunner<Subject>(criteria, generator, entityManager); PageList<Subject> subjects = queryRunner.execute(); boolean canViewUsers = (authorizationManager.isSystemSuperuser(subject) || authorizationManager.hasGlobalPermission(subject, Permission.MANAGE_SECURITY) || authorizationManager .hasGlobalPermission(subject, Permission.VIEW_USERS)); if (!canViewUsers) { if (subjects.contains(subject)) { Subject attachedSubject = subjects.get(subjects.indexOf(subject)); subjects.clear(); subjects.add(attachedSubject); } else { subjects.clear(); } subjects.setTotalSize(subjects.size()); } return subjects; }
public PageList<TagReportComposite> findTagReportCompositesByCriteria(Subject subject, TagCriteria tagCriteria) { // TODO criteria stuff Query query = entityManager.createNamedQuery(Tag.QUERY_TAG_COMPOSITE_REPORT); PageList<TagReportComposite> result = new PageList<TagReportComposite>(); result.addAll(query.getResultList()); return result; }
public PhantomReadMaxAttemptsExceededException(int numberOfAttempts, PageList<?> list, long millisecondsSpentTrying) { super(initMessage(numberOfAttempts, list.size(), list.getTotalSize(), millisecondsSpentTrying)); this.numberOfAttempts = numberOfAttempts; this.list = list; this.millisecondsSpentTrying = millisecondsSpentTrying; }
@Override public InstalledPackage getBackingPackageForResource(Subject subject, int resourceId) { InstalledPackage result = null; // check if the resource is content backed if not, return null Resource res = resourceManager.getResourceById(subject, resourceId); ResourceType type = res.getResourceType(); if (!ResourceCreationDataType.CONTENT.equals(type.getCreationDataType())) { return null; } InstalledPackageCriteria criteria = new InstalledPackageCriteria(); criteria.addFilterResourceId(resourceId); PageList<InstalledPackage> ips = findInstalledPackagesByCriteria(subject, criteria); // should not be more than 1 if ((null != ips) && (ips.size() > 0)) { int mostRecentPackageIndex = 0; if (ips.size() > 1) { for (int index = 1; index < ips.size(); index++) { if (ips.get(index).getInstallationDate() > ips.get(mostRecentPackageIndex).getInstallationDate()) { mostRecentPackageIndex = index; } } } result = ips.get(mostRecentPackageIndex); // fetch these result.getPackageVersion().getGeneralPackage().getId(); result.getPackageVersion().getGeneralPackage().getPackageType().getId(); result.getPackageVersion().getArchitecture().getId(); } return result; }
@GET @Path("{id}") @ApiOperation("Gets info about a single plugin") public Response getPluginInfo( @ApiParam("The id of the plugin") @PathParam("id") int id, @Context HttpHeaders headers) { PluginCriteria crit = new PluginCriteria(); crit.addFilterId(id); PageList<Plugin> plugins = pluginManager.findPluginsByCriteria(caller, crit); if (plugins.isEmpty()) { throw new StuffNotFoundException("Plugin"); } return withMediaType(Response.ok(PluginRest.from(plugins.get(0))), headers).build(); }
public PageList<LdapGroup> findLdapGroupsByRole(int roleId, PageControl pageControl) { Role role = entityManager.find(Role.class, roleId); if (role == null) { throw new IllegalArgumentException("Could not find role[" + roleId + "] to lookup ldap Groups on"); } return new PageList<LdapGroup>(role.getLdapGroups(), role.getLdapGroups().size(), pageControl); }
/** * Returns the total size of the "master list" that this page is a subset of. * <p/> * <b>Note:</b> This method merely returns the size of this list if it is {@link #isUnbounded() unbounded}. * @return the total size */ public int getTotalSize() { return Math.max(this.size(), this.totalSize); }
pc); if (alertConditions.isEmpty()) { break; // didn't get any rows back, must not have any data or no more rows left to process rowsProcessed += alertConditions.size(); if (rowsProcessed >= alertConditions.getTotalSize()) { break; // we've processed all data, we can stop now
if ((results.getTotalSize() != 0 && results.getTotalSize() <= pageControl.getStartRow()) || (results.isEmpty() && pageControl.getPageNumber() != 0)) { if (log.isTraceEnabled()) { if (results.getTotalSize() != 0 && results.getTotalSize() <= pageControl.getStartRow()) { results = new PageList<T>();
@Override public PageList<PackageAndLatestVersionComposite> findPackagesWithLatestVersion(Subject subject, PackageCriteria criteria) { if (criteria.getFilterRepoId() == null) { throw new IllegalArgumentException("The criteria query has to have a filter for a specific repo."); } criteria.fetchVersions(true); PageList<Package> packages = findPackagesByCriteria(subject, criteria); PageList<PackageAndLatestVersionComposite> ret = new PageList<PackageAndLatestVersionComposite>( packages.getTotalSize(), packages.getPageControl()); for (Package p : packages) { PackageVersion latest = repoManager.getLatestPackageVersion(subject, p.getId(), criteria.getFilterRepoId()); ret.add(new PackageAndLatestVersionComposite(p, latest)); } return ret; }
boolean isInitialVersion = (bundles.getTotalSize() == 0); createdBundle = true; } else { bundle = bundles.get(0); checkCreateBundleVersionAuthz(subject, bundle.getId()); createdBundle = false; bvCriteria.fetchTags(true); PageList<BundleVersion> bundleVersions = bundleManager.findBundleVersionsByCriteria(subject, bvCriteria); if (bundleVersions != null && bundleVersions.size() == 1) { bundleVersion = bundleVersions.get(0); List<BundleFile> bundleFiles = bundleVersion.getBundleFiles(); if (bundleFiles != null && bundleFiles.size() > 0) {
if (results.getTotalSize() <= maxResources) { return results; for (Iterator<Resource> i = results.iterator(); i.hasNext();) { Resource r = i.next(); Integer typeId = r.getResourceType().getId(); while (maxResources < results.size()) { results.remove(maxResources);
/** * @see javax.faces.model.DataModel#getRowCount() */ @Override public int getRowCount() { if (this.currentPage == null) { loadDataPage(this.defaultPageControl); } return this.currentPage.getTotalSize(); }
private boolean waitForConfigurationUpdateToFinish(Subject subject, ResourceConfigurationUpdateCriteria criteria, int maxAttempts) { if (maxAttempts == 0) return false; PageList<ResourceConfigurationUpdate> configUpdates = configurationManager .findResourceConfigurationUpdatesByCriteria(subject, criteria); switch (configUpdates.get(0).getStatus()) { case INPROGRESS: // try it again in 2.5 sec break; case FAILURE: return false; default: return true; } try { Thread.sleep(2500L); } catch (InterruptedException e) { return false; } return waitForConfigurationUpdateToFinish(subject, criteria, maxAttempts - 1); }
if (!result.isEmpty() && criteria.isInventoryManagerRequired() && !authorizationManager.isInventoryManager(subject)) { List<Integer> resourceIds = new ArrayList<Integer>(result.size()); for (BundleResourceDeployment brd : result) { int resourceId = brd.getResource().getId(); for (Integer resourceId : resourceIds) { if (!authorizationManager.canViewResource(subject, resourceId)) { for (Iterator<BundleResourceDeployment> i = result.iterator(); i.hasNext();) { BundleResourceDeployment brd = i.next(); if (brd.getResource().getId() == resourceId.intValue()) {
PageControl pc = resultList.getPageControl(); int page = pc.getPageNumber(); if (resultList.getTotalSize()> (pc.getPageNumber() +1 ) * pc.getPageSize()) { int nextPage = page+1; int lastPage = (resultList.getTotalSize() / pc.getPageSize() ) -1; builder.header("X-collection-size",resultList.getTotalSize());
@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); }