/** * Find all of the elements reachable from the startElement. * * @param startElement name of the element to start from * @param reachableElementMap Map of elements that can be reached from the startElement * @param accumulator a collection of reachable element names */ protected void findAllReachableElements(String startElement, Map<String, Set<String>> reachableElementMap, Set<String> accumulator) { Set<String> reachableIds = reachableElementMap.get(startElement); accumulator.add(startElement); if (reachableIds != null) { for (String reachable : reachableIds) { // don't explore a previously explored element; prevent loop if (!accumulator.contains(reachable)) { findAllReachableElements(reachable, reachableElementMap, accumulator); } } } }
findAllReachableElements(startElement, reachableElementMap, allReachableElements); for (String elementId : reachableElementMap.keySet()) { if (!allReachableElements.contains(elementId)) {
/** * Find all of the elements reachable from the startElement. * * @param startElement * @param reachableElementMap * @param accumulator a collection of reachable element names */ private void findAllReachableElements(String startElement, Map<String, Set<String>> reachableElementMap, Set<String> accumulator) { Set<String> reachableIds = reachableElementMap.get(startElement); accumulator.add(startElement); if (reachableIds != null) { for (String reachable : reachableIds) { // don't explore a previously explored element; prevent loop if (!accumulator.contains(reachable)) { findAllReachableElements(reachable, reachableElementMap, accumulator); } } } }
/** * Find all of the elements reachable from the startElement. * * @param startElement * @param reachableElementMap * @param accumulator a collection of reachable element names */ protected void findAllReachableElements(String startElement, Map<String, Set<String>> reachableElementMap, Set<String> accumulator) { Set<String> reachableIds = reachableElementMap.get(startElement); accumulator.add(startElement); if (reachableIds != null) { for (String reachable : reachableIds) { // don't explore a previously explored element; prevent loop if (!accumulator.contains(reachable)) { findAllReachableElements(reachable, reachableElementMap, accumulator); } } } }
/** * Find all of the elements reachable from the startElement. * * @param startElement name of the element to start from * @param reachableElementMap Map of elements that can be reached from the startElement * @param accumulator a collection of reachable element names */ protected void findAllReachableElements(String startElement, Map<String, Set<String>> reachableElementMap, Set<String> accumulator) { Set<String> reachableIds = reachableElementMap.get(startElement); accumulator.add(startElement); if (reachableIds != null) { for (String reachable : reachableIds) { // don't explore a previously explored element; prevent loop if (!accumulator.contains(reachable)) { findAllReachableElements(reachable, reachableElementMap, accumulator); } } } }
/** * Find all of the elements reachable from the startElement. * * @param startElement name of the element to start from * @param reachableElementMap Map of elements that can be reached from the startElement * @param accumulator a collection of reachable element names */ protected void findAllReachableElements(String startElement, Map<String, Set<String>> reachableElementMap, Set<String> accumulator) { Set<String> reachableIds = reachableElementMap.get(startElement); accumulator.add(startElement); if (reachableIds != null) { for (String reachable : reachableIds) { // don't explore a previously explored element; prevent loop if (!accumulator.contains(reachable)) { findAllReachableElements(reachable, reachableElementMap, accumulator); } } } }
findAllReachableElements(startElement, reachableElementMap, allReachableElements); for (String elementId : reachableElementMap.keySet()) { if (!allReachableElements.contains(elementId)) {
findAllReachableElements(startElement, reachableElementMap, allReachableElements); for (String elementId : reachableElementMap.keySet()) { if (!allReachableElements.contains(elementId)) {
findAllReachableElements(startElement, reachableElementMap, allReachableElements); for (String elementId : reachableElementMap.keySet()) { if (!allReachableElements.contains(elementId)) {
findAllReachableElements(startElement, reachableElementMap, allReachableElements); for (String elementId : reachableElementMap.keySet()) { if (!allReachableElements.contains(elementId)) {