X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=bgp%2Fparser-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fprotocol%2Fbgp%2Fparser%2Fspi%2FPathIdUtil.java;h=47e4814a3a72ab0f0555a9b3d28e3489cd6faabf;hb=141ff6fd5b7304185bc81b4141d3a61540f16a67;hp=9fe8c3204426569372b1346d46f09be23917fcd6;hpb=726d96376a81ed2c6b24d8533345541394d60540;p=bgpcep.git diff --git a/bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi/PathIdUtil.java b/bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi/PathIdUtil.java index 9fe8c32044..47e4814a3a 100644 --- a/bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi/PathIdUtil.java +++ b/bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi/PathIdUtil.java @@ -8,10 +8,10 @@ package org.opendaylight.protocol.bgp.parser.spi; -import com.google.common.base.Optional; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableMap; import io.netty.buffer.ByteBuf; +import java.util.Optional; import org.opendaylight.protocol.util.ByteBufWriteUtil; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.message.rev171207.PathId; import org.opendaylight.yangtools.yang.common.QName; @@ -62,11 +62,7 @@ public final class PathIdUtil { * @return The path identifier from data change */ public static Long extractPathId(final NormalizedNode data, final NodeIdentifier pathNii) { - final NormalizedNode pathId = NormalizedNodes.findNode(data, pathNii).orNull(); - if (pathId == null) { - return null; - } - return (Long) pathId.getValue(); + return (Long) NormalizedNodes.findNode(data, pathNii).map(NormalizedNode::getValue).orElse(null); } /** @@ -80,7 +76,8 @@ public final class PathIdUtil { * @return Route Key Nid */ public static NodeIdentifierWithPredicates createNidKey(final long pathId, final PathArgument routeId, - final QName routeQname, final QName pathidQname, final QName routeKeyQname) { + final QName routeQname, + final QName pathidQname, final QName routeKeyQname) { return createNodeIdentifierWithPredicates(routeQname, pathidQname, pathId, routeKeyQname, getObjectKey(routeId, routeKeyQname)); } @@ -93,11 +90,11 @@ public final class PathIdUtil { * @return key */ public static Object getObjectKey(final PathArgument routeId, final QName routeKeyQname) { - return (((NodeIdentifierWithPredicates) routeId).getKeyValues()).get(routeKeyQname); + return ((NodeIdentifierWithPredicates) routeId).getKeyValues().get(routeKeyQname); } - public static NodeIdentifierWithPredicates createNodeIdentifierWithPredicates(final QName routeQname, - final QName pathidQname, final Object pathId, final QName routeKeyQname, final Object keyObject) { + public static NodeIdentifierWithPredicates createNodeIdentifierWithPredicates(final QName routeQname, final QName pathidQname, final Object pathId, + final QName routeKeyQname, final Object keyObject) { final ImmutableMap keyValues = ImmutableMap.of(pathidQname, pathId, routeKeyQname, keyObject); return new NodeIdentifierWithPredicates(routeQname, keyValues); } @@ -124,14 +121,15 @@ public final class PathIdUtil { * @param pathIdQname path Id Qname * @param routeKeyValue route key value * @param maybePathIdLeaf path id container, it might me supported or not, in that case default 0 value will - * be assigned + * be + * assigned * @return Route Key Nid */ public static NodeIdentifierWithPredicates createNidKey(final QName routeQname, final QName routeKeyQname, final QName pathIdQname, final Object routeKeyValue, final Optional> maybePathIdLeaf) { // FIXME: a cache here would mean we instantiate the same identifier for each route making comparison quicker. - final Object pathId = maybePathIdLeaf.isPresent() ? (maybePathIdLeaf.get()).getValue() : NON_PATH_ID; + final Object pathId = maybePathIdLeaf.isPresent() ? maybePathIdLeaf.get().getValue() : NON_PATH_ID; return createNodeIdentifierWithPredicates(routeQname, pathIdQname, pathId, routeKeyQname, routeKeyValue); } }