bgpcep.git
4 years agoFix buffer read for unsupported LLGR Safi 96/87196/1
Vikram Singh Kalakoti [Tue, 28 Jan 2020 15:40:52 +0000 (21:10 +0530)]
Fix buffer read for unsupported LLGR Safi

In LlGracefulCapabilityHandler, once an unsupported safi is encountered
we should skip all unread bytes in buffer for that Table

JIRA:BGPCEP-893

Signed-off-by: Vikram Singh Kalakoti <vikramskalakoti@gmail.com>
Change-Id: Ib4479f75d70631fff92b8af62f6bd20486a66c2a

4 years agoUse IetfYangUtil.hexStringBytes()/hexStringFor() 53/87053/1
Robert Varga [Mon, 20 Jan 2020 13:44:23 +0000 (14:44 +0100)]
Use IetfYangUtil.hexStringBytes()/hexStringFor()

Utility methods exposed by MD-SAL are quite a bit more efficient, use
them instead of dancing around with strings.

Change-Id: I16dec789353244416dae228f5151fbd2b4c27d6d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate to use MD-SAL's uint24 type 51/87051/2
Robert Varga [Mon, 20 Jan 2020 11:26:30 +0000 (12:26 +0100)]
Migrate to use MD-SAL's uint24 type

MDSAL is providing the type and related utilities, make sure we
pick them up.

Change-Id: I6305b6003502a3cae7a09e1a88de04f6d9fb45ee
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate deprecated assertThat() 50/87050/1
Robert Varga [Mon, 20 Jan 2020 11:21:27 +0000 (12:21 +0100)]
Migrate deprecated assertThat()

This utility is on its way to Hamcrest, migrate it.

Change-Id: Ie1f6fd928096aad59790d5fb53ac71da620def79
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump to odlparent-6.0.4/yangtools-4.0.6/mdsal-5.0.9 98/86998/2
Robert Varga [Thu, 16 Jan 2020 21:10:51 +0000 (22:10 +0100)]
Bump to odlparent-6.0.4/yangtools-4.0.6/mdsal-5.0.9

Pick up latest fixes and upgrades.

Change-Id: I03d3d421755f9ed4e01618379f856a4cf3af80bb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce PathKey serialization duplication 59/86759/1
Robert Varga [Mon, 6 Jan 2020 18:45:13 +0000 (19:45 +0100)]
Reduce PathKey serialization duplication

PathKeyUtils.serializePathKey() can take PathKeySubobject, which
makes it readily reusable in RROPathKey128SubobjectParser, reducing
amount of duplication we have.

Change-Id: I23f5c58842c2a1ef073ef3f90b6224247a7a195f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMove ipv4/ipv6 ByteBuf utilities to Ipv{4,6}Util 46/86746/4
Robert Varga [Mon, 6 Jan 2020 15:43:16 +0000 (16:43 +0100)]
Move ipv4/ipv6 ByteBuf utilities to Ipv{4,6}Util

There is little point in criss-crossing between util classes
and ByteBufWriteUtil -- move the methods so they are hosted
in their appropriate classes.

Change-Id: Ifa3326c03372b86843ce45b5c72782142e10d9a5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove use of UnsignedBytes.toInt() 45/86745/3
Robert Varga [Mon, 6 Jan 2020 15:33:11 +0000 (16:33 +0100)]
Remove use of UnsignedBytes.toInt()

As per javadoc, Java 8 users should be using Byte.toUnsignedInt(),
do precisely that -- except where we are getting input from Netty,
where we use readUnsignedByte() instead.

Change-Id: I519b0bad54101d73127b72b2ae67a4f046cac2a6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMove ByteBufWriteUtil.IPV{4,6}_PREFIX_BYTE_LENGTH} 44/86744/2
Robert Varga [Mon, 6 Jan 2020 15:23:36 +0000 (16:23 +0100)]
Move ByteBufWriteUtil.IPV{4,6}_PREFIX_BYTE_LENGTH}

These constants are not used outside of the package, hide them and
move them to their respective Ipv{4,6}Util classes.

Change-Id: Ida261113709c35a95615b9f49dde5d2731f38ed0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate ByteBufWriteUtil.writeMedium() 43/86743/2
Robert Varga [Mon, 6 Jan 2020 15:06:43 +0000 (16:06 +0100)]
Eliminate ByteBufWriteUtil.writeMedium()

There are only two users of this method, both operating on primitive
type. Switch them to use ByteBuf.writeMedium() and eliminate the
now-unused method.

Change-Id: I22676f9a2e03f2f5603f46d59fb301b59fc34b29
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove ByteBufWriteUtil.writeInt() 42/86742/2
Robert Varga [Mon, 6 Jan 2020 15:01:15 +0000 (16:01 +0100)]
Remove ByteBufWriteUtil.writeInt()

This method has only one user, which is using primitive int. Migrate
the user to ByteBuf.writeInt() and remove the now-unused method.

Change-Id: I9981e7f54d306ce18f2b8b693998b26e6a464f54
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoPurge unused ByteBufWriteUtil methods 41/86741/2
Robert Varga [Mon, 6 Jan 2020 14:57:49 +0000 (15:57 +0100)]
Purge unused ByteBufWriteUtil methods

Most of these methods have an appropriate replacement in either
ByteBufUtils or ByteBuf, or are completely unused. Remove them
along with their tests.

Change-Id: I95e2e8bff6fbfd60471d93470e465ba07ce5ddca
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate pcep-ietf-stateful07 to use ByteBufUtils 40/86740/4
Robert Varga [Mon, 6 Jan 2020 14:26:06 +0000 (15:26 +0100)]
Migrate pcep-ietf-stateful07 to use ByteBufUtils

Most of the parser interactions can be reformulated in terms
of ByteBufUtils, do that.

Change-Id: I7576c9de5649509172c91c6904478fe4be0cf154
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate pcep-base-parser to use ByteBufUtils 31/86731/5
Robert Varga [Sun, 5 Jan 2020 22:50:53 +0000 (23:50 +0100)]
Migrate pcep-base-parser to use ByteBufUtils

Most of the parser interactions can be reformulated in terms
of ByteBufUtils, do that.

Change-Id: I73b97e2d4ff5210c45d7b938a09a57110e8f43cb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSpecialize Util.writeShortest() for Uint{16,32} 07/86707/5
Robert Varga [Sun, 5 Jan 2020 09:45:04 +0000 (10:45 +0100)]
Specialize Util.writeShortest() for Uint{16,32}

This adds type safety to the picture, so that we end up doing
minimal correct checks on the value supplied. It also allows us
to ditch superfluous use of ByteBufWriteUtils.

Change-Id: Iddf77acd16115ba6b342279f18e6bd1b5411de1c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSwitch common parsers to utils 30/86730/1
Robert Varga [Sun, 5 Jan 2020 21:09:40 +0000 (22:09 +0100)]
Switch common parsers to utils

Using subclassing is not that useful, as we want to reserve that
for actually providing baseline behavior. Switch to composition
by making utility methods properly static.

Change-Id: Iec2c26a3642347fac21a3cbd4b382e453e337651
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce use oif ByteBufWriteUtil in pcep-segment-routing 20/86720/1
Robert Varga [Sun, 5 Jan 2020 14:20:25 +0000 (15:20 +0100)]
Reduce use oif ByteBufWriteUtil in pcep-segment-routing

ByteBufUtils or ByteBuf methods provide most of what we need, use
upstreams to reduce use of our home-grown utilities.

Change-Id: If166a719f0ad67009c434d97e1347d75369257ad
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce use of ByteBugWriteUtil in BMP 19/86719/1
Robert Varga [Sun, 5 Jan 2020 14:14:12 +0000 (15:14 +0100)]
Reduce use of ByteBugWriteUtil in BMP

Use either direct ByteBuf interaction or ByteBufUtils methods to
provide better speed & simplicity.

Change-Id: Iff91ab0286c06668dd551adcabaaf2046b8467f4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil in pcep-spi 15/86715/2
Robert Varga [Sun, 5 Jan 2020 12:15:23 +0000 (13:15 +0100)]
Eliminate use of ByteBufWriteUtil in pcep-spi

ByteBufUtils are much better suited to the task at hand, make sure
we use them.

Change-Id: I53b033af2e178c12eaaac45569ae92ea5b2c09d5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize use of ByteBufWriteUtil in rsvp-impl 14/86714/2
Robert Varga [Sun, 5 Jan 2020 12:09:17 +0000 (13:09 +0100)]
Minimize use of ByteBufWriteUtil in rsvp-impl

ByteBufUtils are up to most of the tasks, make sure we use them
instead of our home-grown utilities.

Change-Id: I34bcc5410774b2c00749a62249d9e4595a13be16
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil in rsvp-spi 13/86713/2
Robert Varga [Sun, 5 Jan 2020 11:31:20 +0000 (12:31 +0100)]
Eliminate use of ByteBufWriteUtil in rsvp-spi

Logic in rsvp-spi can easily use ByteBufUtils or direct ByteBuf
methods, remove unneeded use of ByteBufWriteUtil.

Change-Id: Ic12ac3939d4077b18e6d9e29396e8381dd77335c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize use of ByteBufWriteUtil in bgp-parser-impl 12/86712/2
Robert Varga [Sun, 5 Jan 2020 11:20:24 +0000 (12:20 +0100)]
Minimize use of ByteBufWriteUtil in bgp-parser-impl

We can either use direct ByteBuf methods or employ ByteBufUtils
more efficiently.

Change-Id: I5c2c095c12a81007ca581bdd7c6fa493c995c3ca
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize use of ByteBufWriteUtil in bgp-parser-spi 11/86711/2
Robert Varga [Sun, 5 Jan 2020 11:12:11 +0000 (12:12 +0100)]
Minimize use of ByteBufWriteUtil in bgp-parser-spi

Most of the call sites are easily reformulated in terms of either
raw ByteBuf access or ByteBufUtils.

Change-Id: Ie500b13578ed9be0b94f48d335889e2121d8e034
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil from route-target 10/86710/2
Robert Varga [Sun, 5 Jan 2020 11:02:37 +0000 (12:02 +0100)]
Eliminate use of ByteBufWriteUtil from route-target

There is a single caller, which can trivially be updated to use
ByteBufUtils with improved efficiency.

Change-Id: I7f636cfc1d7ecb6922bd5e29026d4137783baeba
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil from mvpn 09/86709/2
Robert Varga [Sun, 5 Jan 2020 10:57:33 +0000 (11:57 +0100)]
Eliminate use of ByteBufWriteUtil from mvpn

yangtools is providing ByteBufUtils, which are up to all the jobs
we really need for interacting with ByteBuf.

Since we are touching OpaqueUtil, we slightly optimize its
buildOpaqueValue() by reusing splitter/joiner instances.

Change-Id: Ic415d50c2bc1b14098f0a30b663e9d27790c5fdd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize linkstate use of ByteBufWriteUtils 08/86708/2
Robert Varga [Sun, 5 Jan 2020 10:12:24 +0000 (11:12 +0100)]
Minimize linkstate use of ByteBufWriteUtils

Most of the usage of ByteBufWriteUtils can be replaced by
ByteBufUtils or direct interaction with ByteBuf.

Change-Id: I6d381f30c99b4a6f5d6ff5723385df6aa7474cc2
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce use of Util.writeShortest() 06/86706/1
Robert Varga [Sun, 5 Jan 2020 09:32:14 +0000 (10:32 +0100)]
Reduce use of Util.writeShortest()

In case we are coming from an Uint8 there really is no point in
going through Util.writeShortest() as the result is always going
to fit in a single byte. Use ByteBufUtils directly to emit that
byte.

Change-Id: I40288d3fa3c149e8effa0fe1c2c8de52f19eeb79
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRedice use of ByteBufWriteUtil in flowspec 05/86705/1
Robert Varga [Sun, 5 Jan 2020 09:20:54 +0000 (10:20 +0100)]
Redice use of ByteBufWriteUtil in flowspec

yangtools is providing ByteBufUtils for dealing with uint types,
use those methods instead of our home-grown ones. In a few cases
going through uints is not necessary, in which case we end up
talking to ByteBuf directly.

Change-Id: If029b90c6773cae0b2428fa6949173c6cb62bca3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate evpn to use ByteBufUtils 04/86704/1
Robert Varga [Sun, 5 Jan 2020 08:51:12 +0000 (09:51 +0100)]
Migrate evpn to use ByteBufUtils

yangtools is providing utility methods similar to ByteBufWriteUtils,
this patch migrates evpn to use those instead of ours.

Change-Id: Ia2f0e16098d3ef6b89fb5e40b4ada60d0411c240
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRefactor RouteDistinguisherUtil 03/86703/2
Robert Varga [Sun, 5 Jan 2020 08:06:24 +0000 (09:06 +0100)]
Refactor RouteDistinguisherUtil

This class is using deprecated ByteBufWriteUtils methods and this
patch refactors it not to, as it only brings invariant checks
to the table.

Serialize method made a dispatcher between the three distinct
implementations.

Each implementation is refactored to first check string validity
by searching for separators -- which is done faster than previous
String.split(String). Only after validation are parts split
and pushed to the buffer.

Change-Id: Ie87fbaf042d75176c584bf15e345c463b4c747f0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReturn Pcerr from spi.Util 02/86702/2
Robert Varga [Sun, 5 Jan 2020 00:23:33 +0000 (01:23 +0100)]
Return Pcerr from spi.Util

We are creating an error message, let's not pretend it's anything
else -- making the test simpler.

Change-Id: Ic3272385d4fd6a285b8d534d40885f6b0f686e70
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove useless UnsupportedOperationExceptions 01/86701/4
Robert Varga [Sat, 4 Jan 2020 22:22:28 +0000 (23:22 +0100)]
Remove useless UnsupportedOperationExceptions

It is a common (enforced) pattern to hide utility class constructors,
which is sufficient to make sure they are not instantiated.

Throwing UOE from them leads to unneeded byte code, which is hard to
test (via reflection). Remove all instances of such throws.

Change-Id: I68ff3596b44a2196d5450c220a30f98c014f7ba4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate to use yangtools' ByteBufUtils 92/86692/9
Robert Varga [Sat, 4 Jan 2020 07:14:37 +0000 (08:14 +0100)]
Migrate to use yangtools' ByteBufUtils

yangtools provides common set of methods to deal with uint types,
this patch adopts them.

Change-Id: Ib84f546a11d25eab218712a26d8aa49b651cf3e1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove superfluous constants 00/86700/1
Robert Varga [Sat, 4 Jan 2020 15:15:26 +0000 (16:15 +0100)]
Remove superfluous constants

java.lang.{Byte,Short,Integer,Long,Float} define a BYTES constant
since Java 8, use that instead of brewing our own.

Change-Id: If7a8e75c123fef7d79172f22dadb01012de4b1b5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce ByteBuf.writeZero() usage 99/86699/1
Robert Varga [Sat, 4 Jan 2020 14:43:27 +0000 (15:43 +0100)]
Reduce ByteBuf.writeZero() usage

For 1/2/3/4/8-byte output we can use faster methods which put
the appropriately-sized 0 constant into the buffer. Use that.

Change-Id: I2eba6124d1730a7d52a3e992df5542aa080377db
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAdd uint24.yang 95/86695/4
Robert Varga [Sat, 4 Jan 2020 08:47:58 +0000 (09:47 +0100)]
Add uint24.yang

odl-bgp-evpn defines an explicit uint24 type, which is useful as
low as network-concepts. Separate this type into its own module
and reuse it everywhere we are dealing with a 24 bit unsigned types.

This flushes out unneeded tests in LlGracefulCapabilityHandlerTest,
where we are asserting that DTOs are validating the value -- which
is a given and tested in DTO codegen tests.

Change-Id: I423d1af64b0514aa2b0e2f0f0fca728c062ef89a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix YANG file formatting in concepts 94/86694/1
Robert Varga [Sat, 4 Jan 2020 08:37:03 +0000 (09:37 +0100)]
Fix YANG file formatting in concepts

We have mis-indented models here, making them hard to read. Fix
indentation.

Change-Id: I80aa153e419292a24379f383d36c15e1fad5716e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump odlparent/yangtools/mdsal to 6.0.3/4.0.3/5.0.6 69/86369/4
Robert Varga [Thu, 12 Dec 2019 07:02:19 +0000 (08:02 +0100)]
Bump odlparent/yangtools/mdsal to 6.0.3/4.0.3/5.0.6

Pick up the latest upgrades and fixes.

Change-Id: I3cbe9d29c2e511f7c77658251816bc332d848b10
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix CSIT regression due to BGPCEP-878 fix 24/86424/2
Ajay Lele [Sat, 14 Dec 2019 04:09:13 +0000 (20:09 -0800)]
Fix CSIT regression due to BGPCEP-878 fix

Handle scenario in BGPClusterSingletonService#restartNeighbors()
where BgpPeer#restart() is called after BgpPeer#closeServiceInstance()
without BgpPeer#restart() getting called in between.

JIRA: BGPCEP-878
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
Change-Id: I5f8ac4ac4992e4641769243c91fac03bd0a96094

4 years agoTurn PathBindingTlvCodec into an abstract class 81/85981/5
Robert Varga [Tue, 26 Nov 2019 15:34:06 +0000 (16:34 +0100)]
Turn PathBindingTlvCodec into an abstract class

Having PathBindingTlvCodec as a private interface is not completely
useful, as we can use an abstract class instead, simplifying
the API and speeding it up, by eliminating unneeded allocations.

Change-Id: Ia1e3eda5a8333c31a8b929dcb73079fcb6edf581
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRegister PCEP session to stats handler only after it is fully initialized 13/86113/1
Ajay Lele [Tue, 3 Dec 2019 03:17:53 +0000 (19:17 -0800)]
Register PCEP session to stats handler only after it is fully initialized

JIRA: BGPCEP-889
Change-Id: I008418426061d51fd3bef1be7e2fca9b63c99100
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
4 years agoUse new Uint* constants 92/85992/2
Robert Varga [Tue, 26 Nov 2019 21:24:51 +0000 (22:24 +0100)]
Use new Uint* constants

This uses public constants for TWO and TEN, speeding up things just
a little bit.

Change-Id: Ie9622d28293033b9fbb0bc7b6a5938763cacfe7b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUse Uint16 for path binding type 80/85980/3
Robert Varga [Tue, 26 Nov 2019 15:25:33 +0000 (16:25 +0100)]
Use Uint16 for path binding type

Bindings have a set domain of unsigned shorts, there is little
reason to use Integers in their stead. This switches lookups and
parsing/serialization to operate on Uint16 instead.

Change-Id: I9db97c39599b2f78406e4a38aacb087cd3dbf864
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUse direct conversion 78/85978/2
Robert Varga [Tue, 26 Nov 2019 15:12:31 +0000 (16:12 +0100)]
Use direct conversion

Uint types have utility converters for simple conversion among them,
use toUint16() without going through an int (and related checks).

Change-Id: I68927011a5eb933cc67fb1afba258b5d254973d9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove checkstyle/spotbugs plugin overrides 82/85982/1
Robert Varga [Tue, 26 Nov 2019 16:14:55 +0000 (17:14 +0100)]
Remove checkstyle/spotbugs plugin overrides

checkstyle/spotbugs come configured in enforcing mode from odlparent,
hence we do not need to override the configuration.

Change-Id: I067ed0914deb0ff0dfc1d434e87c6ddf70bc9e46
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agopcep: End of code cleaning 93/85593/9
Olivier Dugeon [Tue, 5 Nov 2019 14:19:16 +0000 (15:19 +0100)]
pcep: End of code cleaning

 - Remove remaining call to deprecated functions
 - Change last ListArray by ArrayList

JIRA: BGPCEP-715
Change-Id: I17a57aea67f5ad174967c724bf6ab923987bc85a
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoclean pcep/impl 02/85102/21
guillaume.lambert [Mon, 14 Oct 2019 09:34:05 +0000 (11:34 +0200)]
clean pcep/impl

  - Fix remaining checkstyle errors, mainly IllegalCatch
  - Remove superfluous from PCEPValidatorTest, PcepXROSubobjectParserTest,
    PcepRROSubobjectParserTest and PcepEROSubobjectParserTest
  - Remove call to deprecated functions

JIRA: BGPCEP-715

Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Co-authored-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: Ifff40512f2861246692fbad41de77882c461b2d0
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoFix NPE while accessing DomTxChain when bgp/app peer singleton service is restarted 80/84080/6
Ajay Lele [Thu, 29 Aug 2019 21:37:58 +0000 (14:37 -0700)]
Fix NPE while accessing DomTxChain when bgp/app peer singleton service is restarted

Due to cluster partition/heal, singleton service associated with bgp/app
peer instance can get restarted. Create/close of DomTxChain instance used
by the service was not being handled properly resulting in NPE and failure
to register the peer which caused the BGP connection to not get reestablished.

JIRA: BGPCEP-878
Change-Id: I436ad0877db19c65463bf7b7e09faa3b2b42e5a0
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAddress deadlock scenarios in BGP peer, session mgmt code 26/85426/3
Ajay Lele [Wed, 30 Oct 2019 00:13:15 +0000 (17:13 -0700)]
Address deadlock scenarios in BGP peer, session mgmt code

In scenario-1, BGPPeer and BGPSessionImpl was acquiring locks in opposite order,
resulting in deadlock. Addressed it by enforcing same order of locking i.e.
[BGPPeer (listener) -> BGPSessionImpl (session)].
In scenario-2, deadlock was because of BGPProtocolSessionPromise and StrictBGPPeerRegistry
acquiring locks in opposite order. Addressed by using concurrent Set obviating
need to acquire lock on StrictBGPPeerRegistry object.

JIRA: BGPCEP-884
Change-Id: I9e05adde3220191c8f8436bd76fb25dbfc251e49
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
4 years agoBump to odlparent-6.0.1/yangtools-4.0.2/mdsal-5.0.4 25/85625/1
Robert Varga [Wed, 6 Nov 2019 15:40:58 +0000 (16:40 +0100)]
Bump to odlparent-6.0.1/yangtools-4.0.2/mdsal-5.0.4

This picks up latest upgrades and fixes.

Change-Id: I8db358b0af81394a561071d98bffea168dda47cc
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoClean pcep/base-parser code 25/85325/13
Olivier Dugeon [Tue, 22 Oct 2019 14:18:53 +0000 (16:18 +0200)]
Clean pcep/base-parser code

Fix maven checktyle errors:
 - Missing period at end of first comment for JavaDoc
 - Split line longer than 120 characters
 - Rename XROSRLGSubobjectParser.java to XROSrlgSubobjectParser.java
   and update pcep/impl PCEPXROSubobjectParserTest Junit consequently
 - Replace // fall-through comments by // fallthrough
   for OpenJDK-11 compliance [1]

Improve coding style:
 - Indentation
 - Remove superfluous code when one or several setters
   are called after a builder

[1] https://checkstyle.sourceforge.io/apidocs/com/puppycrawl/tools/checkstyle/checks/coding/FallThroughCheck.html
    https://issues.apache.org/jira/browse/MCHECKSTYLE-383

JIRA: BGPCEP-715
Change-Id: Id7799e2705ae80420f8b4f0ec8f86929b85bc395
Co-authored-by: guillaume.lambert <guillaume.lambert@orange.com>
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoFurther removal of unused imports 65/85365/1
Robert Varga [Thu, 24 Oct 2019 08:56:56 +0000 (10:56 +0200)]
Further removal of unused imports

This removes imports reported by pyang as unused.

Change-Id: Ia2d931f95715a935edc6ee79fd4226f797c4549e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix odl-bgp-policy module file name 64/85364/1
Robert Varga [Thu, 24 Oct 2019 08:58:00 +0000 (10:58 +0200)]
Fix odl-bgp-policy module file name

File name does not match the declared module, fix that.

Change-Id: I541ddb179a8f7843a52aaeb9bee952521a8804d8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix bgp-segment-routing 24/85324/2
Robert Varga [Mon, 21 Oct 2019 08:23:24 +0000 (10:23 +0200)]
Fix bgp-segment-routing

This model is not valid yang, as it is defining overlapping leaves
in choice/case statements. This fixes the violations by providing
encapsulating containers.

JIRA: BGPCEP-880
Change-Id: I4f4f99a6b4a95ab6c8eb997d5ad97d3101b4f387
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit e4b99745b830d4fddbd4141dbeb72aad34b8b953)

4 years agoFix rsvp.yang 44/85344/3
Robert Varga [Mon, 21 Oct 2019 08:20:07 +0000 (10:20 +0200)]
Fix rsvp.yang

This model is not valid yang, as it is defining overlapping leaves
in choice/case statements. This fixes the violations by providing
encapsulating containers, i.e. the content within each case is also
put into a container.

JIRA: BGPCEP-880
Change-Id: I55d1ac7491b2985a29558ec88f90919771b2a753
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit e119dd71b0559dd35abb8dc8b0e3675c14db7aec)

4 years agoRemove unused imports 39/85339/1
Robert Varga [Wed, 23 Oct 2019 08:53:01 +0000 (10:53 +0200)]
Remove unused imports

pyang validation is turning up warnings about unused imports,
fix them up.

Change-Id: Ib7776ea60bcff8737f000fe7a563978152da13be
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRework prependAS() 81/85181/1
Robert Varga [Thu, 17 Oct 2019 13:00:59 +0000 (15:00 +0200)]
Rework prependAS()

We cannot modify lists in-place, so make a proper copy and create
a new list. Fixes the following splat:

java.lang.UnsupportedOperationException: null
at com.google.common.collect.ImmutableList.remove(ImmutableList.java:534) ~[36:com.google.guava:27.1.0.jre]
at org.opendaylight.protocol.bgp.openconfig.routing.policy.statement.actions.AbstractPrependAsPath.prependAS(AbstractPrependAsPath.java:38) ~[232:org.opendaylight.bgpcep.bgp-openconfig-rp-statement:0.13.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.openconfig.routing.policy.statement.actions.LocalAsPathPrependHandler.applyImportAction(LocalAsPathPrependHandler.java:37) ~[232:org.opendaylight.bgpcep.bgp-openconfig-rp-statement:0.13.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.openconfig.routing.policy.statement.actions.LocalAsPathPrependHandler.applyImportAction(LocalAsPathPrependHandler.java:18) ~[232:org.opendaylight.bgpcep.bgp-openconfig-rp-statement:0.13.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.openconfig.routing.policy.spi.registry.ActionsRegistryImpl.applyImportAction(ActionsRegistryImpl.java:314) ~[231:org.opendaylight.bgpcep.bgp-openconfig-rp-spi:0.13.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.openconfig.routing.policy.spi.registry.StatementRegistry.applyImportStatement(StatementRegistry.java:82) ~[231:org.opendaylight.bgpcep.bgp-openconfig-rp-spi:0.13.0.SNAPSHOT]

Change-Id: I6f604e8abdb223fe09e44ac92a752bb6e410ed7f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate Gauge64 parsing 31/85131/1
Robert Varga [Tue, 15 Oct 2019 17:32:59 +0000 (19:32 +0200)]
Migrate Gauge64 parsing

64-bit Guage is fixed-length entity, hence use ByteBufUtils's simple
readUint64() without resorting to going through byte arrays.

Change-Id: Iec3303606f5ffc96c66ef7ed184ab57b3a2ed1d3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate LspDbVersion parsing to ByteBufUtils 30/85130/1
Robert Varga [Tue, 15 Oct 2019 17:31:19 +0000 (19:31 +0200)]
Migrate LspDbVersion parsing to ByteBufUtils

This is a simple fixed-length field, there is no point in going
through byte arrays.

Change-Id: Iff5ed97f5539f24f3016612fe1befa25bd26a02c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAnother round of deprecated constructor migrations 23/85123/2
Robert Varga [Tue, 15 Oct 2019 14:47:55 +0000 (16:47 +0200)]
Another round of deprecated constructor migrations

This migrates another batch of tests to new setters.

Change-Id: Icc5633d480296316019b2c4acf7a8da7d6c809df
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMake PCEPErrors work on Uint8 20/85120/7
Robert Varga [Tue, 15 Oct 2019 14:02:54 +0000 (16:02 +0200)]
Make PCEPErrors work on Uint8

These values are unsinged bytes, make sure we operate on them
rather than forcing conversion to short.

Change-Id: I9c77ad81a7832e74dad8301518fdd727956a48c7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFurther migration of test code from legacy setters 19/85119/10
Robert Varga [Tue, 15 Oct 2019 12:07:48 +0000 (14:07 +0200)]
Further migration of test code from legacy setters

This continues the migration of test code from legacy setters
and cosntructors to explicitly-typed ones.

Change-Id: Iaf3f969ad92a1581a3aab3b3b2a68d8144359cb6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMake BGPError operate on Uint8 17/85117/8
Robert Varga [Tue, 15 Oct 2019 10:06:48 +0000 (12:06 +0200)]
Make BGPError operate on Uint8

Error codes are unsigned bytes, use the proper encapsulation.

Change-Id: I8706fdcd3b87ac45609a08ce6acdf634ddbe90b4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate away from legacy setters 15/85115/7
Robert Varga [Tue, 15 Oct 2019 07:09:57 +0000 (09:09 +0200)]
Migrate away from legacy setters

This migrates away from deprecated setters.

Change-Id: I50acf46d1d13ff88deb46b838a5e524cd89e203a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAdd ByteBufUtils 00/85100/15
Robert Varga [Mon, 14 Oct 2019 08:56:20 +0000 (10:56 +0200)]
Add ByteBufUtils

This adds ByteBufUtils, which are an evolution of ByteBufWriteUtils,
covering reads of Uint types as well as writing using various approaches
to nullness.

We also migrate all uint reading tasks to these utility methods, fixing
deprecation warnings in the process.

Change-Id: I8466dbff77f8469278df4eb92a2aaebcbdeeb6b8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix LeafNode conversions 01/85101/4
Robert Varga [Mon, 14 Oct 2019 09:29:29 +0000 (11:29 +0200)]
Fix LeafNode conversions

This hunts down the remaining conversions where we assume widened
uint types.

Change-Id: I2db0a10ca207fad90fa1c71ac1b5981b664aa272
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate DTO builders 89/85089/7
Robert Varga [Sat, 12 Oct 2019 15:51:01 +0000 (17:51 +0200)]
Migrate DTO builders

This migrates trivial cases where we use constants to initialize
DTO builders via deprecated methods.

Change-Id: Ib7ade52cca2a4e0c59379bb8c700e5fb1a111ff7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove use of commons-io 91/85091/2
Robert Varga [Sun, 13 Oct 2019 07:30:16 +0000 (09:30 +0200)]
Remove use of commons-io

We are using commons-io only for reading a resource file, which
we can do equally well with Guava's Resources.toString(URL, Charset).

Change-Id: Ife9f9b4e7fc616156c24a86dae56cecff1c7c4ba
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUpgrade maven-jxr-plugin 95/85095/1
Robert Varga [Sun, 13 Oct 2019 08:23:19 +0000 (10:23 +0200)]
Upgrade maven-jxr-plugin

Version 3.0.0 has been ouot for some time, upgrade to it.

Change-Id: I1a0da64f8ad32c0e7a42274aebffee09216f25e5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove jdepend-plugin-version declaration 93/85093/1
Robert Varga [Sun, 13 Oct 2019 08:18:57 +0000 (10:18 +0200)]
Remove jdepend-plugin-version declaration

odlparent is defining this at 2.0, do not override to lower
version.

Change-Id: I9d3bc1d244bcd25637439f7ec4464891170514df
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoApply modernization 88/85088/2
Robert Varga [Sat, 12 Oct 2019 15:46:25 +0000 (17:46 +0200)]
Apply modernization

This eliminates modernizer warnings by addressing them or, in the case
of HashTable, concentrates functionality in a method with
@SuppressModernizer.

Change-Id: Ia0ae0ef80aa37025ffbef81fea2f4b3d405e2f8b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUse java.util.Base64 instead of Guava 87/85087/2
Robert Varga [Sat, 12 Oct 2019 15:36:00 +0000 (17:36 +0200)]
Use java.util.Base64 instead of Guava

Just as pointed out by modernizer, Java provides a built-in alternative
for Base64 encoding.

Change-Id: I2f6e53b695d445e7d61cac3427ac4e0c66557b11
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoclean pcep/impl from most checkstyle errors 11/84911/14
guillaume.lambert [Fri, 4 Oct 2019 08:01:23 +0000 (10:01 +0200)]
clean pcep/impl from most checkstyle errors

and spot with TODO comments the code pieces that need to be modernized.

JIRA: BGPCEP-715
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I84efd98d518a0d615a7762ce5ba29c1e6feef3ba
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump mdsal to 5.0.3 65/85065/1
Robert Varga [Fri, 11 Oct 2019 14:11:39 +0000 (16:11 +0200)]
Bump mdsal to 5.0.3

This bumps mdsal to 5.0.3 to workaround issues with Blueprint
injection.

Change-Id: I848c9220ce06ec7b4af304ab64948bdc30257dbd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUse singleton NodeIdentifierWithPredicates 37/84237/27
Robert Varga [Fri, 6 Sep 2019 06:47:50 +0000 (08:47 +0200)]
Use singleton NodeIdentifierWithPredicates

We do not need to go through SharedSingletonMapTemplate anymore,
as there is a specialized singleton class, which is more efficient.

Change-Id: I21149ec7480a9540d217905a5f65db3b096bbbc6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSuppress ScheduleException warning 51/85051/1
Robert Varga [Fri, 11 Oct 2019 08:27:16 +0000 (10:27 +0200)]
Suppress ScheduleException warning

The Failure object is not marked as serializable. Suppress the
spotbugs warning and mark a fixme to clean up serialization.

Change-Id: I56c84a06060183e9e5851e3a21d85529f5b9551b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump mdsal to 5.0.2 28/84228/26
Robert Varga [Thu, 5 Sep 2019 16:48:14 +0000 (18:48 +0200)]
Bump mdsal to 5.0.2

This bumps mdsal to 5.0.2 as part of Magnesium MRI.

Change-Id: Id9ab45edf28477dca8acf8f7538cfd26f237f6f4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump yangtools to 4.0.1 27/84227/24
Robert Varga [Thu, 5 Sep 2019 16:47:50 +0000 (18:47 +0200)]
Bump yangtools to 4.0.1

This bumps yangtools to 4.0.1 as part of Magnesium MRI.

Change-Id: I6228c73d31721c8427e7f456afd5ab3ff715c88b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump odlparent to 6.0.0 26/84226/22
Robert Varga [Thu, 5 Sep 2019 16:36:01 +0000 (18:36 +0200)]
Bump odlparent to 6.0.0

This bumps odlparent to 6.0.0 as part of Magnesium MRI.

Change-Id: I19505dd80b832cd6ed8b68daf471d9e90d3dfdd2
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoOptimize getAs4BytesCapability() 27/84927/3
Robert Varga [Sun, 6 Oct 2019 15:09:19 +0000 (17:09 +0200)]
Optimize getAs4BytesCapability()

Modernizer is pointing out a use of Guava's optional. This is used
for internal interface, so let's just use a nullable return and
proper checks.

Change-Id: I0de8fb7d0bbc1d10e36b9182143340dbbcb9bb4a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoDo not mock FluentFuture 26/84926/3
Robert Varga [Sun, 6 Oct 2019 15:39:49 +0000 (17:39 +0200)]
Do not mock FluentFuture

We have a perfectly working constant, which does precisely what
this mocking does (except it returning wrong result). Just use
CommitInfo.emptyFluentFuture().

Change-Id: If28bdcf609d2329379a3b538a205c01b4e34be23
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate users of Lists.new*List() 25/84925/2
Robert Varga [Sun, 6 Oct 2019 15:31:35 +0000 (17:31 +0200)]
Migrate users of Lists.new*List()

This modernizes the codebase by utilizing diamond.

Change-Id: Ia288ee8ea8f49868f10626b5c14363ddd6ab4fb7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix checkstyle FallThrough errors 09/84909/5
guillaume.lambert [Fri, 4 Oct 2019 08:01:23 +0000 (10:01 +0200)]
Fix checkstyle FallThrough errors

Document explicit fall-through cases, where we resume state
machine processing.

JIRA: BGPCEP-715
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I0de8a738465feb44c2da79a4d4e79b5be3b4bfac
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoApply modernization to pcep-impl 10/84910/2
Robert Varga [Fri, 4 Oct 2019 07:58:11 +0000 (09:58 +0200)]
Apply modernization to pcep-impl

This mostly ditches Lists.newArrayList(), but also formats some of
the code to remove checkstyle complaints.

Change-Id: Ic525079300dfbec0f12e9da8710fd900b24a9d8b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoApply modernization to BGPParserTest 05/84905/3
Robert Varga [Thu, 3 Oct 2019 15:17:57 +0000 (17:17 +0200)]
Apply modernization to BGPParserTest

Use plain new ArrayList<>().

Change-Id: I8360380311088ce1934f433a6193a7e657b23201
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoApply modernization to MultiPathSupportImplTest 04/84904/2
Robert Varga [Thu, 3 Oct 2019 14:56:44 +0000 (16:56 +0200)]
Apply modernization to MultiPathSupportImplTest

Use plain new ArrayList<>().

Change-Id: I045d3fe9dfe3ee6f6da0967bf44a4e2ea89e45bb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoApply modernization to PCEPHexDumpParser 02/84902/2
Robert Varga [Thu, 3 Oct 2019 14:52:13 +0000 (16:52 +0200)]
Apply modernization to PCEPHexDumpParser

- do not use Lists.newLinkedList()
- use StandardCharsets.UTF_8

Change-Id: I28d2b8468474c7e20c3d9bd5f3d8f95eee273624
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agofix indentation checkstyle errors 03/84903/1
guillaume.lambert [Thu, 3 Oct 2019 14:42:16 +0000 (16:42 +0200)]
fix indentation checkstyle errors

Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I024a086d00688dab5e78263fdc09d8cd221416b1

4 years agofix some checkstyle warnings and errors 00/84900/2
guillaume.lambert [Thu, 3 Oct 2019 13:57:36 +0000 (15:57 +0200)]
fix some checkstyle warnings and errors

- WhitespaceAround
- CustomImportOrder
- EmptyLineSeparator
- MultipleVariableDeclarations
- ParenPad
- OperatorWrap
- UnusedImports

Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ic1a80872f3796a37c7b4cd46ece39cde89852690

4 years agoUpdate docs header to Magnesium in master 09/84309/2
Anushka Bhandari [Tue, 10 Sep 2019 20:51:05 +0000 (02:21 +0530)]
Update docs header to Magnesium in master

Should be Magnesium on master.

Signed-off-by: Anushka Bhandari <anushka16134@iiitd.ac.in>
Change-Id: I2237a6a1866ca89891a5e40c72a05d032bbd9974

4 years agoBump mdsal to 4.0.6 28/84428/4
Robert Varga [Sat, 14 Sep 2019 02:14:59 +0000 (04:14 +0200)]
Bump mdsal to 4.0.6

This picks up the latest fixes.

Change-Id: Ie6f781c266ab05057a0c9e6f4cd0bf4b19aa91ce
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump yangtools to 3.0.5 27/84427/3
Robert Varga [Sat, 14 Sep 2019 02:14:42 +0000 (04:14 +0200)]
Bump yangtools to 3.0.5

This picks up the latest fixes.

Change-Id: Ic37a0d36367f6d89768bec2b92618b4b55aa844f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump odlparent to 5.0.2 25/84225/6
Robert Varga [Thu, 5 Sep 2019 16:35:17 +0000 (18:35 +0200)]
Bump odlparent to 5.0.2

This bumps odlparent to pick up latest references.

Change-Id: Ica16c98bd6eeeb2530bdc9cee4bb7f198e4a6ab0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce use of Lists.new*List() 61/84461/3
Robert Varga [Sat, 14 Sep 2019 20:22:55 +0000 (22:22 +0200)]
Reduce use of Lists.new*List()

Pure-java 'new ArrayList<>()' is just as efficient, use that
instead.

Change-Id: Ibfe198885df96b5eba55a861d9a7824dd63f8fd0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFixup ProtectionCommonParser.serializeBody() 64/84464/1
Robert Varga [Sat, 14 Sep 2019 23:21:27 +0000 (01:21 +0200)]
Fixup ProtectionCommonParser.serializeBody()

This method cannot really tolerate a nullable Short, make it
operate on a primitive short, adjusting callers and improving
efficiency.

Change-Id: Ic1cbfa9fe8f5854fd72cae1c12c864d4bcdb4460
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix checkstyle violations 47/84247/1
Robert Varga [Fri, 6 Sep 2019 08:35:46 +0000 (10:35 +0200)]
Fix checkstyle violations

Upgraded checkstyle is finding a few of these, fix them up.

Change-Id: If3f796fe7b6ca3ba292725ddde81fb1d73849050
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate NodeIdentifierWithPredicates users 36/84236/1
Robert Varga [Fri, 6 Sep 2019 06:45:44 +0000 (08:45 +0200)]
Migrate NodeIdentifierWithPredicates users

Constructors have been deprecated, as well as getKeyValues().
Migrate to their replacements.

Change-Id: Iaf25f19a0debc62db23be23d3003eb863fde6b53
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate to using netconf-artifacts 13/83913/1
Robert Varga [Thu, 22 Aug 2019 14:55:59 +0000 (16:55 +0200)]
Migrate to using netconf-artifacts

restconf-artifacts is going away, being integrated into
netconf-artifacts -- update the reference.

Change-Id: I6030994b2a2744bda5451dada200cb5fcaafd384
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSet PMSI tunnel attribute transitive. 53/83753/6
PeterSuna [Mon, 19 Aug 2019 11:51:10 +0000 (13:51 +0200)]
Set PMSI tunnel attribute transitive.

PMSI tunnel attribute is an optional transitive BGP attribute, as per
https://tools.ietf.org/html/rfc6514#section-5.

Before is was set as a optional non-transitive. Due this flag it
cannot be sent successfully update message with PMSI tunnel attribute
to an Arista device.

JIRA: BGPCEP-877
Change-Id: I50669645e1eb19f14eb14b8f5a5c0217d8983a26
Signed-off-by: PeterSuna <peter.suna@pantheon.tech>
4 years agoBump mdsal to 4.0.4 25/83725/2
Robert Varga [Thu, 15 Aug 2019 08:38:25 +0000 (10:38 +0200)]
Bump mdsal to 4.0.4

This brings in latest fixes.

Change-Id: I59f89ef4fe76ef16fcdc9b59f8d9b50aa0849847
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>