From 3f117f9548245256fde13dd5ebf15dfdd91b3000 Mon Sep 17 00:00:00 2001 From: "Claudio D. Gasparini" Date: Fri, 29 Jun 2018 14:25:19 +0200 Subject: [PATCH] Fix checkstyle complains Change-Id: If6d289edfc8eaab6946fb5c5b3d379909fdbaf98 Signed-off-by: Claudio D. Gasparini --- bgp/rib-impl/pom.xml | 4 - .../impl/AbstractBGPSessionNegotiator.java | 109 +++++++++--------- .../protocol/bgp/rib/impl/AdjRibInWriter.java | 3 +- .../bgp/rib/impl/AdjRibOutListener.java | 4 +- .../bgp/rib/impl/BGPByteToMessageDecoder.java | 11 +- .../rib/impl/BGPClientSessionNegotiator.java | 2 +- .../bgp/rib/impl/BGPHandlerFactory.java | 3 +- .../bgp/rib/impl/BGPMessageHeaderDecoder.java | 6 +- .../protocol/bgp/rib/impl/BGPSessionImpl.java | 7 +- .../protocol/bgp/rib/impl/CodecsImpl.java | 17 +-- .../bgp/rib/impl/CodecsRegistryImpl.java | 3 +- .../protocol/bgp/rib/impl/CountersUtil.java | 14 +-- .../impl/RIBSupportContextRegistryImpl.java | 3 +- .../rib/impl/RouteTargetMembeshipUtil.java | 7 +- .../bgp/rib/impl/config/BgpDeployerImpl.java | 14 ++- .../impl/config/OpenConfigMappingUtil.java | 49 ++++---- .../bgp/rib/impl/config/PeerBean.java | 2 +- .../impl/protocol/BGPReconnectPromise.java | 22 ++-- .../bgp/rib/impl/spi/BGPPeerRegistry.java | 3 +- .../impl/state/BGPSessionStateProvider.java | 14 ++- .../state/peer/PrefixesInstalledCounters.java | 10 +- .../state/peer/PrefixesReceivedCounters.java | 15 ++- .../impl/state/peer/PrefixesSentCounters.java | 5 +- .../rib/impl/state/rib/TotalPathsCounter.java | 5 +- .../impl/state/rib/TotalPrefixesCounter.java | 5 +- .../bgp/rib/impl/AbstractAddPathTest.java | 27 +++-- .../rib/impl/AbstractBGPDispatcherTest.java | 14 ++- .../bgp/rib/impl/AbstractRIBTestSetup.java | 8 +- .../protocol/bgp/rib/impl/FSMTest.java | 97 ++++++++++------ .../bgp/rib/impl/ParserToSalTest.java | 5 +- .../protocol/bgp/rib/impl/PeerTest.java | 12 +- .../bgp/rib/impl/RouteUpdateKeyTest.java | 2 - .../impl/SynchronizationAndExceptionTest.java | 15 ++- .../bgp/rib/impl/SynchronizationTest.java | 10 +- 34 files changed, 291 insertions(+), 236 deletions(-) diff --git a/bgp/rib-impl/pom.xml b/bgp/rib-impl/pom.xml index cd70e80bc1..d69bc2fd28 100644 --- a/bgp/rib-impl/pom.xml +++ b/bgp/rib-impl/pom.xml @@ -113,10 +113,6 @@ org.opendaylight.mdsal mdsal-binding-generator-impl - - org.opendaylight.mdsal.model - ietf-yang-types-20130715 - org.opendaylight.mdsal.model ietf-inet-types-2013-07-15 diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPSessionNegotiator.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPSessionNegotiator.java index f12f7b6b05..c7176650fe 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPSessionNegotiator.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPSessionNegotiator.java @@ -51,7 +51,16 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter * @see BGP Support for 4-Octet AS Number Space */ private static final int AS_TRANS = 23456; - + private static final Logger LOG = LoggerFactory.getLogger(AbstractBGPSessionNegotiator.class); + private final BGPPeerRegistry registry; + private final Promise promise; + private final Channel channel; + @GuardedBy("this") + private State state = State.IDLE; + @GuardedBy("this") + private BGPSessionImpl session; + @GuardedBy("this") + private ScheduledFuture pending; @VisibleForTesting public enum State { /** @@ -73,17 +82,6 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter FINISHED, } - private static final Logger LOG = LoggerFactory.getLogger(AbstractBGPSessionNegotiator.class); - private final BGPPeerRegistry registry; - private final Promise promise; - private final Channel channel; - @GuardedBy("this") - private State state = State.IDLE; - @GuardedBy("this") - private BGPSessionImpl session; - @GuardedBy("this") - private ScheduledFuture pending; - AbstractBGPSessionNegotiator(final Promise promise, final Channel channel, final BGPPeerRegistry registry) { this.promise = requireNonNull(promise); @@ -101,7 +99,8 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter // Check if peer is configured in registry before retrieving preferences if (!this.registry.isPeerConfigured(remoteIp)) { final BGPDocumentedException cause = new BGPDocumentedException( - String.format("BGP peer with ip: %s not configured, check configured peers in : %s", remoteIp, this.registry), BGPError.CONNECTION_REJECTED); + String.format("BGP peer with ip: %s not configured, check configured peers in : %s", + remoteIp, this.registry), BGPError.CONNECTION_REJECTED); negotiationFailed(cause); return; } @@ -114,7 +113,7 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter as = AS_TRANS; } sendMessage(new OpenBuilder().setMyAsNumber(as).setHoldTimer(preferences.getHoldTime()).setBgpIdentifier( - preferences.getBgpId()).setBgpParameters(preferences.getParams()).build()); + preferences.getBgpId()).setBgpParameters(preferences.getParams()).build()); if (this.state != State.FINISHED) { this.state = State.OPEN_SENT; this.pending = this.channel.eventLoop().schedule(() -> { @@ -122,7 +121,7 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter AbstractBGPSessionNegotiator.this.pending = null; if (AbstractBGPSessionNegotiator.this.state != State.FINISHED) { AbstractBGPSessionNegotiator.this - .sendMessage(buildErrorNotify(BGPError.HOLD_TIMER_EXPIRED)); + .sendMessage(buildErrorNotify(BGPError.HOLD_TIMER_EXPIRED)); negotiationFailed(new BGPDocumentedException("HoldTimer expired", BGPError.FSM_ERROR)); AbstractBGPSessionNegotiator.this.state = State.FINISHED; } @@ -143,45 +142,47 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter return remoteIp; } - protected synchronized void handleMessage(final Notification msg) { + synchronized void handleMessage(final Notification msg) { LOG.debug("Channel {} handling message in state {}, msg: {}", this.channel, this.state, msg); switch (this.state) { - case FINISHED: - sendMessage(buildErrorNotify(BGPError.FSM_ERROR)); - return; - case IDLE: - // to avoid race condition when Open message was sent by the peer before startNegotiation could be executed - if (msg instanceof Open) { - startNegotiation(); - handleOpen((Open) msg); + case FINISHED: + sendMessage(buildErrorNotify(BGPError.FSM_ERROR)); return; - } - sendMessage(buildErrorNotify(BGPError.FSM_ERROR)); - break; - case OPEN_CONFIRM: - if (msg instanceof Keepalive) { - negotiationSuccessful(this.session); - LOG.info("BGP Session with peer {} established successfully.", this.channel); - } else if (msg instanceof Notify) { - final Notify ntf = (Notify) msg; - negotiationFailed(new BGPDocumentedException("Peer refusal", BGPError.forValue(ntf.getErrorCode(), ntf.getErrorSubcode()))); - } - this.state = State.FINISHED; - return; - case OPEN_SENT: - if (msg instanceof Open) { - handleOpen((Open) msg); + case IDLE: + // to avoid race condition when Open message was sent by the peer before startNegotiation could be executed + if (msg instanceof Open) { + startNegotiation(); + handleOpen((Open) msg); + return; + } + sendMessage(buildErrorNotify(BGPError.FSM_ERROR)); + break; + case OPEN_CONFIRM: + if (msg instanceof Keepalive) { + negotiationSuccessful(this.session); + LOG.info("BGP Session with peer {} established successfully.", this.channel); + } else if (msg instanceof Notify) { + final Notify ntf = (Notify) msg; + negotiationFailed(new BGPDocumentedException("Peer refusal", + BGPError.forValue(ntf.getErrorCode(), ntf.getErrorSubcode()))); + } + this.state = State.FINISHED; return; - } - break; - default: - break; + case OPEN_SENT: + if (msg instanceof Open) { + handleOpen((Open) msg); + return; + } + break; + default: + break; } // Catch-all for unexpected message LOG.warn("Channel {} state {} unexpected message {}", this.channel, this.state, msg); sendMessage(buildErrorNotify(BGPError.FSM_ERROR)); - negotiationFailed(new BGPDocumentedException("Unexpected message channel: " + this.channel + ", state: " + this.state + ", message: " + msg, BGPError.FSM_ERROR)); + negotiationFailed(new BGPDocumentedException("Unexpected message channel: " + + this.channel + ", state: " + this.state + ", message: " + msg, BGPError.FSM_ERROR)); this.state = State.FINISHED; } @@ -201,7 +202,8 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter final IpAddress remoteIp = getRemoteIp(); final BGPSessionPreferences preferences = this.registry.getPeerPreferences(remoteIp); try { - final BGPSessionListener peer = this.registry.getPeer(remoteIp, getSourceId(openObj, preferences), getDestinationId(openObj, preferences), openObj); + final BGPSessionListener peer = this.registry.getPeer(remoteIp, getSourceId(openObj, preferences), + getDestinationId(openObj, preferences), openObj); sendMessage(new KeepaliveBuilder().build()); this.state = State.OPEN_CONFIRM; this.session = new BGPSessionImpl(peer, this.channel, openObj, preferences, this.registry); @@ -216,9 +218,11 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter private synchronized void negotiationFailed(final Throwable e) { LOG.warn("Channel {} negotiation failed: {}", this.channel, e.getMessage()); if (e instanceof BGPDocumentedException) { - // although sendMessage() can also result in calling this method, it won't create a cycle. In case sendMessage() fails to - // deliver the message, this method gets called with different exception (definitely not with BGPDocumentedException). - sendMessage(buildErrorNotify(((BGPDocumentedException)e).getError(), ((BGPDocumentedException) e).getData())); + // although sendMessage() can also result in calling this method, it won't create a cycle. + // In case sendMessage() fails to deliver the message, this method gets called with different + // exception (definitely not with BGPDocumentedException). + sendMessage(buildErrorNotify(((BGPDocumentedException) e).getError(), + ((BGPDocumentedException) e).getData())); } if (this.state == State.OPEN_CONFIRM) { this.registry.removePeerSession(getRemoteIp()); @@ -232,14 +236,14 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter * @param preferences Local BGP speaker preferences * @return BGP Id of device that accepted the connection */ - protected abstract Ipv4Address getDestinationId(final Open openMsg, final BGPSessionPreferences preferences); + protected abstract Ipv4Address getDestinationId(Open openMsg, BGPSessionPreferences preferences); /** * @param openMsg Open message received from remote BGP speaker * @param preferences Local BGP speaker preferences * @return BGP Id of device that accepted the connection */ - protected abstract Ipv4Address getSourceId(final Open openMsg, final BGPSessionPreferences preferences); + protected abstract Ipv4Address getSourceId(Open openMsg, BGPSessionPreferences preferences); public synchronized State getState() { return this.state; @@ -265,7 +269,8 @@ abstract class AbstractBGPSessionNegotiator extends ChannelInboundHandlerAdapter private void sendMessage(final Notification msg) { this.channel.writeAndFlush(msg).addListener((ChannelFutureListener) f -> { if (!f.isSuccess()) { - LOG.warn("Failed to send message {} to channel {}", msg, AbstractBGPSessionNegotiator.this.channel, f.cause()); + LOG.warn("Failed to send message {} to channel {}", msg, AbstractBGPSessionNegotiator.this.channel, + f.cause()); negotiationFailedCloseChannel(f.cause()); } else { LOG.trace("Message {} sent to channel {}", msg, AbstractBGPSessionNegotiator.this.channel); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibInWriter.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibInWriter.java index 333f28313a..fcf00d9228 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibInWriter.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibInWriter.java @@ -191,7 +191,8 @@ final class AdjRibInWriter { LOG.warn("No support for table type {}, skipping it", tableKey); continue; } - installAdjRibsOutTables(newPeerPath, rs, instanceIdentifierKey, tableKey, addPathTablesType.get(tableKey), tx); + installAdjRibsOutTables(newPeerPath, rs, instanceIdentifierKey, tableKey, + addPathTablesType.get(tableKey), tx); installAdjRibInTables(newPeerPath, tableKey, rs, instanceIdentifierKey, tx, tb); } return tb.build(); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibOutListener.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibOutListener.java index 036e2e1835..3620e33454 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibOutListener.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibOutListener.java @@ -64,8 +64,8 @@ final class AdjRibOutListener implements ClusteredDOMDataTreeChangeListener, Pre private static final Logger LOG = LoggerFactory.getLogger(AdjRibOutListener.class); - static final QName PREFIX_QNAME = QName.create(Ipv4Route.QNAME, "prefix").intern(); - static final QName PATHID_QNAME = QName.create(Ipv4Route.QNAME, "path-id").intern(); + private static final QName PREFIX_QNAME = QName.create(Ipv4Route.QNAME, "prefix").intern(); + private static final QName PATHID_QNAME = QName.create(Ipv4Route.QNAME, "path-id").intern(); private final YangInstanceIdentifier.NodeIdentifier routeKeyPrefixLeaf = new YangInstanceIdentifier .NodeIdentifier(PREFIX_QNAME); private final YangInstanceIdentifier.NodeIdentifier routeKeyPathIdLeaf = new YangInstanceIdentifier diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPByteToMessageDecoder.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPByteToMessageDecoder.java index 1a6ca0473b..9cd64916b2 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPByteToMessageDecoder.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPByteToMessageDecoder.java @@ -23,26 +23,23 @@ import org.opendaylight.protocol.bgp.parser.spi.pojo.PeerSpecificParserConstrain import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** - * - */ final class BGPByteToMessageDecoder extends ByteToMessageDecoder { private static final Logger LOG = LoggerFactory.getLogger(BGPByteToMessageDecoder.class); private final MessageRegistry registry; private final PeerSpecificParserConstraintProvider constraints; - public BGPByteToMessageDecoder(final MessageRegistry registry) { + BGPByteToMessageDecoder(final MessageRegistry registry) { this.constraints = new PeerSpecificParserConstraintImpl(); this.registry = requireNonNull(registry); } - public boolean addDecoderConstraint(final Class classType, final T peerConstraint) { + boolean addDecoderConstraint(final Class classType, final T peerConstraint) { return this.constraints.addPeerConstraint(classType, peerConstraint); } @Override - protected void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List out) throws BGPDocumentedException, - BGPParsingException { + protected void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List out) + throws BGPDocumentedException, BGPParsingException { if (in.isReadable()) { if (LOG.isTraceEnabled()) { LOG.trace("Received to decode: {}", ByteBufUtil.hexDump(in)); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPClientSessionNegotiator.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPClientSessionNegotiator.java index 5dce9847f9..b64c25b75b 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPClientSessionNegotiator.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPClientSessionNegotiator.java @@ -15,7 +15,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types. import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.message.rev180329.Open; /** - * Client negotiator. Validates established connections using BGPClientSessionValidator + * Client negotiator. Validates established connections using BGPClientSessionValidator. */ public final class BGPClientSessionNegotiator extends AbstractBGPSessionNegotiator { diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPHandlerFactory.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPHandlerFactory.java index 1e01b0956c..1c7c96cf7d 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPHandlerFactory.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPHandlerFactory.java @@ -32,6 +32,7 @@ public class BGPHandlerFactory { } public ChannelHandler[] getDecoders() { - return new ChannelHandler[] { BGPMessageHeaderDecoder.getBGPMessageHeaderDecoder(), new BGPByteToMessageDecoder(this.registry), }; + return new ChannelHandler[] { BGPMessageHeaderDecoder.getBGPMessageHeaderDecoder(), + new BGPByteToMessageDecoder(this.registry), }; } } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPMessageHeaderDecoder.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPMessageHeaderDecoder.java index b22e3fbb7b..308b542950 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPMessageHeaderDecoder.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPMessageHeaderDecoder.java @@ -12,7 +12,7 @@ import io.netty.handler.codec.LengthFieldBasedFrameDecoder; /** * @see BGP Message Header */ -public final class BGPMessageHeaderDecoder extends LengthFieldBasedFrameDecoder { +final class BGPMessageHeaderDecoder extends LengthFieldBasedFrameDecoder { private static final int MARKER_SIZE = 16; @@ -48,11 +48,11 @@ public final class BGPMessageHeaderDecoder extends LengthFieldBasedFrameDecoder super(maxFrameSize, MARKER_SIZE, LENGTH_SIZE, -MARKER_SIZE - LENGTH_SIZE, 0); } - public static BGPMessageHeaderDecoder getBGPMessageHeaderDecoder() { + static BGPMessageHeaderDecoder getBGPMessageHeaderDecoder() { return new BGPMessageHeaderDecoder(MAX_FRAME_SIZE); } - public static BGPMessageHeaderDecoder getExtendedBGPMessageHeaderDecoder() { + static BGPMessageHeaderDecoder getExtendedBGPMessageHeaderDecoder() { return new BGPMessageHeaderDecoder(EXTENDED_MAX_FRAME_SIZE); } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionImpl.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionImpl.java index 8bda14ff03..122f624621 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionImpl.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionImpl.java @@ -313,7 +313,9 @@ public class BGPSessionImpl extends SimpleChannelInboundHandler im return; } LOG.info("Closing session: {}", this); - this.channel.close().addListener((ChannelFutureListener) future -> Preconditions.checkArgument(future.isSuccess(), "Channel failed to close: %s", future.cause())); + this.channel.close().addListener((ChannelFutureListener) future + -> Preconditions.checkArgument(future.isSuccess(), + "Channel failed to close: %s", future.cause())); this.state = State.IDLE; removePeerSession(); this.sessionState.setSessionState(this.state); @@ -329,7 +331,8 @@ public class BGPSessionImpl extends SimpleChannelInboundHandler im synchronized void terminate(final BGPDocumentedException e) { final BGPError error = e.getError(); final byte[] data = e.getData(); - final NotifyBuilder builder = new NotifyBuilder().setErrorCode(error.getCode()).setErrorSubcode(error.getSubcode()); + final NotifyBuilder builder = new NotifyBuilder().setErrorCode(error.getCode()) + .setErrorSubcode(error.getSubcode()); if (data != null && data.length != 0) { builder.setData(data); } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsImpl.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsImpl.java index ab883877ed..b4db9a738d 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsImpl.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsImpl.java @@ -58,13 +58,13 @@ public final class CodecsImpl implements Codecs { .child(Tables.class) .build(); private static final InstanceIdentifier MP_REACH_NLRI_II = InstanceIdentifier.create(Update.class) - .child(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.message.rev180329.path.attributes.Attributes.class) + .child(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.message.rev180329.path + .attributes.Attributes.class) .augmentation(Attributes1.class) .child(MpReachNlri.class); private static final InstanceIdentifier MP_UNREACH_NLRI_II = InstanceIdentifier.create(Update.class) - .child(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.message.rev180329.path.attributes.Attributes.class) - .augmentation(Attributes2.class) - .child(MpUnreachNlri.class); + .child(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.message.rev180329.path + .attributes.Attributes.class).augmentation(Attributes2.class).child(MpUnreachNlri.class); static { final Builder> acb = ImmutableSet.builder(); @@ -111,9 +111,12 @@ public final class CodecsImpl implements Codecs { .streamChild(this.ribSupport.routesContainerClass()) .streamChild(this.ribSupport.routesListClass()); - this.attributesCodec = routeListCodec.streamChild(Attributes.class).createCachingCodec(this.cacheableAttributes); - this.reachNlriCodec = tree.getSubtreeCodec(MP_REACH_NLRI_II).createCachingCodec(this.ribSupport.cacheableNlriObjects()); - this.unreachNlriCodec = tree.getSubtreeCodec(MP_UNREACH_NLRI_II).createCachingCodec(this.ribSupport.cacheableNlriObjects()); + this.attributesCodec = routeListCodec.streamChild(Attributes.class) + .createCachingCodec(this.cacheableAttributes); + this.reachNlriCodec = tree.getSubtreeCodec(MP_REACH_NLRI_II) + .createCachingCodec(this.ribSupport.cacheableNlriObjects()); + this.unreachNlriCodec = tree.getSubtreeCodec(MP_UNREACH_NLRI_II) + .createCachingCodec(this.ribSupport.cacheableNlriObjects()); } @Override diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsRegistryImpl.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsRegistryImpl.java index cc135e352b..b3c1665a5e 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsRegistryImpl.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CodecsRegistryImpl.java @@ -44,7 +44,8 @@ public final class CodecsRegistryImpl implements CodecsRegistry { this.classContext = requireNonNull(strategy); } - public static CodecsRegistryImpl create(final BindingCodecTreeFactory codecFactory, final GeneratedClassLoadingStrategy classStrategy) { + public static CodecsRegistryImpl create(final BindingCodecTreeFactory codecFactory, + final GeneratedClassLoadingStrategy classStrategy) { return new CodecsRegistryImpl(codecFactory, classStrategy); } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CountersUtil.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CountersUtil.java index 8b8a077858..63d8beb2e6 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CountersUtil.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/CountersUtil.java @@ -11,7 +11,6 @@ package org.opendaylight.protocol.bgp.rib.impl; import java.util.concurrent.atomic.LongAdder; import javax.annotation.Nonnull; import javax.annotation.Nullable; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.ZeroBasedCounter32; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev180329.rib.TablesKey; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,9 +27,9 @@ public final class CountersUtil { } /** - * Increments counter by 1 if supported, otherwise produce a warn + * Increments counter by 1 if supported, otherwise produce a warn. * - * @param counter counter + * @param counter counter * @param tablesKey tablesKey Type */ static void increment(@Nullable final LongAdder counter, @Nonnull TablesKey tablesKey) { @@ -42,8 +41,9 @@ public final class CountersUtil { } /** - * Increments counter by 1 if supported, otherwise produce a warn - * @param counter counter + * Increments counter by 1 if supported, otherwise produce a warn. + * + * @param counter counter * @param tablesKey tablesKey Type */ static void decrement(@Nullable final LongAdder counter, @Nonnull TablesKey tablesKey) { @@ -53,8 +53,4 @@ public final class CountersUtil { } LOG.warn("Family {} not supported", tablesKey); } - - public static ZeroBasedCounter32 toZeroBasedCounter32(final LongAdder longAdder){ - return new ZeroBasedCounter32(longAdder.longValue()); - } } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RIBSupportContextRegistryImpl.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RIBSupportContextRegistryImpl.java index ed5a80bdf0..7afd00475d 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RIBSupportContextRegistryImpl.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RIBSupportContextRegistryImpl.java @@ -44,7 +44,8 @@ final class RIBSupportContextRegistryImpl implements RIBSupportContextRegistry { this.codecs = requireNonNull(codecs); } - static RIBSupportContextRegistryImpl create(final RIBExtensionConsumerContext extensions, final CodecsRegistry codecs) { + static RIBSupportContextRegistryImpl create(final RIBExtensionConsumerContext extensions, + final CodecsRegistry codecs) { return new RIBSupportContextRegistryImpl(extensions, codecs); } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RouteTargetMembeshipUtil.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RouteTargetMembeshipUtil.java index 5a7893f233..6b41fb12be 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RouteTargetMembeshipUtil.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RouteTargetMembeshipUtil.java @@ -18,15 +18,12 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rout import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.route.target.constrain.rev180618.route.target.constrain.routes.route.target.constrain.routes.RouteTargetConstrainRoute; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev180329.RouteTarget; -/** - * @author Claudio D. Gasparini - */ -public final class RouteTargetMembeshipUtil { +final class RouteTargetMembeshipUtil { private RouteTargetMembeshipUtil() { throw new UnsupportedOperationException(); } - public static Optional getRT(final R route) { + static Optional getRT(final R route) { if (!(route instanceof RouteTargetConstrainRoute)) { return Optional.empty(); } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/BgpDeployerImpl.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/BgpDeployerImpl.java index b19b76425d..da4c1a6bb7 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/BgpDeployerImpl.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/BgpDeployerImpl.java @@ -66,7 +66,11 @@ public final class BgpDeployerImpl implements ClusteredDataTreeChangeListener, Optional> peerGroups = CacheBuilder.newBuilder() + @GuardedBy("this") + private final Map, BGPClusterSingletonService> bgpCss = new HashMap<>(); + private final DataBroker dataBroker; + private final LoadingCache, Optional> peerGroups + = CacheBuilder.newBuilder() .build(new CacheLoader, Optional>() { @Override public Optional load(final InstanceIdentifier key) @@ -74,11 +78,8 @@ public final class BgpDeployerImpl implements ClusteredDataTreeChangeListener registration; - @GuardedBy("this") - private final Map, BGPClusterSingletonService> bgpCss = new HashMap<>(); - private final DataBroker dataBroker; private final String networkInstanceName; + private ListenerRegistration registration; @GuardedBy("this") private boolean closed; @@ -135,7 +136,8 @@ public final class BgpDeployerImpl implements ClusteredDataTreeChangeListener mod.getModificationType() == DataObjectModification.ModificationType.DELETE) .collect(Collectors.toList()); - final List> changedConfig = rootNode.getModifiedChildren().stream() + final List> changedConfig + = rootNode.getModifiedChildren().stream() .filter(mod -> mod.getModificationType() != DataObjectModification.ModificationType.DELETE) .collect(Collectors.toList()); handleDeletions(deletedConfig, rootIdentifier); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/OpenConfigMappingUtil.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/OpenConfigMappingUtil.java index c606be9cd0..bfade0ab8e 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/OpenConfigMappingUtil.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/OpenConfigMappingUtil.java @@ -65,10 +65,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.type import org.opendaylight.yangtools.yang.binding.Augmentation; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -public final class OpenConfigMappingUtil { +final class OpenConfigMappingUtil { - public static final String APPLICATION_PEER_GROUP_NAME = "application-peers"; - public static final Optional APPLICATION_PEER_GROUP_NAME_OPT = Optional.of(APPLICATION_PEER_GROUP_NAME); + static final String APPLICATION_PEER_GROUP_NAME = "application-peers"; + static final Optional APPLICATION_PEER_GROUP_NAME_OPT = Optional.of(APPLICATION_PEER_GROUP_NAME); static final int HOLDTIMER = 90; private static final AfiSafi IPV4_AFISAFI = new AfiSafiBuilder().setAfiSafiName(IPV4UNICAST.class).build(); private static final List DEFAULT_AFISAFI = ImmutableList.of(IPV4_AFISAFI); @@ -79,7 +79,7 @@ public final class OpenConfigMappingUtil { throw new UnsupportedOperationException(); } - public static String getRibInstanceName(final InstanceIdentifier rootIdentifier) { + static String getRibInstanceName(final InstanceIdentifier rootIdentifier) { return rootIdentifier.firstKeyOf(Protocol.class).getName(); } @@ -132,7 +132,7 @@ public final class OpenConfigMappingUtil { return null; } - public static KeyMapping getNeighborKey(final Neighbor neighbor) { + static KeyMapping getNeighborKey(final Neighbor neighbor) { if (neighbor.getConfig() != null) { final String authPassword = neighbor.getConfig().getAuthPassword(); if (authPassword != null) { @@ -142,13 +142,13 @@ public final class OpenConfigMappingUtil { return null; } - public static InstanceIdentifier getNeighborInstanceIdentifier( + static InstanceIdentifier getNeighborInstanceIdentifier( final InstanceIdentifier rootIdentifier, final NeighborKey neighborKey) { return rootIdentifier.child(Neighbors.class).child(Neighbor.class, neighborKey); } - public static String getNeighborInstanceName(final InstanceIdentifier rootIdentifier) { + static String getNeighborInstanceName(final InstanceIdentifier rootIdentifier) { return Ipv4Util.toStringIP(rootIdentifier.firstKeyOf(Neighbor.class).getNeighborAddress()); } @@ -168,7 +168,7 @@ public final class OpenConfigMappingUtil { } //make sure IPv4 Unicast (RFC 4271) when required - public static List getAfiSafiWithDefault( + static List getAfiSafiWithDefault( final BgpCommonAfiSafiList afiSAfis, final boolean setDeafultIPv4) { if (afiSAfis == null || afiSAfis.getAfiSafi() == null) { return setDeafultIPv4 ? DEFAULT_AFISAFI : Collections.emptyList(); @@ -184,7 +184,7 @@ public final class OpenConfigMappingUtil { return afiSafi; } - public static ClusterIdentifier getGlobalClusterIdentifier(final org.opendaylight.yang.gen.v1.http.openconfig.net + static ClusterIdentifier getGlobalClusterIdentifier(final org.opendaylight.yang.gen.v1.http.openconfig.net .yang.bgp.rev151009.bgp.global.base.Config globalConfig) { final GlobalConfigAugmentation globalConfigAugmentation = globalConfig.augmentation(GlobalConfigAugmentation.class); @@ -195,7 +195,7 @@ public final class OpenConfigMappingUtil { } @Nullable - public static ClusterIdentifier getNeighborClusterIdentifier( + static ClusterIdentifier getNeighborClusterIdentifier( @Nullable final RouteReflector routeReflector, @Nullable final PeerGroup peerGroup) { if (peerGroup != null) { @@ -219,7 +219,7 @@ public final class OpenConfigMappingUtil { return null; } - public static Map toPathSelectionMode(final List afiSafis, + static Map toPathSelectionMode(final List afiSafis, final BGPTableTypeRegistryConsumer tableTypeRegistry) { final Map pathSelectionModes = new HashMap<>(); for (final AfiSafi afiSafi : afiSafis) { @@ -241,7 +241,7 @@ public final class OpenConfigMappingUtil { return pathSelectionModes; } - public static boolean isApplicationPeer(final Neighbor neighbor) { + static boolean isApplicationPeer(final Neighbor neighbor) { final org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.neighbor.group .Config config = neighbor.getConfig(); if (config != null) { @@ -254,7 +254,7 @@ public final class OpenConfigMappingUtil { return false; } - public static List toAddPathCapability(final List afiSafis, + static List toAddPathCapability(final List afiSafis, final BGPTableTypeRegistryConsumer tableTypeRegistry) { final List addPathCapability = new ArrayList<>(); for (final AfiSafi afiSafi : afiSafis) { @@ -279,7 +279,7 @@ public final class OpenConfigMappingUtil { return SendReceive.Receive; } - public static PeerRole toPeerRole(final BgpNeighborGroup neighbor) { + static PeerRole toPeerRole(final BgpNeighborGroup neighbor) { if (isRrClient(neighbor)) { return PeerRole.RrClient; } @@ -303,7 +303,7 @@ public final class OpenConfigMappingUtil { return false; } - public static List toTableTypes(final List afiSafis, + static List toTableTypes(final List afiSafis, final BGPTableTypeRegistryConsumer tableTypeRegistry) { return afiSafis.stream() .map(afiSafi -> tableTypeRegistry.getTableType(afiSafi.getAfiSafiName())) @@ -312,7 +312,7 @@ public final class OpenConfigMappingUtil { .collect(Collectors.toList()); } - public static Set toTableKey(final List afiSafis, final BGPTableTypeRegistryConsumer + static Set toTableKey(final List afiSafis, final BGPTableTypeRegistryConsumer tableTypeRegistry) { return afiSafis.stream() .map(afiSafi -> tableTypeRegistry.getTableKey(afiSafi.getAfiSafiName())) @@ -321,8 +321,7 @@ public final class OpenConfigMappingUtil { .collect(Collectors.toSet()); } - @Nonnull - public static boolean isActive(final Neighbor neighbor, final PeerGroup peerGroup) { + static boolean isActive(final Neighbor neighbor, final PeerGroup peerGroup) { Boolean activeConnection = null; if (peerGroup != null) { activeConnection = isActive(peerGroup.getTransport()); @@ -338,7 +337,7 @@ public final class OpenConfigMappingUtil { } @Nonnull - public static PeerRole toPeerRole(final Neighbor neighbor, final PeerGroup peerGroup) { + static PeerRole toPeerRole(final Neighbor neighbor, final PeerGroup peerGroup) { PeerRole role = null; if (peerGroup != null) { role = toPeerRole(peerGroup); @@ -354,7 +353,7 @@ public final class OpenConfigMappingUtil { return role; } - public static int getHoldTimer(final Neighbor neighbor, final PeerGroup peerGroup) { + static int getHoldTimer(final Neighbor neighbor, final PeerGroup peerGroup) { Integer hold = null; if (peerGroup != null) { hold = getHoldTimer(peerGroup.getTimers()); @@ -372,7 +371,7 @@ public final class OpenConfigMappingUtil { } @Nonnull - public static AsNumber getRemotePeerAs(final org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009 + static AsNumber getRemotePeerAs(final org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009 .bgp.neighbor.group.Config config, final PeerGroup peerGroup, final AsNumber localAs) { AsNumber neighborAs = null; if (peerGroup != null) { @@ -390,7 +389,7 @@ public final class OpenConfigMappingUtil { } @Nonnull - public static AsNumber getLocalPeerAs(@Nullable final org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp + static AsNumber getLocalPeerAs(@Nullable final org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp .rev151009.bgp.neighbor.group.Config config, @Nonnull final AsNumber globalAs) { if (config != null) { final AsNumber peerAs = config.getLocalAs(); @@ -401,7 +400,7 @@ public final class OpenConfigMappingUtil { return globalAs; } - public static int getRetryTimer(final Neighbor neighbor, final PeerGroup peerGroup) { + static int getRetryTimer(final Neighbor neighbor, final PeerGroup peerGroup) { Integer retryTimer = null; if (peerGroup != null) { retryTimer = getRetryTimer(peerGroup.getTimers()); @@ -419,7 +418,7 @@ public final class OpenConfigMappingUtil { } @Nonnull - public static PortNumber getPort(final Neighbor neighbor, final PeerGroup peerGroup) { + static PortNumber getPort(final Neighbor neighbor, final PeerGroup peerGroup) { PortNumber port = null; if (peerGroup != null) { port = getPort(peerGroup.getTransport(), PeerGroupTransportConfig.class); @@ -437,7 +436,7 @@ public final class OpenConfigMappingUtil { } @Nullable - public static IpAddress getLocalAddress(@Nullable final Transport transport) { + static IpAddress getLocalAddress(@Nullable final Transport transport) { if (transport != null && transport.getConfig() != null) { final BgpNeighborTransportConfig.LocalAddress localAddress = transport.getConfig().getLocalAddress(); if (localAddress != null ) { diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/PeerBean.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/PeerBean.java index 24b8c1d80d..d3bf90d9ea 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/PeerBean.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/config/PeerBean.java @@ -17,7 +17,7 @@ import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.t import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; /** - * Common interface for BgpPeer and AppPeer beans + * Common interface for BgpPeer and AppPeer beans. */ public interface PeerBean extends AutoCloseable { diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/protocol/BGPReconnectPromise.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/protocol/BGPReconnectPromise.java index 1e5ff081e1..5ef822dc6f 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/protocol/BGPReconnectPromise.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/protocol/BGPReconnectPromise.java @@ -51,15 +51,19 @@ public class BGPReconnectPromise extends DefaultPromise { - this.initializer.initializeChannel(channel, promise); - // add closed channel handler - // This handler has to be added as last channel handler and the channel inactive event has to be caught by it - // Handlers in front of it can react to channelInactive event, but have to forward the event or the reconnect will not work - // This handler is last so all handlers in front of it can handle channel inactive (to e.g. resource cleanup) before a new connection is started - channel.pipeline().addLast(new ClosedChannelHandler(this)); - }); + // Set up a client with pre-configured bootstrap, but add a closed channel handler + // into the pipeline to support reconnect attempts + this.pending = connectSessionPromise(this.address, this.retryTimer, this.bootstrap, this.peerRegistry, + (channel, promise) -> { + this.initializer.initializeChannel(channel, promise); + // add closed channel handler + // This handler has to be added as last channel handler and the channel inactive event has to be + // caught by it + // Handlers in front of it can react to channelInactive event, but have to forward the event or + // the reconnect will not work. This handler is last so all handlers in front of it can handle + // channel inactive (to e.g. resource cleanup) before a new connection is started + channel.pipeline().addLast(new ClosedChannelHandler(this)); + }); this.pending.addListener(future -> { if (!future.isSuccess() && !this.isDone()) { diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPPeerRegistry.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPPeerRegistry.java index 36e698b7f2..1ce4ec6741 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPPeerRegistry.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPPeerRegistry.java @@ -64,7 +64,8 @@ public interface BGPPeerRegistry extends AutoCloseable { * @throws BGPDocumentedException if session establishment cannot be finished successfully * @throws java.lang.IllegalStateException if there is no peer configured for provided ip address */ - BGPSessionListener getPeer(IpAddress ip, Ipv4Address sourceId, Ipv4Address remoteId, Open open) throws BGPDocumentedException; + BGPSessionListener getPeer(IpAddress ip, Ipv4Address sourceId, Ipv4Address remoteId, Open open) + throws BGPDocumentedException; /** * @param ip address of remote peer diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/BGPSessionStateProvider.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/BGPSessionStateProvider.java index 1f9beebbe3..5e4e597db3 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/BGPSessionStateProvider.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/BGPSessionStateProvider.java @@ -14,29 +14,33 @@ import org.opendaylight.protocol.bgp.rib.spi.state.BGPTimersState; import org.opendaylight.protocol.bgp.rib.spi.state.BGPTransportState; /** - * Serves to expose BGP Session, Timers, Transport, BGPErrorHandlingState Operational State + * Serves to expose BGP Session, Timers, Transport, BGPErrorHandlingState Operational State. */ public interface BGPSessionStateProvider { /** - * BGP Operational Session State + * BGP Operational Session State. + * * @return BGPSessionState */ BGPSessionState getBGPSessionState(); /** - * BGP Operational Timers State + * BGP Operational Timers State. + * * @return BGPTimersState */ BGPTimersState getBGPTimersState(); /** - * BGP Operational Transport State + * BGP Operational Transport State. + * * @return BGPTransportState */ BGPTransportState getBGPTransportState(); /** - * Register BGP Operational Messages State Listener + * Register BGP Operational Messages State Listener. + * * @param bgpMessagesListener BGPMessagesListener */ void registerMessagesCounter(BGPMessagesListener bgpMessagesListener); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesInstalledCounters.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesInstalledCounters.java index e4cb18a476..816f0385b9 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesInstalledCounters.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesInstalledCounters.java @@ -12,18 +12,20 @@ import javax.annotation.Nonnull; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev180329.rib.TablesKey; /** - * Expose Prefixes Installed Count + * Expose Prefixes Installed Count. */ public interface PrefixesInstalledCounters { /** - * Prefixes received and installed from Peer count (EffRibIn Count) pet Table + * Prefixes received and installed from Peer count (EffRibIn Count) pet Table. + * * @param tablesKey table * @return count */ - long getPrefixedInstalledCount(@Nonnull final TablesKey tablesKey); + long getPrefixedInstalledCount(@Nonnull TablesKey tablesKey); /** - * total Prefixes received and installed from Peer count (EffRibIn Count) + * total Prefixes received and installed from Peer count (EffRibIn Count). + * * @return count */ long getTotalPrefixesInstalled(); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesReceivedCounters.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesReceivedCounters.java index 873e1e74cb..703828d014 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesReceivedCounters.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesReceivedCounters.java @@ -13,26 +13,29 @@ import javax.annotation.Nonnull; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev180329.rib.TablesKey; /** - * Expose Prefixes Received Count + * Expose Prefixes Received Count. */ public interface PrefixesReceivedCounters { /** - * Prefixes received from Peer count (AdjRinIn Count) pet Table + * Prefixes received from Peer count (AdjRinIn Count) pet Table. + * * @param tablesKey table * @return count */ - long getPrefixedReceivedCount(@Nonnull final TablesKey tablesKey); + long getPrefixedReceivedCount(@Nonnull TablesKey tablesKey); /** - * list of supported tables per Peer + * list of supported tables per Peer. + * * @return tables list */ Set getTableKeys(); /** - * table supported per Peer + * table supported per Peer. + * * @param tablesKey table type * @return true if supported */ - boolean isSupported(TablesKey tablesKey); + boolean isSupported(@Nonnull TablesKey tablesKey); } diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesSentCounters.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesSentCounters.java index aece504e78..cdeda5d374 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesSentCounters.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/peer/PrefixesSentCounters.java @@ -9,11 +9,12 @@ package org.opendaylight.protocol.bgp.rib.impl.state.peer; /** - * Expose Prefixes Sent Count + * Expose Prefixes Sent Count. */ public interface PrefixesSentCounters { /** - * Prefixes sent to peer + * Prefixes sent to peer. + * * @return count */ long getPrefixesSentCount(); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPathsCounter.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPathsCounter.java index 4e80c8ae41..5885ff3d58 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPathsCounter.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPathsCounter.java @@ -9,11 +9,12 @@ package org.opendaylight.protocol.bgp.rib.impl.state.rib; /** - * Expose Total Paths Count per RIB + * Expose Total Paths Count per RIB. */ public interface TotalPathsCounter { /** - * Total Paths installed on RIB + * Total Paths installed on RIB. + * * @return count */ long getPathsCount(); diff --git a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPrefixesCounter.java b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPrefixesCounter.java index d38ff3a5d7..48730bad17 100644 --- a/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPrefixesCounter.java +++ b/bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/state/rib/TotalPrefixesCounter.java @@ -9,11 +9,12 @@ package org.opendaylight.protocol.bgp.rib.impl.state.rib; /** - * Expose Total Prefixes Count per RIB + * Expose Total Prefixes Count per RIB. */ public interface TotalPrefixesCounter { /** - * Total Prefixes installed on RIB + * Total Prefixes installed on RIB. + * * @return count */ long getPrefixesCount(); diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractAddPathTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractAddPathTest.java index 861a40bc77..c5e9275b26 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractAddPathTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractAddPathTest.java @@ -232,34 +232,37 @@ public abstract class AbstractAddPathTest extends DefaultRibPoliciesMockTest { return connectPeer(peer, clientDispatcher); } - protected static BGPPeer configurePeer(final BGPTableTypeRegistryConsumer tableRegistry, final Ipv4Address peerAddress, final RIBImpl ribImpl, - final BgpParameters bgpParameters, final PeerRole peerRole, final BGPPeerRegistry bgpPeerRegistry) { + static BGPPeer configurePeer(final BGPTableTypeRegistryConsumer tableRegistry, + final Ipv4Address peerAddress, final RIBImpl ribImpl, final BgpParameters bgpParameters, + final PeerRole peerRole, final BGPPeerRegistry bgpPeerRegistry) { final IpAddress ipAddress = new IpAddress(peerAddress); - final BGPPeer bgpPeer = new BGPPeer(tableRegistry, new IpAddress(peerAddress), ribImpl, peerRole, null, - AFI_SAFIS_ADVERTIZED, Collections.emptySet()); + final BGPPeer bgpPeer = new BGPPeer(tableRegistry, new IpAddress(peerAddress), ribImpl, peerRole, + null, AFI_SAFIS_ADVERTIZED, Collections.emptySet()); final List tlvs = Lists.newArrayList(bgpParameters); bgpPeerRegistry.addPeer(ipAddress, bgpPeer, - new BGPSessionPreferences(AS_NUMBER, HOLDTIMER, new BgpId(RIB_ID), AS_NUMBER, tlvs)); + new BGPSessionPreferences(AS_NUMBER, HOLDTIMER, new BgpId(RIB_ID), AS_NUMBER, tlvs)); bgpPeer.instantiateServiceInstance(); return bgpPeer; } private static BGPSessionImpl connectPeer(final Ipv4Address localAddress, final BGPDispatcherImpl dispatcherImpl) - throws InterruptedException { - final Future future = dispatcherImpl.createClient(new InetSocketAddress(localAddress.getValue(), PORT), - new InetSocketAddress(RIB_ID, PORT), RETRY_TIMER, true); + throws InterruptedException { + final Future future = dispatcherImpl + .createClient(new InetSocketAddress(localAddress.getValue(), PORT), + new InetSocketAddress(RIB_ID, PORT), RETRY_TIMER, true); Thread.sleep(200); waitFutureSuccess(future); Thread.sleep(100); return future.getNow(); } - protected static BgpParameters createParameter(final boolean addPath) { + static BgpParameters createParameter(final boolean addPath) { final OptionalCapabilities mp = new OptionalCapabilitiesBuilder().setCParameters( new CParametersBuilder().addAugmentation(CParameters1.class, new CParameters1Builder().setMultiprotocolCapability( - new MultiprotocolCapabilityBuilder().setAfi(Ipv4AddressFamily.class).setSafi(UnicastSubsequentAddressFamily.class) + new MultiprotocolCapabilityBuilder().setAfi(Ipv4AddressFamily.class) + .setSafi(UnicastSubsequentAddressFamily.class) .build()).build()).build()).build(); final List capabilities = Lists.newArrayList(mp); if (addPath) { @@ -278,8 +281,8 @@ public abstract class AbstractAddPathTest extends DefaultRibPoliciesMockTest { return new BgpParametersBuilder().setOptionalCapabilities(capabilities).build(); } - private static Update createSimpleUpdate(final Ipv4Prefix prefix, final PathId pathId, final ClusterIdentifier clusterId, - final long localPreference) { + private static Update createSimpleUpdate(final Ipv4Prefix prefix, final PathId pathId, + final ClusterIdentifier clusterId, final long localPreference) { final AttributesBuilder attBuilder = new AttributesBuilder(); attBuilder.setLocalPref(new LocalPrefBuilder().setPref(localPreference).build()); attBuilder.setOrigin(new OriginBuilder().setValue(BgpOrigin.Igp).build()); diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPDispatcherTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPDispatcherTest.java index d7851744ae..1aacca8462 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPDispatcherTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractBGPDispatcherTest.java @@ -93,11 +93,13 @@ public class AbstractBGPDispatcherTest { final List tlvs = Lists.newArrayList(); final List capas = Lists.newArrayList(); capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation( - CParameters1.class, new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() - .setAfi(IPV_4_TT.getAfi()).setSafi(IPV_4_TT.getSafi()).build()).build()) - .setAs4BytesCapability(new As4BytesCapabilityBuilder().setAsNumber(new AsNumber(30L)).build()) - .build()).build()); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); + CParameters1.class, new CParameters1Builder() + .setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() + .setAfi(IPV_4_TT.getAfi()).setSafi(IPV_4_TT.getSafi()).build()).build()) + .setAs4BytesCapability(new As4BytesCapabilityBuilder().setAsNumber(new AsNumber(30L)).build()) + .build()).build()); + capas.add(new OptionalCapabilitiesBuilder() + .setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); tlvs.add(new BgpParametersBuilder().setOptionalCapabilities(capas).build()); final BgpId bgpId = new BgpId(new Ipv4Address(socketAddress.getAddress().getHostAddress())); return new BGPSessionPreferences(AS_NUMBER, HOLD_TIMER, bgpId, AS_NUMBER, tlvs); @@ -105,7 +107,7 @@ public class AbstractBGPDispatcherTest { Channel createServer(final InetSocketAddress serverAddress) { this.registry.addPeer(new IpAddress(new Ipv4Address(serverAddress.getAddress().getHostAddress())), - this.serverListener, createPreferences(serverAddress)); + this.serverListener, createPreferences(serverAddress)); LoggerFactory.getLogger(AbstractBGPDispatcherTest.class).info("createServer"); final ChannelFuture future = this.serverDispatcher.createServer(serverAddress); future.addListener(future1 -> Preconditions.checkArgument(future1.isSuccess(), diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractRIBTestSetup.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractRIBTestSetup.java index e0fe60741e..9d40df3a6b 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractRIBTestSetup.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/AbstractRIBTestSetup.java @@ -97,10 +97,10 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContext; public class AbstractRIBTestSetup extends DefaultRibPoliciesMockTest { - protected static final Class AFI = Ipv4AddressFamily.class; - protected static final Class SAFI = UnicastSubsequentAddressFamily.class; - protected static final TablesKey KEY = new TablesKey(AFI, SAFI); - protected static final QName PREFIX_QNAME = QName.create(Ipv4Route.QNAME, "prefix").intern(); + static final Class AFI = Ipv4AddressFamily.class; + static final Class SAFI = UnicastSubsequentAddressFamily.class; + static final TablesKey KEY = new TablesKey(AFI, SAFI); + static final QName PREFIX_QNAME = QName.create(Ipv4Route.QNAME, "prefix").intern(); private static final BgpId RIB_ID = new BgpId("127.0.0.1"); private RIBImpl rib; private BindingCodecTreeFactory codecFactory; diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/FSMTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/FSMTest.java index 2f7c83b279..36c07fbd3e 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/FSMTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/FSMTest.java @@ -80,9 +80,11 @@ public class FSMTest { @Mock private ChannelPipeline pipeline; - private final BgpTableType ipv4tt = new BgpTableTypeImpl(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class); + private final BgpTableType ipv4tt + = new BgpTableTypeImpl(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class); - private final BgpTableType linkstatett = new BgpTableTypeImpl(LinkstateAddressFamily.class, LinkstateSubsequentAddressFamily.class); + private final BgpTableType linkstatett + = new BgpTableTypeImpl(LinkstateAddressFamily.class, LinkstateSubsequentAddressFamily.class); private final List receivedMsgs = Lists.newArrayList(); @@ -94,17 +96,24 @@ public class FSMTest { final List tlvs = Lists.newArrayList(); final List capas = Lists.newArrayList(); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, - new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() - .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()).build()).build()).build()); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, - new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() - .setAfi(this.linkstatett.getAfi()).setSafi(this.linkstatett.getSafi()).build()).build()).build()).build()); + capas.add(new OptionalCapabilitiesBuilder() + .setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, + new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() + .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()).build()) + .build()).build()); + capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder() + .addAugmentation(CParameters1.class, + new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() + .setAfi(this.linkstatett.getAfi()).setSafi(this.linkstatett.getSafi()) + .build()).build()).build()).build()); capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().setAs4BytesCapability( new As4BytesCapabilityBuilder().setAsNumber(new AsNumber(30L)).build()).build()).build()); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, - new CParameters1Builder().setGracefulRestartCapability(new GracefulRestartCapabilityBuilder().build()).build()).build()).build()); + capas.add(new OptionalCapabilitiesBuilder() + .setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); + capas.add(new OptionalCapabilitiesBuilder() + .setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, + new CParameters1Builder().setGracefulRestartCapability(new GracefulRestartCapabilityBuilder() + .build()).build()).build()).build()); tlvs.add(new BgpParametersBuilder().setOptionalCapabilities(capas).build()); @@ -121,28 +130,35 @@ public class FSMTest { return f; }).when(this.speakerListener).writeAndFlush(any(Notification.class)); doReturn(this.eventLoop).when(this.speakerListener).eventLoop(); - doReturn(null).when(this.eventLoop).schedule(any(Runnable.class), any(long.class), any(TimeUnit.class)); + doReturn(null).when(this.eventLoop).schedule(any(Runnable.class), any(long.class), + any(TimeUnit.class)); doReturn("TestingChannel").when(this.speakerListener).toString(); doReturn(new InetSocketAddress(peerAddress, 179)).when(this.speakerListener).remoteAddress(); doReturn(new InetSocketAddress(peerAddress, 179)).when(this.speakerListener).localAddress(); doReturn(this.pipeline).when(this.speakerListener).pipeline(); - doReturn(this.pipeline).when(this.pipeline).replace(any(ChannelHandler.class), any(String.class), any(ChannelHandler.class)); - doReturn(null).when(this.pipeline).replace(Matchers.>any(), any(String.class), any(ChannelHandler.class)); + doReturn(this.pipeline).when(this.pipeline).replace(any(ChannelHandler.class), any(String.class), + any(ChannelHandler.class)); + doReturn(null).when(this.pipeline).replace(Matchers.>any(), any(String.class), + any(ChannelHandler.class)); doReturn(this.pipeline).when(this.pipeline).addLast(any(ChannelHandler.class)); doReturn(mock(ChannelFuture.class)).when(this.speakerListener).close(); final BGPPeerRegistry peerRegistry = new StrictBGPPeerRegistry(); - peerRegistry.addPeer(new IpAddress(new Ipv4Address(peerAddress.getHostAddress())), new SimpleSessionListener(), prefs); + peerRegistry.addPeer(new IpAddress(new Ipv4Address(peerAddress.getHostAddress())), + new SimpleSessionListener(), prefs); - this.clientSession = new BGPClientSessionNegotiator(new DefaultPromise<>(GlobalEventExecutor.INSTANCE), this.speakerListener, peerRegistry); + this.clientSession = new BGPClientSessionNegotiator(new DefaultPromise<>(GlobalEventExecutor.INSTANCE), + this.speakerListener, peerRegistry); - this.classicOpen = new OpenBuilder().setMyAsNumber(30).setHoldTimer(3).setVersion(new ProtocolVersion((short) 4)).setBgpParameters( + this.classicOpen = new OpenBuilder().setMyAsNumber(30).setHoldTimer(3) + .setVersion(new ProtocolVersion((short) 4)).setBgpParameters( tlvs).setBgpIdentifier(new Ipv4Address("1.1.1.2")).build(); } @Test public void testDenyPeer() { - this.clientSession = new BGPClientSessionNegotiator(new DefaultPromise<>(GlobalEventExecutor.INSTANCE), this.speakerListener, new StrictBGPPeerRegistry()); + this.clientSession = new BGPClientSessionNegotiator(new DefaultPromise<>(GlobalEventExecutor.INSTANCE), + this.speakerListener, new StrictBGPPeerRegistry()); this.clientSession.channelActive(null); assertEquals(1, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(0) instanceof Notify); @@ -165,11 +181,14 @@ public class FSMTest { this.clientSession.channelActive(null); assertEquals(1, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(0) instanceof Open); - this.clientSession.handleMessage(new OpenBuilder().setMyAsNumber(30).setHoldTimer(1).setBgpIdentifier(new Ipv4Address("127.0.0.1")).setVersion(new ProtocolVersion((short) 4)).build()); + this.clientSession.handleMessage(new OpenBuilder().setMyAsNumber(30) + .setHoldTimer(1) + .setBgpIdentifier(new Ipv4Address("127.0.0.1")).setVersion(new ProtocolVersion((short) 4)).build()); assertEquals(2, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(1) instanceof Notify); final Notification m = this.receivedMsgs.get(this.receivedMsgs.size() - 1); - assertEquals(BGPError.UNSPECIFIC_OPEN_ERROR, BGPError.forValue(((Notify) m).getErrorCode(), ((Notify) m).getErrorSubcode())); + assertEquals(BGPError.UNSPECIFIC_OPEN_ERROR, + BGPError.forValue(((Notify) m).getErrorCode(), ((Notify) m).getErrorSubcode())); } @Test @@ -180,18 +199,23 @@ public class FSMTest { final List tlvs = Lists.newArrayList(); final List capas = Lists.newArrayList(); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, - new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() - .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()).build()).build()).build()); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); + capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder() + .addAugmentation(CParameters1.class, + new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() + .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()) + .build()).build()).build()).build()); + capas.add(new OptionalCapabilitiesBuilder() + .setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); tlvs.add(new BgpParametersBuilder().setOptionalCapabilities(capas).build()); // Open Message without advertised four-octet AS Number capability this.clientSession.handleMessage(new OpenBuilder().setMyAsNumber(30).setHoldTimer(1).setVersion( - new ProtocolVersion((short) 4)).setBgpParameters(tlvs).setBgpIdentifier(new Ipv4Address("1.1.1.2")).build()); + new ProtocolVersion((short) 4)).setBgpParameters(tlvs) + .setBgpIdentifier(new Ipv4Address("1.1.1.2")).build()); assertEquals(2, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(1) instanceof Notify); final Notification m = this.receivedMsgs.get(this.receivedMsgs.size() - 1); - assertEquals(BGPError.UNSUPPORTED_CAPABILITY, BGPError.forValue(((Notify) m).getErrorCode(), ((Notify) m).getErrorSubcode())); + assertEquals(BGPError.UNSUPPORTED_CAPABILITY, + BGPError.forValue(((Notify) m).getErrorCode(), ((Notify) m).getErrorSubcode())); assertNotNull(((Notify) m).getData()); } @@ -203,17 +227,19 @@ public class FSMTest { final List tlvs = Lists.newArrayList(); final List capas = Lists.newArrayList(); - capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, - new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() - .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()).build()).build()).build()); + capas.add(new OptionalCapabilitiesBuilder() + .setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, + new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() + .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()).build()) + .build()).build()); capas.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().setAs4BytesCapability( new As4BytesCapabilityBuilder().setAsNumber(new AsNumber(30L)).build()).build()).build()); tlvs.add(new BgpParametersBuilder().setOptionalCapabilities(capas).build()); this.clientSession.handleMessage(new OpenBuilder().setMyAsNumber(30).setHoldTimer(1).setVersion( - new ProtocolVersion((short) 4)).setBgpParameters(tlvs).setBgpIdentifier(new Ipv4Address("1.1.1.2")).build()); + new ProtocolVersion((short) 4)).setBgpParameters(tlvs) + .setBgpIdentifier(new Ipv4Address("1.1.1.2")).build()); assertEquals(2, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(1) instanceof Keepalive); - } @Test @@ -222,7 +248,8 @@ public class FSMTest { this.clientSession.handleMessage(this.classicOpen); this.clientSession.handleMessage(new KeepaliveBuilder().build()); assertEquals(this.clientSession.getState(), BGPClientSessionNegotiator.State.FINISHED); - this.clientSession.handleMessage(new OpenBuilder().setMyAsNumber(30).setHoldTimer(3).setVersion(new ProtocolVersion((short) 4)).build()); + this.clientSession.handleMessage(new OpenBuilder().setMyAsNumber(30) + .setHoldTimer(3).setVersion(new ProtocolVersion((short) 4)).build()); assertEquals(3, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(2) instanceof Notify); final Notification m = this.receivedMsgs.get(2); @@ -236,10 +263,12 @@ public class FSMTest { assertEquals(1, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(0) instanceof Open); - this.clientSession.handleMessage(new OpenBuilder(this.classicOpen).setBgpIdentifier(new Ipv4Address("1.1.1.1")).build()); + this.clientSession.handleMessage(new OpenBuilder(this.classicOpen) + .setBgpIdentifier(new Ipv4Address("1.1.1.1")).build()); assertEquals(2, this.receivedMsgs.size()); assertTrue(this.receivedMsgs.get(1) instanceof Notify); final Notification m = this.receivedMsgs.get(this.receivedMsgs.size() - 1); - assertEquals(BGPError.BAD_BGP_ID, BGPError.forValue(((Notify) m).getErrorCode(), ((Notify) m).getErrorSubcode())); + assertEquals(BGPError.BAD_BGP_ID, BGPError.forValue(((Notify) m).getErrorCode(), + ((Notify) m).getErrorSubcode())); } } diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/ParserToSalTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/ParserToSalTest.java index f3716c85ec..c8f960e88b 100755 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/ParserToSalTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/ParserToSalTest.java @@ -66,11 +66,10 @@ public class ParserToSalTest extends DefaultRibPoliciesMockTest { private static final TablesKey TABLE_KEY = new TablesKey(LinkstateAddressFamily.class, LinkstateSubsequentAddressFamily.class); private static final InstanceIdentifier BGP_IID = InstanceIdentifier.create(BgpRib.class); + private final IpAddress localAddress = new IpAddress(new Ipv4Address("127.0.0.1")); private BGPMock mock; private AbstractRIBExtensionProviderActivator baseact, lsact; private RIBExtensionProviderContext ext1, ext2; - private final IpAddress localAddress = new IpAddress(new Ipv4Address("127.0.0.1")); - @Mock private BGPDispatcher dispatcher; private CodecsRegistryImpl codecsRegistry; @@ -113,7 +112,7 @@ public class ParserToSalTest extends DefaultRibPoliciesMockTest { final RIBImpl rib = new RIBImpl(this.tableRegistry, new RibId(TEST_RIB_ID), AS_NUMBER, BGP_ID, this.ext2, this.dispatcher, this.codecsRegistry, getDomBroker(), getDataBroker(), this.policies, tables, Collections.singletonMap(TABLE_KEY, BasePathSelectionModeFactory - .createBestPathSelectionStrategy())); + .createBestPathSelectionStrategy())); rib.instantiateServiceInstance(); assertTablesExists(tables); rib.onGlobalContextUpdated(this.schemaService.getGlobalContext()); diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/PeerTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/PeerTest.java index 62730e76c7..ac4f0c59db 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/PeerTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/PeerTest.java @@ -144,8 +144,8 @@ public class PeerTest extends AbstractRIBTestSetup { assertEquals(this.neighborAddress.getIpv4Address().getValue(), this.classic.getName()); this.classic.onSessionUp(this.session); Assert.assertArrayEquals(new byte[]{1, 1, 1, 1}, this.classic.getRawIdentifier()); - assertEquals("BGPPeer{name=127.0.0.1, tables=[TablesKey{_afi=interface org.opendaylight.yang.gen.v1.urn" - + ".opendaylight.params.xml.ns.yang.bgp.types.rev180329.Ipv4AddressFamily," + assertEquals("BGPPeer{name=127.0.0.1, tables=[TablesKey{_afi=interface org.opendaylight.yang.gen.v1" + + ".urn.opendaylight.params.xml.ns.yang.bgp.types.rev180329.Ipv4AddressFamily," + " _safi=interface org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types" + ".rev180329.UnicastSubsequentAddressFamily}]}", this.classic.toString()); @@ -158,8 +158,8 @@ public class PeerTest extends AbstractRIBTestSetup { ub.setNlri(nlris); final Origin origin = new OriginBuilder().setValue(BgpOrigin.Igp).build(); final AsPath asPath = new AsPathBuilder().setSegments(Collections.emptyList()).build(); - final CNextHop nextHop = new Ipv4NextHopCaseBuilder() - .setIpv4NextHop(new Ipv4NextHopBuilder().setGlobal(new Ipv4Address("127.0.0.1")).build()).build(); + final CNextHop nextHop = new Ipv4NextHopCaseBuilder().setIpv4NextHop(new Ipv4NextHopBuilder() + .setGlobal(new Ipv4Address("127.0.0.1")).build()).build(); final AttributesBuilder ab = new AttributesBuilder(); ub.setAttributes(ab.setOrigin(origin).setAsPath(asPath).setCNextHop(nextHop).build()); try { @@ -179,8 +179,8 @@ public class PeerTest extends AbstractRIBTestSetup { assertEquals(3, this.routes.size()); //create new peer so that it gets advertized routes from RIB - final BGPPeer testingPeer = new BGPPeer(this.tableRegistry, this.neighborAddress, getRib(), PeerRole.Ibgp, null, - Collections.emptySet(), Collections.emptySet()); + final BGPPeer testingPeer = new BGPPeer(this.tableRegistry, this.neighborAddress, getRib(), PeerRole.Ibgp, + null, Collections.emptySet(), Collections.emptySet()); testingPeer.instantiateServiceInstance(); testingPeer.onSessionUp(this.session); assertEquals(3, this.routes.size()); diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/RouteUpdateKeyTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/RouteUpdateKeyTest.java index a20fc7b945..fb470c0e55 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/RouteUpdateKeyTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/RouteUpdateKeyTest.java @@ -9,7 +9,6 @@ package org.opendaylight.protocol.bgp.rib.impl; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotEquals; import com.google.common.primitives.UnsignedInteger; @@ -30,7 +29,6 @@ public class RouteUpdateKeyTest { assertEquals(PREFIX, rk.getRouteId()); assertEquals(rk, new RouteUpdateKey(PEER_ID, PREFIX)); assertEquals(rk, rk); - assertFalse(rk.equals(null)); assertNotEquals(rk, new RouteUpdateKey(PEER_ID_2, PREFIX)); assertNotEquals(rk, new RouteUpdateKey(PEER_ID_2, PREFIX_2)); } diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationAndExceptionTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationAndExceptionTest.java index cc581d0bb1..cc18f3ac14 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationAndExceptionTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationAndExceptionTest.java @@ -144,12 +144,15 @@ public class SynchronizationAndExceptionTest extends AbstractAddPathTest { .setVersion(new ProtocolVersion((short) 4)).setBgpParameters(tlvs).setBgpIdentifier(BGP_ID).build(); final List capa = Lists.newArrayList(); - capa.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder().addAugmentation(CParameters1.class, - new CParameters1Builder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() - .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()) - .setGracefulRestartCapability(new GracefulRestartCapabilityBuilder().build()).build()) - .setAs4BytesCapability(new As4BytesCapabilityBuilder().setAsNumber(AS_NUMBER).build()).build()).build()); - capa.add(new OptionalCapabilitiesBuilder().setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); + capa.add(new OptionalCapabilitiesBuilder().setCParameters(new CParametersBuilder() + .addAugmentation(CParameters1.class, new CParameters1Builder() + .setMultiprotocolCapability(new MultiprotocolCapabilityBuilder() + .setAfi(this.ipv4tt.getAfi()).setSafi(this.ipv4tt.getSafi()).build()) + .setGracefulRestartCapability(new GracefulRestartCapabilityBuilder().build()).build()) + .setAs4BytesCapability(new As4BytesCapabilityBuilder().setAsNumber(AS_NUMBER).build()).build()) + .build()); + capa.add(new OptionalCapabilitiesBuilder() + .setCParameters(BgpExtendedMessageUtil.EXTENDED_MESSAGE_CAPABILITY).build()); tlvs.add(new BgpParametersBuilder().setOptionalCapabilities(capa).build()); doReturn(null).when(mock(ChannelFuture.class)).addListener(any()); diff --git a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationTest.java b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationTest.java index 27e8daf64a..7cb1c7ad18 100644 --- a/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationTest.java +++ b/bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationTest.java @@ -32,8 +32,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.type public class SynchronizationTest { - private final TablesKey ipv4 = new TablesKey(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class); - private final TablesKey linkstate = new TablesKey(LinkstateAddressFamily.class, LinkstateSubsequentAddressFamily.class); + private final TablesKey ipv4 + = new TablesKey(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class); + private final TablesKey linkstate + = new TablesKey(LinkstateAddressFamily.class, LinkstateSubsequentAddressFamily.class); private BGPSynchronization bs; @@ -68,8 +70,8 @@ public class SynchronizationTest { mpBuilder.setAfi(LinkstateAddressFamily.class); mpBuilder.setSafi(LinkstateSubsequentAddressFamily.class); - paBuilder = new AttributesBuilder().addAugmentation(Attributes1.class, new Attributes1Builder().setMpReachNlri( - mpBuilder.build()).build()); + paBuilder = new AttributesBuilder().addAugmentation(Attributes1.class, + new Attributes1Builder().setMpReachNlri(mpBuilder.build()).build()); this.lsm = new UpdateBuilder().setAttributes(paBuilder.build()).build(); -- 2.36.6