import java.util.Set;
/**
- * Utility class that provides topological sort
+ * Utility class that provides topological sort.
+ *
+ * @deprecated Use {@link org.opendaylight.yangtools.util.TopologicalSort} instead.
*/
+@Deprecated
public final class TopologicalSort {
/**
* @throws IllegalStateException
* when cycle is present in the graph
*/
- public static List<Node> sort(Set<Node> nodes) {
+ public static List<Node> sort(final Set<Node> nodes) {
List<Node> sortedNodes = Lists.newArrayList();
Set<Node> dependentNodes = getDependentNodes(nodes);
return sortedNodes;
}
- private static Set<Node> getDependentNodes(Set<Node> nodes) {
+ private static Set<Node> getDependentNodes(final Set<Node> nodes) {
Set<Node> dependentNodes = Sets.newHashSet();
for (Node n : nodes) {
if (n.getOutEdges().isEmpty()) {
return dependentNodes;
}
- private static void detectCycles(Set<Node> nodes) {
+ private static void detectCycles(final Set<Node> nodes) {
// Detect cycles
boolean cycle = false;
Node cycledNode = null;
return outEdges;
}
- public void addEdge(Node to) {
+ public void addEdge(final Node to) {
Edge e = new EdgeImpl(this, to);
outEdges.add(e);
to.getInEdges().add(e);
private final Node from;
private final Node to;
- public EdgeImpl(Node from, Node to) {
+ public EdgeImpl(final Node from, final Node to) {
this.from = from;
this.to = to;
}
}
@Override
- public boolean equals(Object obj) {
+ public boolean equals(final Object obj) {
if (this == obj) {
return true;
}