/** * Delete some data objects. * @param rows the objects to delete * @param options the parameters to apply (ignored) */ private void deleteDataObjects(IObject[] rows, Parameters options) { for (IObject object : rows) { deleteDataObject(object, options); } }
@Override @RolesAllowed("user") @Transactional(readOnly = false) public void unlink(ILink[] arg0, Parameters arg1) { deleteDataObjects(arg0, arg1); }
@Override @RolesAllowed("user") @Transactional(readOnly = true) public Map getCollectionCount(String type, String property, Set ids, Parameters options) { String parsedProperty = LsidUtils.parseField(property); checkType(type); checkProperty(type, parsedProperty); Map<Long, Integer> results = new HashMap<Long, Integer>(); String query = "select size(table." + parsedProperty + ") from " + type + " table where table.id = :id"; // FIXME: optimize by doing new list(id,size(table.property)) ... group // by id for (Iterator iter = ids.iterator(); iter.hasNext();) { Long id = (Long) iter.next(); Query<List<Integer>> q = getQueryFactory().lookup(query, new Parameters().addId(id)); Integer count = iQuery.execute(q).get(0); results.put(id, count); } return results; }
@Override @RolesAllowed("user") @Transactional(readOnly = true) @SuppressWarnings("unchecked") public Set getImagesByOptions(Parameters options) { options = new Parameters(options); // Checks for null if (options.getStartTime() == null && options.getEndTime() == null) { throw new ApiUsageException("start or end time option " + "is required for getImagesByOptions()."); } Query<List<IObject>> q = getQueryFactory().lookup( PojosGetImagesByOptionsQueryDefinition.class.getName(), options); List<IObject> l = iQuery.execute(q); return new HashSet<IObject>(l); }
@Override @RolesAllowed("user") @Transactional(readOnly = true) @SuppressWarnings("unchecked") public Set getUserImages(Parameters options) { options = new Parameters(options); // Checks for null if (!options.isExperimenter() && !options.isGroup()) { throw new ApiUsageException("experimenter or group option " + "is required for getUserImages()."); } Query<List<Image>> q = getQueryFactory().lookup( PojosGetUserImagesQueryDefinition.class.getName(), options); List<Image> l = iQuery.execute(q); return new HashSet<Image>(l); }
Query<List<IObject>> q = getQueryFactory().lookup( PojosGetImagesQueryDefinition.class.getName(), options.addIds(effIds).addClass(effType));
Query<List<Image>> q = getQueryFactory().lookup( PojosFindHierarchiesQueryDefinition.class.getName(), options.addClass(rootNodeType).addIds(imageIds));
Query<List<IObject>> q = getQueryFactory().lookup( PojosLoadHierarchyQueryDefinition.class.getName(), options.addClass(rootNodeType).addIds(rootNodeIds)); linked.add(i.next().getId()); q = getQueryFactory().lookup( PojosLoadHierarchyQueryDefinition.class.getName(), options.addClass(Dataset.class).addIds(rootNodeIds)); linked.add(i.next().getId()); q = getQueryFactory().lookup( PojosLoadHierarchyQueryDefinition.class.getName(), options.addClass(Plate.class).addIds(rootNodeIds));