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>
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>
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>
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>
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>
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>
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Robert Varga [Tue, 5 Jan 2021 08:32:28 +0000 (08:32 +0000)]
Merge "Cleanup MeterMessageSerializer"
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Robert Varga [Sun, 3 Jan 2021 10:25:06 +0000 (11:25 +0100)]
Cleanup TableFeaturesMatchFieldDeserializer
Remove overzealous use of optionals to make the logic cleaner
and more performant.
Change-Id: I8305b49877e309971222954f8a0a5e8cce9b8f59
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 3 Jan 2021 09:53:58 +0000 (10:53 +0100)]
Cleanup MatchSerializer
Remove use of Optional.ofNullable() as a null guard, improving
overall performance and readability.
Change-Id: I028537276720697b7109c92096719a55df53e6a8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 3 Jan 2021 09:58:19 +0000 (10:58 +0100)]
Cleanup ExtensionSessionManagerImpl
Use a properly-constant singleton and remove unused logger.
Change-Id: I0ed7bc521aaa121a13f07ad8f72b37e00d2b522a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 3 Jan 2021 09:49:05 +0000 (10:49 +0100)]
Cleanup MultipartRequestExperimenterSerializer
Split fallback serialization into its own method and remove use
of Optional.ofNullable().ifPresent() in favor of null checks.
Change-Id: Ic4581efbc383de4b2c6028c6be654280fae0605d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 3 Jan 2021 09:51:01 +0000 (09:51 +0000)]
Merge changes Ia53720b0,I9f54d265
* changes:
Cleanup GroupMessageSerializer
Cleanup MultipartRequestTableFeaturesSerializer
Robert Varga [Sun, 3 Jan 2021 08:30:46 +0000 (09:30 +0100)]
Cleanup GroupMessageSerializer
Do not use Optional for logic decisions, making translation clearer
and more performant.
Change-Id: Ia53720b0b18753e77de5f74614bb5a7ea775fd42
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 3 Jan 2021 08:19:27 +0000 (09:19 +0100)]
Cleanup MultipartRequestTableFeaturesSerializer
Remove use of Optional for logic decisions. Also do not convert
string to bytes twice.
Change-Id: I9f54d2653fbbb86525c6dfd1cbbaf76d187d573e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 19 Jan 2018 18:28:30 +0000 (19:28 +0100)]
Clean up ListeningExecutorService usage
It turns out we do not really need ListeningExecutorService at all,
but can live with a normal ExecutorService. Furthermore most contexts
where we used ExecutorService can completely get by through a simple
Executor, which makes lifecycle more predictable.
Change-Id: Ic1b2a3d49433557d0c5934445a79e06391d24fe8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 10:49:07 +0000 (11:49 +0100)]
Cleanup FlowMessageSerializer
Further reduce use of Optional.ofNullable().map() crud and also
reduce Guava use as per modernizer warnings.
Change-Id: Ic060c95941b9ac0f1b40b1350dce50c004e0fd0e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 3 Jan 2021 00:11:40 +0000 (01:11 +0100)]
Optimize SetAsyncInputMessageFactory
This class is very similar to GetAsyncReplyMessageFactory, apply
same optimizations.
Change-Id: Iaeacd426fb99aaf1ce527d53bcb935aaf0551fcd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 23:45:05 +0000 (00:45 +0100)]
Optimize AsyncConfigMessageSerializer
Do not use optionals to dispatch on nullable properties. Also do not
create a Map for bitmap conversion.
Change-Id: I4205d127c2e78e67671d8a599b065f9afe7c6f2a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 16:49:14 +0000 (17:49 +0100)]
Migrate a few convertors
Be a bit smarter about dealing with units, fixing related warnings.
JIRA: OPNFLWPLUG-1099
Change-Id: I9ab33dc6634f37bb38735d948741424c9c2fa07f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 20:04:25 +0000 (21:04 +0100)]
Optimize GetAsyncReplyMessageFactory bitmasks
Do not instantiate a HashMap just to store offsets we have readily
available. Use direct bitmask construction instead, speedings things
up quite a bit.
Since we are doing the same thing for three difference enumerations,
introduce a common methods to do the heavy lifting.
Change-Id: I2999b00df64f596f3d025d9e83c5e3dcca376d90
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 12:12:17 +0000 (13:12 +0100)]
Remove a reference to org.mockito.Matchers
These methods are deprecated, migrate to ArgumentMatchers. Also
remove a few unused constants.
Change-Id: Ida46bc436184374a851a5a4eee7ad034e80b02bb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 12:29:44 +0000 (13:29 +0100)]
Migrate .setXid() callers
Use ByteBufUtils to readUint32() instead. While we are at it, apply
the same pattern to other methods as well.
JIRA: OPNFLWPLG-1099
Change-Id: Ifcd4beab39ed00e93db3b4b062a56a0d8bad6b35
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 12:21:54 +0000 (13:21 +0100)]
Migrate EncodeConstants.OF13_VERSION_ID users
This is a search-and-replace for the correct constant.
JIRA: OPNFLWPLUG-1099
Change-Id: Ia912773d9fb299922fd1a68158e4f275b16682be
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 12:19:33 +0000 (13:19 +0100)]
Fix ServiceException
We do not have an UUID here, fix that. Since this has been out there
for some time, start with a generated UUID.
Change-Id: I9322717e5cd1f845275aa56cb756139a7304d3fb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 2 Jan 2021 10:25:13 +0000 (11:25 +0100)]
Cleanup FlowMessageSerializer.isSetVlanIdActionCasePresent()
Rather than bouncing through Optional.ofNullable(), use an explicit
null check to significantly simplify this method.
Change-Id: I59237a4ccef3c407c033d3e1588b7958840d9c06
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>