소스 검색

clean up topology code

tags/2.0.1
Jonathan Cobb 4 년 전
부모
커밋
4c1d7e827a
1개의 변경된 파일16개의 추가작업 그리고 14개의 파일을 삭제
  1. +16
    -14
      src/main/java/org/cobbzilla/util/collection/Topology.java

+ 16
- 14
src/main/java/org/cobbzilla/util/collection/Topology.java 파일 보기

@@ -20,20 +20,22 @@ public class Topology<T> {
.findFirst().orElse(null);
final Node<T> node = existingNode != null ? existingNode : new Node<>(thing);

// add refs as edges; skip self-references
refs.stream().filter(ref -> !ref.equals(thing)).forEach(ref -> {
final Node<T> existingEdgeNode = nodes.stream()
.filter(n -> n.thing.equals(ref))
.findFirst()
.orElse(null);
if (existingEdgeNode != null) {
node.addEdge(existingEdgeNode);
} else {
final Node<T> newEdgeNode = new Node<>(ref);
nodes.add(newEdgeNode);
node.addEdge(newEdgeNode);
}
});
// add refs as edges
refs.stream()
.filter(ref -> !ref.equals(thing)) // skip self-references
.forEach(ref -> {
final Node<T> existingEdgeNode = nodes.stream()
.filter(n -> n.thing.equals(ref))
.findFirst()
.orElse(null);
if (existingEdgeNode != null) {
node.addEdge(existingEdgeNode);
} else {
final Node<T> newEdgeNode = new Node<>(ref);
nodes.add(newEdgeNode);
node.addEdge(newEdgeNode);
}
});
if (existingNode == null) nodes.add(node);
}



불러오는 중...
취소
저장