openflowplugin.git
2 years agoMigrate to assertThrows() 62/99662/1
Robert Varga [Tue, 8 Feb 2022 17:52:38 +0000 (18:52 +0100)]
Migrate to assertThrows()

ExpectedException.none() is deprecated, use assertThrows() to narrow
down the code that is expected to throw instead.

Change-Id: Iaeeef4adb3309e1356eb03ff30fb1c6988d5491a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoDo not instantiate JsonParser 44/99644/1
Robert Varga [Tue, 8 Feb 2022 09:27:51 +0000 (10:27 +0100)]
Do not instantiate JsonParser

Use parseString() static method instead of using the deprecated instance
method.

Change-Id: Ica84e1d21bbb229b800a89fd11ce53d61f077883
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoRemove deprecated notifications in sal-meter.yang 33/98933/4
Sangwook Ha [Thu, 9 Dec 2021 07:16:53 +0000 (23:16 -0800)]
Remove deprecated notifications in sal-meter.yang

Deprecated notifications in sal-meter.yang are only used by
test-provider. Remove the notifications from the data model
and the implementation in test-provider.

JIRA: OPNFLWPLUG-1119
Change-Id: I0093cc5fda57cc67237f350837f412e7377191df
Signed-off-by: Sangwook Ha <sangwook.ha@verizon.com>
2 years agoRemove deprecated & unused notifications 32/98932/3
Sangwook Ha [Thu, 9 Dec 2021 01:05:18 +0000 (17:05 -0800)]
Remove deprecated & unused notifications

Deprecated notifications in sal-group.yang & sal-port.yang
are not used any more. Remove the notifications from the data
models.

JIRA: OPNFLWPLUG-1119
Change-Id: Ic9428d5bbcae07225357adde1f72230991b5da1d
Signed-off-by: Sangwook Ha <sangwook.ha@verizon.com>
2 years agoRemove notification-supplier 31/98931/3
Sangwook Ha [Thu, 9 Dec 2021 01:05:18 +0000 (17:05 -0800)]
Remove notification-supplier

notification-supplier is a deprecated application. Remove it as
a first step to clean up deprecated & unused notifications.

JIRA: OPNFLWPLUG-1119
Change-Id: I0c04e9ef0c8d0c52540786afcd77dc457eebc17c
Signed-off-by: Sangwook Ha <sangwook.ha@verizon.com>
2 years agoBump netconf to 2.0.11 08/98708/1
Robert Varga [Thu, 25 Nov 2021 18:01:36 +0000 (19:01 +0100)]
Bump netconf to 2.0.11

Pick up a fix for regression.

Change-Id: Ic1e4da5790b7006bde3751ea52731b85c9923142
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoBump netconf to 2.0.10 57/98557/1
Robert Varga [Tue, 23 Nov 2021 11:13:52 +0000 (12:13 +0100)]
Bump netconf to 2.0.10

Pick up a fix for regression.

Change-Id: I3346facecff377ebc158bc3bf1db5a675b65bdfb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoRefactor FRM unit tests 04/98604/5
Sangwook Ha [Wed, 17 Nov 2021 06:53:08 +0000 (22:53 -0800)]
Refactor FRM unit tests

Move common setup procedure to the parent class FRMTest to reduce
code duplication, and replace RpcProviderRegistryMock with
simple mocking.

Return a future, instead of null, to avoid null pointer exception
during the test, and remove the wrapper assertCommit.

Signed-off-by: Sangwook Ha <sangwook.ha@verizon.com>
Change-Id: Ic4f3f92d17c79c73bc6928820e206d07e6ec058b

2 years agoUpdate MRI upstreams 51/98551/1
Robert Varga [Mon, 15 Nov 2021 21:04:36 +0000 (22:04 +0100)]
Update MRI upstreams

Adopt:
- controller-4.0.7
- aaa-0.14.7
- netconf-2.0.9

Change-Id: Ia67b3a9ce3006aaa0ce6905358184c400a4ea103
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoUpdate MRI upstreams 71/98071/1
Robert Varga [Mon, 8 Nov 2021 06:06:22 +0000 (07:06 +0100)]
Update MRI upstreams

Adopt:
- controller-4.0.6
- aaa-0.14.6
- netconf-2.0.8

Change-Id: I40d7da3d759f657eac637b843e976094c385363e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoUpdate MRI upstreams 73/98173/1
Robert Varga [Thu, 28 Oct 2021 10:03:49 +0000 (12:03 +0200)]
Update MRI upstreams

Adopt:
- odlparent-9.0.8
- infrautils-2.0.8
- yangtools-7.0.8
- mdsal-8.0.7
- controller-4.0.5
- aaa-0.14.5
- netconf-2.0.7

Change-Id: I94110596c5d8de7083002b6a8a1e98e3a7adb9d0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoAdd Sangwook to committers 79/97879/2
Robert Varga [Wed, 13 Oct 2021 11:26:21 +0000 (13:26 +0200)]
Add Sangwook to committers

The vote was passed here:
https://lists.opendaylight.org/g/app-dev/message/942,
make that decision effective.

Change-Id: Id1a157f738b77fa099d3851e19c6df3f75565bab
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoUpdate Robert's details 78/97878/1
Robert Varga [Wed, 13 Oct 2021 11:23:44 +0000 (13:23 +0200)]
Update Robert's details

Affiliation and timezone are not correct, fix that.

Change-Id: Iec4b09273d839f701be88984db8c803c76dd35a8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoBump versions by x.(y+1).z 54/97554/1
jenkins-releng [Tue, 21 Sep 2021 00:25:43 +0000 (00:25 +0000)]
Bump versions by x.(y+1).z

Signed-off-by: jenkins-releng <jenkins-releng@opendaylight.org>
Change-Id: Iccfdc8d2b474aeed2fc31e17b30b0c2a74d04627

2 years agoBump upstream versions 25/97525/2
Robert Varga [Sun, 19 Sep 2021 20:20:17 +0000 (22:20 +0200)]
Bump upstream versions

Adopt netconf-2.0.5 et al.

Change-Id: If784291cbb9a407a566b1d6141a0a30aa13c1c1b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoBump upstream versions 35/97335/1
Robert Varga [Thu, 26 Aug 2021 09:47:26 +0000 (11:47 +0200)]
Bump upstream versions

Adopt netconf-2.0.3 et al.

Change-Id: I033b29c9f46800070687dec2ab7e8719833a2292
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoRemove utility class constructor exceptions 41/97241/1
Robert Varga [Tue, 17 Aug 2021 20:49:20 +0000 (22:49 +0200)]
Remove utility class constructor exceptions

There is no point in guarding private constructors, just use a simple
comment.

Change-Id: I19391f8cae07af5280998d294c6fa0a7347e5fac
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoBump upstream versions 92/97092/1
Robert Varga [Fri, 6 Aug 2021 09:00:46 +0000 (11:00 +0200)]
Bump upstream versions

Adopt netconf-2.0.2 et al.

Change-Id: Ib498d6c024d856c19f9de9719e760af08d187769
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoCleanup dependencies 45/96945/3
Robert Varga [Tue, 20 Jul 2021 12:20:31 +0000 (14:20 +0200)]
Cleanup dependencies

We have a number of unused declared dependencies. Clean them up, so that
we do not pull in unrelated things.

Change-Id: I89dd1b46caf31f088b36f3734ce6050a76b371ea
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoBump netconf to 2.0.1 22/96922/1
Robert Varga [Mon, 19 Jul 2021 14:36:20 +0000 (16:36 +0200)]
Bump netconf to 2.0.1

Pick up latest upstream fixes.

Change-Id: Id44b831126d4da0fb5f928f8ea09392a55ea3344
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoUpdate MRI upstreams for Phosphorus 99/96399/14
Robert Varga [Tue, 1 Jun 2021 11:19:07 +0000 (13:19 +0200)]
Update MRI upstreams for Phosphorus

Adopt latest versions, namely;
- odlparent-9.0.2
- infrautils-2.0.2
- mdsal-8.0.0
- controller-4.0.0
- aaa-0.14.0
- netconf-2.0.0

Also introduce model-{inventory,topology}, which were removed from
upstream.

Since these versions also force the Uint8/Uint32 vs. Short/Long
equivalence issue, we mass-migrate all APIs to use Uint constructs.
This in turn requires minor adjustments to mocks, as we no longer
get automatic smart zeroes.

Another thing that is cropping up here is that augment-identifier
is now reflected in package names properly, requiring a proper update
of imports and references.

Change-Id: If3fc2bf0bb29ed4c313ad4489ab90ecd383df7d0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoUse GuicedEE for javax.inject 00/96400/1
Robert Varga [Tue, 1 Jun 2021 11:25:21 +0000 (13:25 +0200)]
Use GuicedEE for javax.inject

javax.inject is an ancient artifact, which use the version published
by GuicedEE, as it is a proper bundle as well as a JPMS module.

Change-Id: Ifc6fa52925cad2b10e3fb2e7ff2146f6da39a0ba
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
2 years agoUse osgi.core from OSGi R7 98/96398/1
Robert Varga [Tue, 1 Jun 2021 11:23:08 +0000 (13:23 +0200)]
Use osgi.core from OSGi R7

Release 7 has changed the artifact name, use the new name instead
of the R6 name.

Change-Id: I612163a783faaa01fb2a8f09cad91e5c3d0dd60c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoBump MRI upstreams 49/95649/2
Robert Varga [Fri, 2 Apr 2021 05:38:11 +0000 (07:38 +0200)]
Bump MRI upstreams

Adopt following versions:
- odlparent-8.1.1
- infrautils-1.9.6
- yangtools-6.0.5
- mdsal-7.0.6
- controller-3.0.7
- aaa-0.13.2
- netconf-1.13.1

Change-Id: I2462f0e95ca72119c01d733de191dba84c6810fd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoBump versions by x.(y+1).z 91/95291/1
jenkins-releng [Mon, 22 Feb 2021 23:02:56 +0000 (23:02 +0000)]
Bump versions by x.(y+1).z

Signed-off-by: jenkins-releng <jenkins-releng@opendaylight.org>
Change-Id: I39137bc934f282ad9bd01ef2c21a310532136c64

3 years agoBump netconf to 1.13.0 47/95247/2
Robert Varga [Sun, 21 Feb 2021 17:53:27 +0000 (18:53 +0100)]
Bump netconf to 1.13.0

Adjust version for MRI-integrated NETCONF.

Change-Id: I6334e2d52e4040561fe21a0a8cb2ab0d11dbb2e9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdopt akka-2.6.x 80/94980/3
Oleksii Mozghovyi [Tue, 2 Feb 2021 21:47:19 +0000 (23:47 +0200)]
Adopt akka-2.6.x

Bump upstream to controller-3.0.6 to adopt akka-2.6.x.

Change-Id: I16a6477ce8f0fb40f72e8eccb1f4b822159982a7
Signed-off-by: Oleksii Mozghovyi <oleksii.mozghovyi@pantheon.tech>
3 years agoCorrect odl-infrautils-diagstatus dependency 48/94948/1
Robert Varga [Mon, 1 Feb 2021 16:01:44 +0000 (17:01 +0100)]
Correct odl-infrautils-diagstatus dependency

infrautils is an MRI project, the dependency should use a range.

Change-Id: I520f19fce82e9b2710778400e2674e9cc7b0466e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoBump upstream versions 15/94715/4
Robert Varga [Thu, 21 Jan 2021 18:20:04 +0000 (19:20 +0100)]
Bump upstream versions

Adopt following upstreams:
- odlparent-8.1.0
- infrautils-1.9.5
- yangtools-6.0.4
- mdsal-7.0.5
- controller-3.0.5

Change-Id: Ia6032355584427bda82e8993190b979c9776e340
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoContextChainHolderImpl maps are Concurrent 33/94733/1
Robert Varga [Fri, 22 Jan 2021 12:23:20 +0000 (13:23 +0100)]
ContextChainHolderImpl maps are Concurrent

Document the intended contract, allowing future improvements around
executed operations.

Change-Id: I778c4ecb82ec1e3be129bdcdce9e5fd925dc88a3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix OPNFLWPLUG-1107 null pointer exception 89/94689/2
Sangwook Ha [Thu, 21 Jan 2021 02:19:23 +0000 (18:19 -0800)]
Fix OPNFLWPLUG-1107 null pointer exception

Check if deviceInfo is null before continue - OpenFlow channel may get
dropped before deviceInfo is available.

Change-Id: I71a2928ac52df425692dd98b455923dcddfa1d28
Signed-off-by: Sangwook Ha <sangwook.ha@verizon.com>
3 years agoEliminate blueprint from openflow-protocol-impl 79/94679/1
Robert Varga [Wed, 20 Jan 2021 21:33:06 +0000 (22:33 +0100)]
Eliminate blueprint from openflow-protocol-impl

We have simple services here, to the point of one being ServiceLoader
kind. Use OSGi DS instead of blueprint, unblocking dependencies and
making things neater.

Change-Id: Ifab9ba92e1ac6d73854093b5dce4768bd722984e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMigrate TableFeaturesConvertorTest 13/94613/2
Robert Varga [Tue, 12 Jan 2021 10:26:57 +0000 (11:26 +0100)]
Migrate TableFeaturesConvertorTest

Use BindingMap to stop using List of items which are actually a Map.

Change-Id: Ia0756b6a0cb9397286feb32eced7181c3094ec17
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMigrate more setFoo(List) setters 07/94607/2
Robert Varga [Tue, 12 Jan 2021 01:10:26 +0000 (02:10 +0100)]
Migrate more setFoo(List) setters

Clean up more call sites, using BindingMap.ordered(). Also fixes
a few performance regressions introduced during original migration.

Change-Id: I8491695cb482c2b8e6fe7d53d41a5bede61b068f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix next round of OFP test warnings 06/94606/1
Robert Varga [Tue, 12 Jan 2021 01:04:16 +0000 (02:04 +0100)]
Fix next round of OFP test warnings

We are on home stretch now, update a few more tests.

Change-Id: Ibdf7ccac8d8d5b212ab9c7c2903f69098df2768b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMore OFP production code migration 05/94605/2
Robert Varga [Mon, 11 Jan 2021 21:45:16 +0000 (22:45 +0100)]
More OFP production code migration

Use BindingMap and similar construcs to switch from Lists to Maps.

Change-Id: I35c8e71ac03dbec10c32074e8caad1fd3c95d374
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMore OFP test conversions 04/94604/1
Robert Varga [Mon, 11 Jan 2021 21:44:34 +0000 (22:44 +0100)]
More OFP test conversions

Use various tricks to get rid of warnings, mostly BindingMap.

Change-Id: I6e3273567bc207ab0d265d68afbbdbed6a36987e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup warnings in openflowplugin-extension-eric 03/94603/1
Robert Varga [Mon, 11 Jan 2021 21:05:31 +0000 (22:05 +0100)]
Cleanup warnings in openflowplugin-extension-eric

Use BindingMap.of() instead of Collections.singletonList() and
move on.

Change-Id: Idd869836bac003fe3fda3c682837eb775c6745f4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAnother round of ofp-impl warning fixes 01/94601/3
Robert Varga [Mon, 11 Jan 2021 18:00:02 +0000 (19:00 +0100)]
Another round of ofp-impl warning fixes

Use ByteBufUtils.readUint{8,16,32,64} and BindingMap's facilities
to migrate away from legacy components.

Change-Id: I21aafa5d09c0c9f6c46eba543c61755fd7f18723
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoDrop locking from FlowGroupInfoHistoryImpl 02/94602/2
Robert Varga [Mon, 11 Jan 2021 19:17:31 +0000 (20:17 +0100)]
Drop locking from FlowGroupInfoHistoryImpl

Updates here are in the fast path and we are taking locks for
something that is used ... almost never.

Remove locking and perform time-bound retries to acquire entries
instead, explaining the situation in comments.

If this is not sufficient, a TODO is also added as to what needs
to happen to make the entry acquisition reliable.

Change-Id: I21d05e074bb5033942ef4f7d0bc210a2e9bbf359
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove FlowGroupCacheManager crud 91/94591/10
Robert Varga [Sun, 10 Jan 2021 22:07:22 +0000 (23:07 +0100)]
Remove FlowGroupCacheManager crud

Split out history tracking into Device{Flow,Group}Registry, so that
we do not perform NodeId-based lookups.

Integrate this history with Device{Context,Manager} and their
respective services instead, removing the need for most of the crud
introduced in f636f76930e43e34c2c2decd210ccd33e6e2c1fa.

Change-Id: Ic9bb8829a253dbe49b9bd285df2eb47788c1fbb0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFurther test migration 00/94600/1
Robert Varga [Mon, 11 Jan 2021 17:57:55 +0000 (18:57 +0100)]
Further test migration

Use BindingMap instead of lists for easy migration.

Change-Id: Ifb721a363009475717222b71ec4982e10a777618
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMigrate MultipartReplyPortStatsDeserializer 98/94598/1
Robert Varga [Mon, 11 Jan 2021 14:24:05 +0000 (15:24 +0100)]
Migrate MultipartReplyPortStatsDeserializer

Use readUint{32,64} and BindingMap to eliminate warnings, and improve
both readability and performance.

Change-Id: Ib30396a7cc8deee9ad254e27730ed1361ef718d7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMigrate more List-based map setters 90/94590/2
Robert Varga [Sun, 10 Jan 2021 20:05:26 +0000 (21:05 +0100)]
Migrate more List-based map setters

There are a number of cases where we can use BindingMap and its
Builder to create a ready-made map.

Change-Id: I5205681583849bb95c81c8dc95728436aa0701c5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse BindingMap to migrate tests 89/94589/2
Robert Varga [Sun, 10 Jan 2021 20:04:50 +0000 (21:04 +0100)]
Use BindingMap to migrate tests

A number of tests are using Lists, where BindingMap can provide a
nice bridge.

Change-Id: Ib26a3b3a7587afb58f8abb02706dc693d566b920
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoProperly check for FlowRef before touching caches 86/94586/6
Robert Varga [Sun, 10 Jan 2021 12:26:34 +0000 (13:26 +0100)]
Properly check for FlowRef before touching caches

FlowRef is not necessarily present, hence we need to properly
isolate code that requires it.

This ends up being a larger-scale refactor, as there was a ton
of duplicate code. At the end of the day, this debugging facility's
footprint is reasonably reduced.

JIRA: OPNFLWPLUG-1106
Change-Id: I402cc302ab09e22bda7f731f7da4431f576c8bbb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCorrect OF10EnqueueActionDeserializer 16/94416/3
Robert Varga [Tue, 5 Jan 2021 17:04:12 +0000 (18:04 +0100)]
Correct OF10EnqueueActionDeserializer

We seem to have a mismatch in header deserialization, fix it up.

Change-Id: I1807b24e9fe2cd6ef9852009131ae251b46aea7d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove EricMatchCodecs 20/94420/3
Robert Varga [Tue, 5 Jan 2021 22:43:07 +0000 (23:43 +0100)]
Remove EricMatchCodecs

This class hosts only two constants, move them to their respective
classes as singleton constants.

Change-Id: Iddac2dc01a7854f3461d5581d18b8530947179f8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoOFSerializer.serialize() takes NonNull arguments 19/94419/2
Robert Varga [Tue, 5 Jan 2021 22:35:31 +0000 (23:35 +0100)]
OFSerializer.serialize() takes NonNull arguments

Users can rely on these never being null, document that.

Change-Id: I7bc7a5775a87629c3d6c28aa5ed889508ddc72c4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoBump MRI upstreams 18/94518/2
Robert Varga [Fri, 8 Jan 2021 20:50:00 +0000 (21:50 +0100)]
Bump MRI upstreams

Adopt following versions:
- odlparent-8.0.3
- infrautils-1.9.4
- yangtools-6.0.3
- mdsal-7.0.4
- controller-3.0.4

Change-Id: Ie85de0e127d1c0ea57c9758efdbc2c6a21ae521d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix checkstyle 42/94542/1
Robert Varga [Sat, 9 Jan 2021 09:32:39 +0000 (10:32 +0100)]
Fix checkstyle

Upgraded checkstyle finds a number of formatting issues which were
previously undetected. Fix them up.

Change-Id: I63640aee38927bde9f22e73e21640b81cfb07d85
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoEnable modernizer in openflow-protocol-impl 15/94415/1
Robert Varga [Tue, 5 Jan 2021 17:09:18 +0000 (18:09 +0100)]
Enable modernizer in openflow-protocol-impl

Modernizer is only flagging a misuse of MoreObjects.firstNonNull(),
replace the call sites with Objects.requireNonNull() and flip
enforcement on.

Change-Id: I825538398ebff463e606a337353a5cc6565506ee
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdd AbstractActionCaseDeserializer 11/94411/6
Robert Varga [Tue, 5 Jan 2021 13:01:37 +0000 (14:01 +0100)]
Add AbstractActionCaseDeserializer

Most implementations of AbstractActionDeserializer result in an
Action, which we can pull down into the abstract class, reducing
the amount of duplicate code.

This makes the dispatch a bit more friendly, as the there are
fewer implementations of the actual entry point.

Change-Id: I610a8412dedc15ee9a22e4d1d26c498c2d9f3ba3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoClean up a few factories 14/94414/2
Robert Varga [Tue, 5 Jan 2021 16:46:40 +0000 (17:46 +0100)]
Clean up a few factories

Remove unneeded @SuppressFBWarnings and use builders fluently,
cutting down bytecode.

Change-Id: I28aaa83701bb401e057c45671de7968ac03d458c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoOptimize ByteBufUtils.readIetfIpv4Address() 13/94413/3
Robert Varga [Tue, 5 Jan 2021 14:37:59 +0000 (15:37 +0100)]
Optimize ByteBufUtils.readIetfIpv4Address()

Use a simple readInt() and pass that down do IetInetUtil, so we
have a more efficient decode.

Change-Id: I9ee229ced8dccf59509c050b0559713d7fcbabde
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup a few protocol deserializers 10/94410/1
Robert Varga [Tue, 5 Jan 2021 12:54:44 +0000 (13:54 +0100)]
Cleanup a few protocol deserializers

We can use a simple list and reorganize our builders for clarity.

Change-Id: I3660eab1e0ace31e900d6e31e0ada276624b8edc
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup MeterConvertorTest 08/94408/3
Robert Varga [Tue, 5 Jan 2021 11:26:15 +0000 (12:26 +0100)]
Cleanup MeterConvertorTest

Use BindingMap.ordered() and clean up some builder usage.

Change-Id: Ia56af4bade4fe7b958dcb35a6273c08a0a91c4ce
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoClean up GroupConvertorTest 09/94409/2
Robert Varga [Tue, 5 Jan 2021 11:51:54 +0000 (12:51 +0100)]
Clean up GroupConvertorTest

Use BindingMap.ordered() instead of the various lists, fixing
related warnings.

Change-Id: Id59d83a345d7eb3dd378a9bf03868bb8982d1c63
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup PacketOutConvertorTest 07/94407/1
Robert Varga [Tue, 5 Jan 2021 10:36:53 +0000 (11:36 +0100)]
Cleanup PacketOutConvertorTest

Use BindingMap.of() to migrate the single use of list remaining,
also cleaning up builder usage a bit.

Change-Id: I52e675943c6375631601a95b5ee261968216d22e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup FlowConvertorTest 06/94406/1
Robert Varga [Tue, 5 Jan 2021 10:18:59 +0000 (11:18 +0100)]
Cleanup FlowConvertorTest

Use BindingMap.of() instead of lists to get rid of related
warnings. Also clean up builder use.

Change-Id: Icda5eb7e1460f1e6212085dc9d768f4b241af6bb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup liblldp 04/94404/1
Robert Varga [Tue, 5 Jan 2021 08:44:58 +0000 (09:44 +0100)]
Cleanup liblldp

Remove use of Class.newInstance() in favor of Supplier<Packet>,
which takes reflection out of the picture.

Also cleanup various other warnings, improving efficiency in the
process.

Change-Id: Iaed142fd2ab4ce0fa4a765d8b3f4006fd8076b1f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup ofp nicira extension 89/94389/16
Robert Varga [Mon, 4 Jan 2021 00:40:14 +0000 (01:40 +0100)]
Cleanup ofp nicira extension

Fix warnings coming from uint type widening and clean up builder
usage.

Also optimize MatchUtil.ipv4ToLong() by using IetfInetUtil, since
which is the most efficient way of during that conversion. This
leads to a cleanup of MatchUtil, which is taught to operate on Uint32
instead.

Change-Id: I6219f47d4dc06b046b1fce5c7acd699edd96d3ad
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMerge "Cleanup MeterMessageSerializer"
Robert Varga [Tue, 5 Jan 2021 08:32:28 +0000 (08:32 +0000)]
Merge "Cleanup MeterMessageSerializer"

3 years agoFix warnings in test-provider 99/94399/10
Robert Varga [Mon, 4 Jan 2021 10:39:59 +0000 (11:39 +0100)]
Fix warnings in test-provider

Fix deprecation warnings by converting to use uint types/BindingMap
and apply @Deprecated as appropriate. There will be more rounds to
deal with the rest of the warnings.

Change-Id: Id144002ad80503fa3eeb3c0fbb73fe5490aea9e3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup MeterStatsResponseConvertor 95/94395/3
Robert Varga [Mon, 4 Jan 2021 10:12:15 +0000 (11:12 +0100)]
Cleanup MeterStatsResponseConvertor

Remove use of deprecated methods and cleanup builder use.

Change-Id: Ie9e6d9cadc0728c0d16886debe65be76e123a6d0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup PacketOutConvertor 94/94394/3
Robert Varga [Mon, 4 Jan 2021 10:03:51 +0000 (11:03 +0100)]
Cleanup PacketOutConvertor

Update structure to follow best practices.

Change-Id: I957525431927593532e9b79b2d532135beb5fd4b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoEnforce modernizer in openflowjava-extension-nicira 97/94397/2
Robert Varga [Mon, 4 Jan 2021 10:35:15 +0000 (11:35 +0100)]
Enforce modernizer in openflowjava-extension-nicira

We have just a few violations, fix them and flip enforcement on.

Change-Id: I3ee63fa565b6b5c8bfa0a63d2596947806433d7a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoEnforce modernizer in openflowplugin-extension-onf 96/94396/2
Robert Varga [Mon, 4 Jan 2021 10:25:22 +0000 (11:25 +0100)]
Enforce modernizer in openflowplugin-extension-onf

Fix the two violations we have and switch enforcement on.

Change-Id: I7b81271e6f4486072fa26fd62ad975c98b6e59ad
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoEnforce modernizer in openflowplugin 93/94393/1
Robert Varga [Mon, 4 Jan 2021 09:57:21 +0000 (10:57 +0100)]
Enforce modernizer in openflowplugin

Fix the two remaining issue and flip enforcement on.

Change-Id: I0b542fdb08bc61214d72fc5b87da295d1e2f9eb2
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoPartial cleanup of convertors 90/94390/5
Robert Varga [Mon, 4 Jan 2021 02:12:51 +0000 (03:12 +0100)]
Partial cleanup of convertors

Migrate away from unit/lists and refactor the code for clarity and
speed.

Change-Id: I142b49de0908fef3c014a516058e9ffe13c998e0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoDo not use sal-common-util 92/94392/1
Robert Varga [Mon, 4 Jan 2021 09:52:30 +0000 (10:52 +0100)]
Do not use sal-common-util

This simple helper has been deprecated, stop using it.

Change-Id: I30a1b2999751fddf12735d673791426a0779d620
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFinish OFJ nicira migration 88/94388/2
Robert Varga [Mon, 4 Jan 2021 00:13:10 +0000 (01:13 +0100)]
Finish OFJ nicira migration

Fixup final two places where we go through BigInteger.

Change-Id: I18ea8783071033a7f369e24cb5e2e90601dfc46a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoClean up OVJ nicira action codecs 87/94387/3
Robert Varga [Sun, 3 Jan 2021 23:41:28 +0000 (00:41 +0100)]
Clean up OVJ nicira action codecs

Migrate to use unit types and cleanup builder usage.

Change-Id: Iaed5405bad9f287e8822362554e799e54e35fa90
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoClean up OVJ nicira match codecs 86/94386/3
Robert Varga [Sun, 3 Jan 2021 23:27:47 +0000 (00:27 +0100)]
Clean up OVJ nicira match codecs

Migrate to use unit types and cleanup builder usage.

Change-Id: Id9e8199d7c1fcccfa653bd1ad4c3b740fd9566f0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup ConntrackCodec 85/94385/2
Robert Varga [Sun, 3 Jan 2021 23:04:54 +0000 (00:04 +0100)]
Cleanup ConntrackCodec

Use fluent builders where possible, making things less verbose.

Change-Id: Iba942161badab8484e5188ed041ca50e78424ca6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoSpeed up ConntrackCodec's ipv4 handling 84/94384/3
Robert Varga [Sun, 3 Jan 2021 22:56:34 +0000 (23:56 +0100)]
Speed up ConntrackCodec's ipv4 handling

Add readIpv4Address(), which uses IetfInetUtil to efficiently
read an Ipv4Address from a ByteBuf. Also move the write path,
which already uses IetfInetUtil.

Change-Id: Ic5a64f06cf4349bfbb2f6a9347a05a81afb33a10
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix ConntrackCodec warnings 83/94383/2
Robert Varga [Sun, 3 Jan 2021 22:48:36 +0000 (23:48 +0100)]
Fix ConntrackCodec warnings

Propagate Uint16 as appropriate, so that we do not get deprecation
warnings. Also perform some house cleaning.

Change-Id: I6e9b201a774dcffddd3170fc89a00e7b475b430a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup LearnCodec 82/94382/2
Robert Varga [Sun, 3 Jan 2021 22:36:23 +0000 (23:36 +0100)]
Cleanup LearnCodec

This is just some minor house keeping.

Change-Id: I35a176b847885cb7f96ea52ef0f06fe9ada48bea
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoDo not check src/dst twice 81/94381/1
Robert Varga [Sun, 3 Jan 2021 22:07:50 +0000 (23:07 +0100)]
Do not check src/dst twice

We have two if-else branches which cover two distinct states. Move
the logic into its utility method, which makes sit obvious what is
going on.

Change-Id: I699eeffb637cc78583923d871cc94e55b09bbd35
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse Uint16 for numBits 80/94380/1
Robert Varga [Sun, 3 Jan 2021 22:02:13 +0000 (23:02 +0100)]
Use Uint16 for numBits

Migrate legacy setter use by embracing Uint16 as a validated
holder.

Change-Id: I3de4cf98b223fad732efa676edddea5b4468af06
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse readUint16(ByteBuf) 79/94379/1
Robert Varga [Sun, 3 Jan 2021 21:54:48 +0000 (22:54 +0100)]
Use readUint16(ByteBuf)

We have open-coded ByteBuf.readUnsignedShort(), ditch that in favor
of readUint16().

Change-Id: I0fcaa221c9a84323b39dae0a69cf712b98740c7b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix LearnCodecUtil scalability 78/94378/3
Robert Varga [Sun, 3 Jan 2021 21:32:45 +0000 (22:32 +0100)]
Fix LearnCodecUtil scalability

LearnCodecUtil.buildFlowModSpecs() is statically synchronized to
keep track of overflows. Encapsulate that state in an object,
disarming this particular landmine.

Change-Id: Iae68992ca72e71d2c11e6ef48b88c0227b087ae9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup LearnCodecUtil 77/94377/4
Robert Varga [Sun, 3 Jan 2021 20:39:56 +0000 (21:39 +0100)]
Cleanup LearnCodecUtil

Perform all-round verbosity cleanup. This makes it clear we have
a before-and-after stage.

Change-Id: I6e92826bf3a48fd66d58d632cdea39012cc0674b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRefactor MatchExtensionHelper 76/94376/2
Robert Varga [Sun, 3 Jan 2021 19:37:10 +0000 (20:37 +0100)]
Refactor MatchExtensionHelper

This is a rather simple utility class. Since we are cleaning up
deprecation warnings, we might as well completely refactor it.

This results in much more expressive code as well as performance
wins, as we propagate invariants as early as possible -- untangling
the Optional.ofNullable().map().orElse(new ...) mess.

Change-Id: Ia92d36626c6c449558a3cd91f4f52b708b0d9645
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix warnings in forwardingrules-sync 75/94375/2
Robert Varga [Sun, 3 Jan 2021 17:41:53 +0000 (18:41 +0100)]
Fix warnings in forwardingrules-sync

Perform a straight migration to BindingMap.orderedBuilder(), fixing
deprecation warnings and fixing some copy&paste sizing issues.

Change-Id: I6b5c7a2d5a5267358b223015f59c12089844db88
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix warnings in notification-supplier 74/94374/2
Robert Varga [Sun, 3 Jan 2021 17:26:30 +0000 (18:26 +0100)]
Fix warnings in notification-supplier

There are a few places using deprecated constructs, update them.

Change-Id: Iee4ddb62f37f2d548bb3b2b2b6f2e88e92dd738e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup table-miss-enforcer 73/94373/2
Robert Varga [Sun, 3 Jan 2021 17:15:21 +0000 (18:15 +0100)]
Cleanup table-miss-enforcer

We have a few warnings here, fix them up.

Change-Id: I71c435925bf1c5419eefc0691691e9bc7f112446
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix warnings in topology-manager 72/94372/2
Robert Varga [Sun, 3 Jan 2021 17:07:00 +0000 (18:07 +0100)]
Fix warnings in topology-manager

Use BindingMap.ordered() to perform minimal migration of tests,
also fixing obvious warnings reported by Eclipse.

Change-Id: Id8c804d6fa02da269c079993a8f4d9609e350ac3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup sample-consumer 71/94371/2
Robert Varga [Sun, 3 Jan 2021 17:01:06 +0000 (18:01 +0100)]
Cleanup sample-consumer

We have a few warnings, fix them up by refactoring to current
best practices.

Change-Id: I85acd2d7494b861f7d313af92b896f4d40bbb032
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup SampleFlowCapableNodeListener 70/94370/2
Robert Varga [Sun, 3 Jan 2021 16:54:02 +0000 (17:54 +0100)]
Cleanup SampleFlowCapableNodeListener

We have a few deprecation warnings here, refactor to remove them
and follow fluent builder best practices.

Change-Id: I7a2d2a2bcc9246ae90a3499eacaba5a1e36a62d0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove unneded check 66/94366/3
Robert Varga [Sun, 3 Jan 2021 15:25:26 +0000 (16:25 +0100)]
Remove unneded check

Sonar is pointing out we are using boolean literals, which is not
needed as the check already is a boolean.

Change-Id: Ieeebe144a91d08dd55a6f7971baa03086e6ce13d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix code smell in HandshakeManagerImpl 65/94365/4
Robert Varga [Sun, 3 Jan 2021 15:21:25 +0000 (16:21 +0100)]
Fix code smell in HandshakeManagerImpl

Sonar is pointing out thrown Exception which just does not happen,
fix that.

Change-Id: I75c92f9c814d23545b22954f02747b6f211bb01b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup MeterMessageSerializer 60/94360/2
Robert Varga [Sun, 3 Jan 2021 11:40:29 +0000 (12:40 +0100)]
Cleanup MeterMessageSerializer

Get rid of nullable logic, so that we have more direct and clean
logic. Also pre-encode the default flags, so we pick it up for zero
cost.

Change-Id: Ic6d773a9c2b11e0d848087f52279d044908eb247
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoSpeed up DeviceGroupRegistry.isGroupPresent() 64/94364/2
Robert Varga [Sun, 3 Jan 2021 15:13:58 +0000 (16:13 +0100)]
Speed up DeviceGroupRegistry.isGroupPresent()

Sonar is complaining about an explicit 'false' here, fix that warning
by storing the result and having a proper expression. This ends up
being faster, as we perform only a single lookup.

Change-Id: I9c96a3c01be5e01fbb215bc0d86c78f06185fe30
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove use of Optional from DeviceInitializationUtil 63/94363/3
Robert Varga [Sun, 3 Jan 2021 14:00:25 +0000 (15:00 +0100)]
Remove use of Optional from DeviceInitializationUtil

The use here is completely unneeded -- we can serve the same thing
with checks for null.

Change-Id: Ic5958cd97f91676a2ab6b34c9f049a7f73eaa1d5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoReduce use of Optional in ContextChainHolderImpl 62/94362/3
Robert Varga [Sun, 3 Jan 2021 13:52:08 +0000 (14:52 +0100)]
Reduce use of Optional in ContextChainHolderImpl

Optional.ofNullable().ifPresent() can easily be replaced with
a null check, making code clearer. We also end up rewrapping
ownership state -- just drop to using nullable, as that makes
the corresponding check easier.

Change-Id: I74efb538cdf3cf66350a8bcb23d0207070864dc2
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup MultipartReplyTranslatorUtil 61/94361/3
Robert Varga [Sun, 3 Jan 2021 13:39:57 +0000 (14:39 +0100)]
Cleanup MultipartReplyTranslatorUtil

Rather than using Optional.flatMap(), which seems to be an all-time
favorite switch to using null checks and explicit returns. While we
are here, also make sure we use Builders' fluent capacity.

Change-Id: Ib27cbc4e290620ddb53139349079f0349f84e0ff
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup MatchUtil 58/94358/7
Robert Varga [Sun, 3 Jan 2021 10:41:41 +0000 (11:41 +0100)]
Cleanup MatchUtil

Switch MatchUtil.resolveExtensions() to return a map, removing
a source of needless copying.

Change-Id: I3343be5cb848774d7047ad27c2ec96a24e343aa8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup AbstractActionInstructionSerializer 55/94355/6
Robert Varga [Sun, 3 Jan 2021 10:16:44 +0000 (11:16 +0100)]
Cleanup AbstractActionInstructionSerializer

Do not use Optional.ofNullable() for null checks, leading to cleaner
and meaner code.

Change-Id: I302bccbadbaeb6633c8f12afdea6ffe3a751826c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup ConfigurationServiceFactoryOsgiImpl 57/94357/6
Robert Varga [Sun, 3 Jan 2021 10:36:26 +0000 (11:36 +0100)]
Cleanup ConfigurationServiceFactoryOsgiImpl

Do not use Optional.ofNullable() for null checks and also properly
unget service after use.

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