Add a builder for DefaultLink to hide multiplying constructors
Change-Id: Iaf073d07989c398a8f44541ffdb8dd93e5715162
diff --git a/core/store/dist/src/main/java/org/onosproject/store/link/impl/ECLinkStore.java b/core/store/dist/src/main/java/org/onosproject/store/link/impl/ECLinkStore.java
index 48851f7..8e77ac8 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/link/impl/ECLinkStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/link/impl/ECLinkStore.java
@@ -317,7 +317,15 @@
});
boolean isDurable = Objects.equals(annotations.get().value(AnnotationKeys.DURABLE), "true");
- return new DefaultLink(baseProviderId, src, dst, type, ACTIVE, isDurable, annotations.get());
+ return DefaultLink.builder()
+ .providerId(baseProviderId)
+ .src(src)
+ .dst(dst)
+ .type(type)
+ .state(ACTIVE)
+ .isExpected(isDurable)
+ .annotations(annotations.get())
+ .build();
}
// Updates, if necessary the specified link and returns the appropriate event.
@@ -346,11 +354,15 @@
// FIXME: this will not sync link state!!!
return link.state() == INACTIVE ? null :
updateLink(linkKey(link.src(), link.dst()), link,
- new DefaultLink(link.providerId(),
- link.src(), link.dst(),
- link.type(), INACTIVE,
- link.isDurable(),
- link.annotations()));
+ DefaultLink.builder()
+ .providerId(link.providerId())
+ .src(link.src())
+ .dst(link.dst())
+ .type(link.type())
+ .state(INACTIVE)
+ .isExpected(link.isExpected())
+ .annotations(link.annotations())
+ .build());
}
return removeLink(src, dst);
}