private List<RcObjectMetadata> getObjects(RcCollectionMetadata rcCollMd) { ArrayList<RcObjectMetadata> rcObjMdLst = new ArrayList<RcObjectMetadata>(); rcObjMdLst.addAll(rcCollMd.getObjectMap().values()); for (RcCollectionMetadata rcSubCollMd : rcCollMd.getCollectionMap().values()) { rcObjMdLst.addAll(getObjects(rcSubCollMd)); } return rcObjMdLst; }
private static Map<String, RcObjectMetadata> mapCollection(RcCollectionMetadata rcCollMd) { HashMap<String, RcObjectMetadata> m = new HashMap<String, RcObjectMetadata>(); for (RcObjectMetadata rcObjMd : rcCollMd.getObjectMap().values()) { m.put(rcObjMd.getId(), rcObjMd); } for (RcCollectionMetadata rcSubCollMd : rcCollMd.getCollectionMap().values()) { m.putAll(mapCollection(rcSubCollMd)); } return m; }
private static int countObjects(RcCollectionMetadata rcCollMd) { int objCnt = rcCollMd.getObjectMap().size(); for (RcCollectionMetadata rcSubCollMd : rcCollMd.getCollectionMap().values()) { objCnt += countObjects(rcSubCollMd); } return objCnt; }
private void addCollections(List<RcCollectionMetadata> rcCollMdLst, DefaultMutableTreeNode parentNode) { Collections.sort(rcCollMdLst, COLL_TITLE_COMPARATOR); HashSet<String> collIdSet; for (RcCollectionMetadata rcCollMd : rcCollMdLst) { DefaultMutableTreeNode collNode = new DefaultMutableTreeNode(rcCollMd); parentNode.add(collNode); this.collectionNodeMap.put(rcCollMd.getId(), collNode); for (String objId : rcCollMd.getObjectMap().keySet()) { collIdSet = this.assignedObjectMap.get(objId); if (collIdSet == null) { collIdSet = new HashSet<String>(); this.assignedObjectMap.put(objId, collIdSet); } collIdSet.add(rcCollMd.getId()); } this.addCollections(new ArrayList<RcCollectionMetadata>(rcCollMd.getCollectionMap().values()), collNode); } }
private static void mapCollection(RcCollectionMetadata rcCollMd, Map<String, RcCollectionMetadata> rcCollMdMap, boolean allCollections) { if (allCollections) { rcCollMdMap.put(rcCollMd.getId(), rcCollMd); } else if (rcCollMd.getObjectMap().size() > 0) { rcCollMdMap.put(rcCollMd.getId(), rcCollMd); } for (RcCollectionMetadata rcSubCollMd : rcCollMd.getCollectionMap().values()) { mapCollection(rcSubCollMd, rcCollMdMap, allCollections); } } }
/** * Adds a collection and all it's sub-collections to the collection map. * * @param rcCollMd * The collection to map. */ private void mapCollection(RcCollectionMetadata rcCollMd) { this.rcCollectionMetadataIdMap.put(rcCollMd.getId(), rcCollMd); this.rcCollectionMetadataFacetPathMap.put(RcWebSearchUtils.getFacetPathForCollection(rcCollMd), rcCollMd); for (String rcObjId : rcCollMd.getObjectMap().keySet()) { if (!this.rcObjIdToCollIdMap.containsKey(rcObjId)) { this.rcObjIdToCollIdMap.put(rcObjId, rcCollMd.getId()); } } for (RcCollectionMetadata rcSubCollMd : rcCollMd.getCollectionMap().values()) { mapCollection(rcSubCollMd); } }
for (RcCollectionMetadata rcSubCollMd : rcCollMd.getCollectionMap().values()) {
siblingCollections = new ArrayList<RcCollectionMetadata>(rcParentCollMd.getCollectionMap().values()); rcParentCollMd.getCollectionMap().put(newMeta.getId(), newMeta);
((RcCollectionMetadata) this.selectedCollection.getParentMetadata()).getCollectionMap().remove(this.selectedCollection.getId());