Object[][] cycles = ComputeNodeOrder.computeNodeOrder(sorted, references.toArray(new Module[references.size()][]));
Object[][] cycles = ComputeNodeOrder.computeNodeOrder(sorted, references.toArray(new Module[references.size()][]));
Object[][] cycles = ComputeNodeOrder.computeNodeOrder(sorted, references.toArray(new Module[references.size()][]));
public Object[][] sortBundles(BundleDescription[] toSort) { List<Object[]> references = new ArrayList<Object[]>(toSort.length); for (int i = 0; i < toSort.length; i++) if (toSort[i].isResolved()) buildReferences(toSort[i], references); Object[][] cycles = ComputeNodeOrder.computeNodeOrder(toSort, references.toArray(new Object[references.size()][])); if (cycles.length == 0) return cycles; // fix up host/fragment orders (bug 184127) for (int i = 0; i < cycles.length; i++) { for (int j = 0; j < cycles[i].length; j++) { BundleDescription fragment = (BundleDescription) cycles[i][j]; if (fragment.getHost() == null) continue; BundleDescription host = (BundleDescription) fragment.getHost().getSupplier(); if (host == null) continue; fixFragmentOrder(host, fragment, toSort); } } return cycles; }
Object[][] cycles = ComputeNodeOrder.computeNodeOrder(sorted, references.toArray(new Module[references.size()][]));
Object[][] cycles = ComputeNodeOrder.computeNodeOrder(sorted, references.toArray(new Module[references.size()][]));
Object[][] cycles = ComputeNodeOrder.computeNodeOrder(sorted, references.toArray(new Module[references.size()][]));
public Object[][] sortBundles(BundleDescription[] toSort) { List<Object[]> references = new ArrayList<>(toSort.length); for (int i = 0; i < toSort.length; i++) if (toSort[i].isResolved()) buildReferences(toSort[i], references); Object[][] cycles = ComputeNodeOrder.computeNodeOrder(toSort, references.toArray(new Object[references.size()][])); if (cycles.length == 0) return cycles; // fix up host/fragment orders (bug 184127) for (int i = 0; i < cycles.length; i++) { for (int j = 0; j < cycles[i].length; j++) { BundleDescription fragment = (BundleDescription) cycles[i][j]; if (fragment.getHost() == null) continue; BundleDescription host = (BundleDescription) fragment.getHost().getSupplier(); if (host == null) continue; fixFragmentOrder(host, fragment, toSort); } } return cycles; }