Refactor: Reduce use of null
Change-Id: I5b7197481553be38a664568ec1122854c2597989
diff --git a/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/OpticalCircuitIntentCompiler.java b/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/OpticalCircuitIntentCompiler.java
index 7a898f3..5e02f3c 100644
--- a/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/OpticalCircuitIntentCompiler.java
+++ b/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/OpticalCircuitIntentCompiler.java
@@ -393,7 +393,7 @@
return null;
}
- private OchPort findAvailableOchPort(ConnectPoint oduPort, OduSignalType ochPortSignalType) {
+ private Optional<OchPort> findAvailableOchPort(ConnectPoint oduPort, OduSignalType ochPortSignalType) {
// First see if the port mappings are constrained
ConnectPoint ochCP = staticPort(oduPort);
@@ -408,9 +408,9 @@
.findAny();
if (isAvailable(intentId.orElse(null))) {
- return ochPort;
+ return Optional.of(ochPort);
}
- return null;
+ return Optional.empty();
}
// No port constraints, so find any port that works
@@ -438,11 +438,11 @@
.findAny();
if (isAvailable(intentId.orElse(null))) {
- return (OchPort) port;
+ return Optional.of((OchPort) port);
}
}
- return null;
+ return Optional.empty();
}
private Pair<OchPort, OchPort> findPorts(ConnectPoint src, ConnectPoint dst, CltSignalType signalType) {
@@ -451,31 +451,21 @@
case CLT_1GBE:
case CLT_10GBE:
// First search for OCH ports with OduSignalType of ODU2. If not found - search for those with ODU4
- Pair<OchPort, OchPort> ochPorts = findPorts(src, dst, OduSignalType.ODU2);
- if (ochPorts == null) {
- ochPorts = findPorts(src, dst, OduSignalType.ODU4);
- }
- return ochPorts;
+ return findPorts(src, dst, OduSignalType.ODU2)
+ .orElse(findPorts(src, dst, OduSignalType.ODU4).orElse(null));
case CLT_100GBE:
- return findPorts(src, dst, OduSignalType.ODU4);
+ return findPorts(src, dst, OduSignalType.ODU4).orElse(null);
case CLT_40GBE:
default:
return null;
}
}
- private Pair<OchPort, OchPort> findPorts(ConnectPoint src, ConnectPoint dst, OduSignalType ochPortSignalType) {
- OchPort srcPort = findAvailableOchPort(src, ochPortSignalType);
- if (srcPort == null) {
- return null;
- }
-
- OchPort dstPort = findAvailableOchPort(dst, ochPortSignalType);
- if (dstPort == null) {
- return null;
- }
-
- return Pair.of(srcPort, dstPort);
+ private Optional<Pair<OchPort, OchPort>> findPorts(ConnectPoint src, ConnectPoint dst,
+ OduSignalType ochPortSignalType) {
+ return findAvailableOchPort(src, ochPortSignalType)
+ .flatMap(srcOch ->
+ findAvailableOchPort(dst, ochPortSignalType).map(dstOch -> Pair.of(srcOch, dstOch)));
}
/**