Robert Varga [Fri, 27 Aug 2021 22:22:40 +0000 (00:22 +0200)]
Fix rfc8530 description
We have a mis-reference in the description, fix that.
Change-Id: I8f5ed6b9650adc76ee7b1830c63288a4c643092c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
83a4f328fd1c052abd99fdb7e076f89bb2141a51)
Robert Varga [Mon, 9 Aug 2021 20:36:05 +0000 (22:36 +0200)]
Support DOMAction-level routing
We have a distinct use case where we want to route actions across
a system. In this scenario, a next hop provider registers itself as the
local provider with the appropriate cost.
This capability is also exposed as the simplest way of registering
binding-level implementations -- where we want to register to all
actions on the operational datastore.
Add explicit documentation around how how the arguments are interpreted
and teach DOMRpcRouter about wildcards -- similar to how it deals with
RPCs.
JIRA: MDSAL-681
Change-Id: I6daf70b28347fab88c8dc467fce267d8ba71e57d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
205d444f07393587da4103bd92d0b2abbefea95b)
Robert Varga [Thu, 12 Aug 2021 12:24:13 +0000 (14:24 +0200)]
Remember netty sink's registration
I928f1f5486b6edc8a62ed006431b7c5f06ddf986 has made a mistake in startup
path of replication source -- it fails to initialize the registration,
leading to a failure during shutdown.
JIRA: MDSAL-682
Change-Id: I4202e9773597169997b4ca88ed4d30819ebae678
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
d87f6c497518a7af4656347654d22f9b6a15b6ec)
Robert Varga [Wed, 11 Aug 2021 14:28:07 +0000 (16:28 +0200)]
Bump versions to 7.0.10-SNAPSHOT
This starts the next development iteration.
Change-Id: I89039dd336a4c27884ab111fedf20dff73890779
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 11 Aug 2021 12:24:37 +0000 (14:24 +0200)]
Improve DOMRpcRouterTest
We have a ton of untested functionality, add a few tests to increase
coverage.
Change-Id: I0885a9a2c1b8f5ca5a3b56b6c03ff0c7acd00563
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
f55130715deea48b49c6f9a95438cb70d7f7a400)
PeterSuna [Mon, 26 Jul 2021 11:19:32 +0000 (13:19 +0200)]
Fix ActionProviderService(Adapter)
ActionProviderServiceAdapter is always passing an empty set of
instances to DOMActionProviderService, which is a direct violation of
API contract. Unfortunately the implementation interprets empty set as
a no-op, resulting in the violation being ignored silently and routing
not working.
JIRA: MDSAL-679
Change-Id: I53a8977365166228ed30130519a2024372d89365
Signed-off-by: PeterSuna <Peter.Suna@pantheon.tech>
Signed-off-by: Ivan Hrasko <ivan.hrasko@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
cbf88a5bd758d3cab9652b02b4d91b43f3cc939b)
Robert Varga [Wed, 11 Aug 2021 12:01:40 +0000 (14:01 +0200)]
Use a global comparator
Rather than instantiating a new comparator every time, just reuse a
single instance.
Change-Id: Ida1e9c1f41c5ab67a2847173bdcad6a1cd780c0e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Tue, 10 Aug 2021 22:08:35 +0000 (00:08 +0200)]
Fix a NPE on missing path
If we have an action registration for a different path, we will end up
with a NPE. Handle this case and throw DOMActionNotAvailableException
instead of a NPE.
Change-Id: Icc01eb2f7b291285fc26392561553520ad784bf3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
4ed468321be93927cc49ed797c5e02c0d847a259)
Robert Varga [Mon, 9 Aug 2021 21:46:53 +0000 (23:46 +0200)]
Use builder fluently
DOMRpcRouter should use ImmutableList.Builder()'s methods as fluent
to maximize expressiveness.
Change-Id: I0e1663041a323cb65595675a029767a68cf2ba64
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
46752eea74eeeeee773f888a023f10d33bf750d1)
Robert Varga [Mon, 9 Aug 2021 20:25:35 +0000 (22:25 +0200)]
Add a single-instance registerActionImplementation()
Single instances are rather prevalent, make sure we add a faster
specialization.
Change-Id: I58c0048c14868ffd129096f5536f16d2947ee660
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
f62b5cf8c14b95b844cb43ce5eb1c93bb8f87e2b)
Robert Varga [Wed, 21 Jul 2021 17:09:57 +0000 (19:09 +0200)]
Require yang-common transitively
We have a number of utilities using yang-common, require it explicitly.
Change-Id: Ief3e652f053ddd1da7f94949f0bf52f20f273ecc
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
92136f13e58eae24e61e2069fef90f3b50e18e72)
Robert Varga [Tue, 20 Jul 2021 18:43:01 +0000 (20:43 +0200)]
Add generalized IetfInetUtil.ipPrefixFor()
Conversion of IpAddress (or IpAddressNoZone) to a IpPrefix is rather
something which is useful to reduce RSI where we already provide
base address->prefix utilities.
Change-Id: I2242e8945065763f6941dff0db1c6f4f14776286
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
b9982f1378245b75525d8fdb5638ceb7b2ca7b40)
Robert Varga [Wed, 21 Jul 2021 13:30:11 +0000 (15:30 +0200)]
Fix network-topology leafrefs
We are using leafref paths in a typedef. YANG XPath evaluation rules
mean that our use of unqualified names will pick up default namespace
from whereever we are referenced -- and thus we end up point not into
ietf-network namespace anymore.
JIRA: MDSAL-677
Change-Id: I4f55f766cdc304c70ee8d3675c2e5365654f613a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
a1f598593b14955b738cde6347c1ffd129c2f9e3)
Robert Varga [Wed, 7 Jul 2021 11:59:15 +0000 (13:59 +0200)]
Bump versions to 7.0.9-SNAPSHOT
This starts the next development iteration.
Change-Id: I2396def1717784928f0e1a55aecc4b4deeb63255
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 7 Jul 2021 10:09:56 +0000 (12:09 +0200)]
Bump upstream versions
Adopt odlparent-8.1.3 and yangtools-6.0.7.
Change-Id: Ib6c5dfd098f6745f0cb8babe3f8765019340c114
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 16 Jun 2021 09:11:59 +0000 (11:11 +0200)]
Treat wildcards as objects
The effort to properly specialize leafref values has created
opportunities for WildcardType to be reported as the return. Handle
these as Objects for now, but also issue FIXMEs for a follow-up proper
fix.
JIRA: MDSAL-668
JIRA: MDSAL-670
Change-Id: I4e8a6ff3aa23a3e94c1ec4a52726e9caf9e9c4ff
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
fe718c52eff07a95a83bd28b26828bf847f7c52e)
Robert Varga [Fri, 21 May 2021 11:13:11 +0000 (13:13 +0200)]
Do not use a static String reference in length enforcer
LengthGenerator is making the mistake of having a static reference
to java.lang.String without FQCN. This breaks down if String is
overridden by definition context.
Fix this by using importedName(Type) to emit a properly-scoped
reference.
JIRA: MDSAL-664
Change-Id: I16b12865448bde807f0afd0d35e3145f8b6359c3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
b07c63ce93a839e806c8ce96b8ef659e658574e3)
Robert Varga [Mon, 24 May 2021 19:58:34 +0000 (21:58 +0200)]
Reenable mdsal533 test
For some reason we lost @Test here, make sure we reinstate it.
Change-Id: I879179761ff33e85dbb4579ed4643db6726b3efe
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
6bbe26e519372be26ace031c24aefe92ab892ae8)
Ivan Hrasko [Thu, 20 May 2021 10:25:37 +0000 (12:25 +0200)]
Fix submodule resource resolution
Initial integration with yangtools-6.0.0 has changed the resource
resolution logic. Unfortunately the lambda instroduced in
Ifa9780fbdfb411b4613df0ee18407d85e81bd517 incorrectly passed 'module'
and not the requested entity to the resolver -- leading to all
submodules to open their module's resource instead.
Fix the lambda and also add proper asserts to check resources are being
open correctly.
JIRA: MDSAL-663
Change-Id: I293f20c15426490a97bb70b4303f0c7b23114c82
Signed-off-by: Ivan Hrasko <ivan.hrasko@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
18ac80f3b2ff56bc734d236ba38d9cd14c5f06d7)
Robert Varga [Thu, 6 May 2021 08:47:30 +0000 (10:47 +0200)]
Make sure we re-export yangtools.util
ExceptionMapper is declared as a public element, we should be using
'requires transitive' to keep downstreams safe.
Change-Id: I8f2ffd4c2b7365675f3c62f19542bdf41060b1ec
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
fc7dea8d6b89035ff59c3c8e82a6a62e22c29dce)
Robert Varga [Thu, 6 May 2021 07:18:28 +0000 (09:18 +0200)]
Bump versions to 7.0.8-SNAPSHOT
This starts the next development iteration.
Change-Id: I37832f3958952187b64ed62a91cfc41eadb10e0d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 6 May 2021 07:11:19 +0000 (09:11 +0200)]
Bump upstream dependencies
Adopt odlparent-8.1.2 and yangtools-6.0.6.
Change-Id: Ic9bf05f3aa5cdd50ea219bc98173d9ef5fc442fa
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Tue, 4 May 2021 10:32:18 +0000 (12:32 +0200)]
Simplify YangSourceDefinition
We can use asEffectiveStatement() instead of guessing, make the code
flow more obvious.
Change-Id: Ie249bcc05820f7670fab86e9b0e4cfd1dbfa43ac
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
a8d8a16a0b0501405e319189297c20625c57372f)
Robert Varga [Tue, 13 Apr 2021 14:14:19 +0000 (16:14 +0200)]
Fixup checkstyle
Updated checkstyle is finding a few violations, fix them up.
Change-Id: Iaf95fde682ed8b1f0bcfd567b67aff90b1eb414a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
34127483b03249616cad14dc2d15aa3556f54aba)
Robert Varga [Tue, 13 Apr 2021 14:18:07 +0000 (16:18 +0200)]
Remove osgi.annotation declaration
We are getting this declaration from odlparent, remove it.
Change-Id: Ifb5348fe98c7fb81a905ea31a995cf90cd2c7694
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
747e4484e48e3076446719adad2486d62abc0008)
Robert Varga [Tue, 13 Apr 2021 14:00:44 +0000 (16:00 +0200)]
Switch to com.guicedee.services/javax.inject
odlparent is removing the declaration of this old artifact, switch
to using the GuicedEE version.
Change-Id: I5acddef14039fe6b1558748636a7c25348569008
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
69ee8703b81c630286942ad7ce2ffe651650320a)
Konstantin.Nosach [Tue, 26 Jan 2021 10:50:33 +0000 (12:50 +0200)]
Document usage of Binding Query Language
Adds documentation specific to the developer guide:
- Compears two approaches for retrieving data from storage
- Read-like operation (old one approach)
- Query-like operation (new one approach)
JIRA: MDSAL-656
Change-Id: Ie84224a584256f411d63b0ecb900f341f9fa3d35
Signed-off-by: Kostiantyn Nosach <kostiantyn.nosach@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
33eb71c3f1f5610b3b62129532513897765a17a5)
Robert Varga [Sun, 28 Mar 2021 19:53:22 +0000 (21:53 +0200)]
Fix Netty replication components
We should have a public no-arg constructor, fix that. Also fix general
lifecycle issues in deregistration paths.
JIRA: MDSAL-662
Change-Id: I928f1f5486b6edc8a62ed006431b7c5f06ddf986
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
0b8c3f4342ac24a60230826e17fa25b82fc92ebe)
Robert Varga [Wed, 24 Mar 2021 13:57:24 +0000 (14:57 +0100)]
Centralize Data/Listener/Service suffixes
We have a central place for these strings in BindingMapping,
make sure we do not duplicate their definition.
Change-Id: I2c7e74830668cf9e3e0fd92ecadef0d3cc2a58d1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
ad5765cde7649fcb2a29f503e4e6b4613f96afb7)
Robert Varga [Fri, 26 Feb 2021 09:38:04 +0000 (10:38 +0100)]
Modernize DOMForwardedWriteTransactionTest
Use proper assertions instead of try/catch blocks, fail()s and
assertTrue()s.
Change-Id: Ife42d56c54f725d2cf842b429c552172dfce429d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
339520f13682153af2d33511a40319f508315635)
Robert Varga [Wed, 24 Feb 2021 19:43:44 +0000 (20:43 +0100)]
Bump versions to 7.0.6-SNAPSHOT
This starts the next development iteration.
Change-Id: I9f7b064573f700878fd616a0d1c0a412a5404298
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 24 Feb 2021 00:11:08 +0000 (01:11 +0100)]
Fix String length checker
We are enforcing length restrictions on String.length(), which is
the wrong measure, as it returns the number of code units in the
String. We actually want to compare the number of code points, i.e.
we need to use String.codePointCount().
JIRA: MDSAL-661
Change-Id: I7291aabb67ec9d002cdeb52befd1723707113121
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
99a40d176c406d35d3d83e440a775a969e0d27d3)
Robert Varga [Wed, 24 Feb 2021 15:24:01 +0000 (16:24 +0100)]
Bump odlparent/yangtools to 8.1.1/6.0.5
Adopt latest versions.
Change-Id: I2bc8323184ac482daf59812b907b3c4ecd27f025
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 3 Feb 2021 09:16:53 +0000 (10:16 +0100)]
Update byte-buddy integration
Update ByteBuddy to 1.10.20.
Reuse ElementMatcher for isDefaultConstructor(), lowering
the amount of garbage we potentially generate. While we are at it
make sure our intra-package use patters are more consistent.
Change-Id: I5cc297129c4b04eade4d1a8a9dfb96cd8504554e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Mon, 25 Jan 2021 14:44:18 +0000 (15:44 +0100)]
Bump versions to 7.0.6-SNAPSHOT
This starts the next development iteration.
Change-Id: I9981dbfe7447c995cfad982d5bb2108b470e066d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 24 Jan 2021 14:07:18 +0000 (15:07 +0100)]
Deprecate mdsal-dom-api tests
This is a follow-up to Producer/Consumer APIs being deprecated. Also
DOMExceptionsTest does not bring anything to the table.
Change-Id: Ia3919582faca2fb3fc586a5cfb4210122e8f5d33
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 24 Jan 2021 13:27:22 +0000 (14:27 +0100)]
Add query support for decimal64
As it turns out we are also missing support for leaves based on
decimal64 type. Add it.
JIRA: MDSAL-652
Change-Id: Id9c8954341492348e0fc36434336c5e522915709
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Peter Suna [Fri, 22 Jan 2021 15:53:42 +0000 (16:53 +0100)]
Nested lists cannot be decoded
DOMQueryIterator is a bit confused about the path it is returning,
causing binding codec to fail. As it turns out, we have violated
expected invariants in various places.
JIRA: MDSAL-654
Change-Id: Ibf7466f6f390f517f1186a725c265a88e7266934
Signed-off-by: Peter Suna <peter.suna@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 21 Jan 2021 13:04:44 +0000 (14:04 +0100)]
Adopt odlparent-8.1.0/yangtools-6.0.4
Adopt OSGi R7 as well by migrating osgi.core pointers to the new
place.
Change-Id: I7351883bd53c40b82abda744d9eefcb49ef183d7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Peter Suna [Fri, 22 Jan 2021 15:12:05 +0000 (16:12 +0100)]
Fix DOMQueryPredicate comparable matches
Boundary condition checking is wrong here due negation brainfart:
gte/gt and lte/lt should include/exclude 0, not the other way around.
JIRA: MDSAL-653
Change-Id: Ieaaf5b4fe0367d9e59cd03a2c177898d909e6ce8
Signed-off-by: Peter Suna <peter.suna@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 22 Jan 2021 21:12:12 +0000 (22:12 +0100)]
Add MatchBuilderPath.BooleanLeafReference
This is a notable omission from the interface, allow users to
target Boolean types.
JIRA: MDSAL-652
Change-Id: Ie62f6419bf3db57887797f7bc88f7ec5dfd5f203
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 14 Jan 2021 17:54:29 +0000 (18:54 +0100)]
Add a Sonar description
This removes the generic blob we inherit from odlparent with
something more meaningful.
Change-Id: I916a1755dc709566b466e3541ea878c110b8711e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 14 Jan 2021 17:28:58 +0000 (18:28 +0100)]
Fix a few sonar warnings
Sonar is pointing out a few trivial issues, fix them up.
Change-Id: I6dc7a9d842404f5826279b800763f3044ee5ab9f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 9 Jan 2021 08:51:08 +0000 (09:51 +0100)]
Use doCallRealMethod() instead of when()
We use doReturn() and similar across the board, fix this single
outlier.
Change-Id: I47866407b30613e3af61cd9d429930269cb4e60b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 9 Jan 2021 07:33:29 +0000 (08:33 +0100)]
Fix Javadoc deprecation links
There is a typo in specification of the reference, leading to
this bit being rendered without a link. Fix that.
Change-Id: Id58978511ef601471d76e8a8f962df96f2e26a4f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit
40d9da9d71a301c6df20899cb6082658a4361781)
Robert Varga [Fri, 8 Jan 2021 13:35:13 +0000 (14:35 +0100)]
Bump versions to 7.0.5-SNAPSHOT
This starts the next development iteration.
Change-Id: I2dcf27e5cd4523922a0bda00f9b5ea11e61ed550
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 7 Jan 2021 16:00:14 +0000 (17:00 +0100)]
Be more defensive around List types
We can end up generating a windcard type, in which case the arguments
will be empty. Use Types.objectType() in that case.
JIRA: MDSAL-651
Change-Id: I5fe15a1cd0eb4f10154c268fea2092dd52cd390a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 7 Jan 2021 17:37:55 +0000 (18:37 +0100)]
Fix javadoc formatting in interfaces
We end up generating two periods, fix that.
Change-Id: Ib270c8838ecca1b51b86be6e49633858fbf8af82
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 24 Dec 2020 13:21:02 +0000 (14:21 +0100)]
Migrate getDataChildByName() users
This method has been deprecated, move to its nullable replacement.
Change-Id: I0c4353701cf423b5c6ae0b52ca5dd96945ceecec
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 7 Jan 2021 14:03:40 +0000 (15:03 +0100)]
Bump to odlparent-8.0.3/yangtools-6.0.3
Pick up latest fixes from upstream.
Change-Id: Ia1da11a6d64ee4f12e65e0863057a40f5919973d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 31 Dec 2020 15:14:10 +0000 (16:14 +0100)]
Fix module name reference
Modules use UnqualifiedQName, which borks the javadoc by leaking
its 'toString()' representation. Fix that.
Change-Id: Iad120ff9fdf7e073f079ef8bf9c354fc04d04560
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Thu, 24 Dec 2020 13:40:07 +0000 (14:40 +0100)]
Update mdsal-binding-dom-codec-spi JPMS
We are using checker annotations, mark that in module-info.
Change-Id: Ief86f6f09f07f9ca06a9a62536815682651b94c5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 20 Dec 2020 22:16:25 +0000 (23:16 +0100)]
Deprecate Producer/Consumer/Sharding APIs
These APIs never saw adoption due to their complexity and lack of
applicability in real-world applications. Deprecate them for removal,
as they will be replaced with proper NMDA replacement.
Change-Id: I5c2eb21bde4b5c6b83cb8a0579307bf851a4f5fe
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 20 Dec 2020 21:52:44 +0000 (22:52 +0100)]
Update mdsal-dom-api JPMS definition
We are missing a few references here, fix them up.
Change-Id: I5a43649867883c2301da2eb7482fb4537f7dffc7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 19 Dec 2020 12:11:59 +0000 (13:11 +0100)]
Bump versions to 7.0.4-SNAPSHOT
This starts the next development iteraration.
Change-Id: Iee95c3ba478b52df34ecd9350ca926113cb9c86f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Iaroslav [Wed, 2 Dec 2020 09:18:34 +0000 (11:18 +0200)]
Tag generated classes with Generated annotation
After this patch @javax.annotation.processing.Generated will be added
to Generated source Java files.
JIRA: MDSAL-597
Change-Id: I377b0be5e4815e428d53a99f9528e46c67e352aa
Signed-off-by: Iaroslav <iaroslav.kholiavko@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
miroslav.kovac [Wed, 11 Mar 2020 15:42:29 +0000 (16:42 +0100)]
Specialize relative leafref types during instantiation
leaf of relative leafref type declared in grouping could reference
node outside of it. In such case target node of leafref depends on
location where its origin grouping used. Before property from
relative leafref was calculated from its origin grouping and this
property were used at all GeneratedTypes produced from the
grouping users.
When leafref pointed outside of its origin grouping, Object for leaves,
List<?> for leaf-list were used as property type. Now type resolving is
running from locations, where relative leafref is added by uses and its
ancestors grouping do not add a node at the leafref path.
JIRA: MDSAL-426
JIRA: MDSAL-533
Change-Id: I5004f0579778527511b4b028e00f7ab9c3051731
Signed-off-by: miroslav.kovac <miroslav.kovac@pantheon.tech>
Signed-off-by: Ilya Igushev <illia.ihushev@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 18 Dec 2020 17:08:16 +0000 (18:08 +0100)]
Change `is` to `get` in generated classes
In generated classes for Boolean types getters should be as in other
types. e.g.: `isBoolData` should be `getBoolData`.
We generate compatibility methods, so users have some time to migrate.
JIRA: MDSAL-426
Change-Id: Id7386520484dbedf2b7772ab586b476983ca33f2
Signed-off-by: Iaroslav <iaroslav.kholiavko@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Tue, 15 Dec 2020 08:25:51 +0000 (09:25 +0100)]
Fix replicate's parent version
We are referencing odlparent at wrong version here, fix that up.
Change-Id: I4506d216d251757e0208dc9abe5629c05ee510cc
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Iaroslav [Fri, 4 Dec 2020 10:36:44 +0000 (12:36 +0200)]
Remove getter @Nullable annotations for non-List/Map types
In generated types getter will no longer be marked @Nullable annotation
for non List and Map types.
Jira: MDSAL-603
Change-Id: I2ad00e625f652399e184fca1a7a00d3ed36d3dff
Signed-off-by: Iaroslav <iaroslav.kholiavko@pantheon.tech>
Robert Varga [Mon, 14 Dec 2020 12:04:20 +0000 (13:04 +0100)]
Bump upstream versions
Adopt odlparent-8.0.2 and yangtools-6.0.2 for the fixes they
contain.
Change-Id: I916bdb3a122f3a368245df2446bb3673b52b1d00
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
tadei.bilan [Tue, 1 Dec 2020 12:30:21 +0000 (14:30 +0200)]
Eliminate blueprint from replicate-netty
Replace blueprint with OSGI DS
JIRA: MDSAL-588
Change-Id: Idc9053adac0a7f137727f47297d920878916d6ae
Signed-off-by: tadei.bilan <tadei.bilan@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 10:56:56 +0000 (11:56 +0100)]
Fix checkstyle
Upgraded checkstyle is a bit touchier about anonymous classes,
fix reported violations.
Change-Id: I98d060ed9c44d49ae57f1b9fce33527fa6bcd48d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 02:03:43 +0000 (03:03 +0100)]
Update ChoiceNodeCodecContext
Sonar does not like code in comments, promote them to class
javadoc, which will silence Sonar and is overall a Good Thing(tm).
Change-Id: I0a8150cfbcd9a82abf5e94a2a56c7444634ee9da
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 02:41:24 +0000 (03:41 +0100)]
Fix a sonar complaint
Sonar wants us to merge the two if statements, which makes sense.
Also use a method reference instead of a full lambda.
Change-Id: I465ab536ab9b5bedde870b741a47becbc271ca8b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 02:24:43 +0000 (03:24 +0100)]
Add private ServiceLoaderState constructors
These three classes are pure field holders, hence they should have
private constructors.
Change-Id: I02818541a7a20808d3fc6f35b56e40c993a9ca94
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 02:19:36 +0000 (03:19 +0100)]
Shortcut StringBuilder.append(boolean)
We are using an if/else statement for a simple boolean append,
refactor it so we pass an expression.
Change-Id: I4924db1276bec0a1e3d2e16e37a8bfe181086422
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 02:14:20 +0000 (03:14 +0100)]
Fix a Sonar logic complaint
Invert the condition so that we can use a simple expression instead
of a if/else.
Change-Id: I8e1662e82706a8c6b6c7884258fe9e6010e4f2b0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 02:10:02 +0000 (03:10 +0100)]
Cleanup DataObjectCodecContext
We have an unneeded if/else here, merge it together for better
expresiveness. Also clean up comments a bit and log exceptions
encountered.
Change-Id: Ie8e1eca4b2019906fe653f07659aafd85bd88c3d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 01:49:56 +0000 (02:49 +0100)]
Remove QueryStructureException throws declaration
QueryStructureException is a runtime exception, hence does not need
to be declared.
Change-Id: I36e617d9c917e44caea05e0898b8bc0318d6ba9b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 11 Dec 2020 01:45:36 +0000 (02:45 +0100)]
Remove TransformerGeneratorException
This exception is not used anywhere and is package-private, remove
it.
Change-Id: I11378d5e94b276c331ede10d23bf333152ed6e2f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Tadei Bilan [Fri, 13 Nov 2020 14:50:04 +0000 (16:50 +0200)]
Improve DataObjectBuilder augmentation handling
Remove unnecessary "@SuppressWarnings("unchecked")" line.
JIRA: MDSAL-642
Signed-off-by: tadei.bilan <tadei.bilan@pantheon.tech>
Change-Id: Ia457867e9d2da31ddb76f8bfb465cdfb07f18e6a
Robert Varga [Sun, 15 Nov 2020 21:48:15 +0000 (22:48 +0100)]
Bump versions to 7.0.3-SNAPSHOT
This starts the next development iteration.
Change-Id: I9a49f856b1128bb83f3987fea72081f353074ca2
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 11 Nov 2020 17:10:56 +0000 (18:10 +0100)]
Dereference namespace
Module.getNamespace() is deprecated, use indirection through
QNameModule to get the namespace.
Change-Id: I93b4083800c235bd75d53ec328311de60b99cd7a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
illia.ihushev [Fri, 17 Jul 2020 09:50:33 +0000 (12:50 +0300)]
Merge codec contexts caches
Probably performance wise RPC, Data and Notification loading cache
should be merge. Needs microbenchmark to determine which is
faster(keeping them separate or in same cache).
Change-Id: I0bdb4a67a0d77b0b9e905caebf6b5e7381cb3bf7
Signed-off-by: illia.ihushev <illia.ihushev@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 11 Nov 2020 18:53:20 +0000 (19:53 +0100)]
Cleanup SchemaRootCodecContext formatting
Java 11 gives us <> on anonymous subclasses, hence we can clean up
quite a bit here.
Change-Id: I8c768a07535a6dde7c08d361b98349eb97d62774
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 11 Nov 2020 17:35:43 +0000 (18:35 +0100)]
Cache BindingDOMCodecServices in tests
When we are testing we can end up with a multitude of tests
reusing the same BindingRuntimeContext (due to
AbstractSchemaAwareTest caching). Since BindingCodecContext contains
non-trivial amount of state which is derived from it, including
loaded classes, let's attempt to reuse it as much as possible.
Change-Id: Ib41a7f4060c62bd53c2346bae51f055768dce0db
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Wed, 11 Nov 2020 15:31:31 +0000 (16:31 +0100)]
Add a missing annotation requires
We are using @SuppressFBWarnings, add them.
Change-Id: I34f5b1f8335702f5ddae9b989ade5503a9f0af42
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Tue, 10 Nov 2020 15:26:34 +0000 (16:26 +0100)]
Cleanup SchemaNode mocks
We have a few testing SchemaNodes, clean up warnings and unneeded
methods.
Change-Id: I4ad599805ac4f9754cb80d523702ed522e6ccfb3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Mon, 9 Nov 2020 17:10:44 +0000 (18:10 +0100)]
Convert mdsal-binding-generator-impl to a JPMS module
The implementation here is quite simple, convert it to a JPMS module.
Since we are breaking encapsulation the now-defunct YangTextTemplateTest
is removed. Also src/test/resources/ietf is renamed to ietf-models
to make it an unencapsulated resource.
JIRA: MDSAL-644
Change-Id: I9db57ed04b8188cefa91b644d434e2b1619e4d4b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Mon, 9 Nov 2020 16:41:03 +0000 (17:41 +0100)]
Convert mdsal-binding-generator-util to a JPMS module
This is a simple utility artifact, convert it to a module.
JIRA: MDSAL-643
Change-Id: I0b5428b5e53fd4fe58d0ffc9ad0b99328d23129f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 11:56:07 +0000 (12:56 +0100)]
Convert mdsal-binding-util to a JPMS module
This is a widely used utility artifact. Convert it to JPMS.
Change-Id: Ic636b6f513d79ec495abb7d1d83a899712126f8e
JIRA: MDSAL-634
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 11:24:04 +0000 (12:24 +0100)]
Convert mdsal-singleton-dom-impl to a JPMS module
This is a simple implementation, convert it to JPMS, providing
integration with various DI frameworks. We also minimize dependencies
JIRA: MDSAL-640
Change-Id: I00724709bd557dbbd814942fe0968390317073dd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 11:02:29 +0000 (12:02 +0100)]
Convert mdsal-singleton-common-api to a JPMS module
This is a very simple API component, convert it to a JPMS module,
also adjusting its dependencies.
JIRA: MDSAL-639
Change-Id: I68364c2b3e008cb4954d6693152c2a6bffc14373
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 10:55:17 +0000 (11:55 +0100)]
Remove unneeded mdsal-eos-binding-api dependencies
There are a number of dependencies we are not using, remove them.
Change-Id: I9b823c766eb9f7f1305f1a2d9aebe00c85cf4501
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 09:55:26 +0000 (10:55 +0100)]
Convert mdsal-eos-dom-simple to a JPMS module
This is a simple implementation of the DOMEntityOwnershipService
contract. Turn it into a JPMS module, removing the internal package
visibility and exposing DI class from a separate package.
Since we are in the area, also clean up UT, eliminating unneeded
mocking.
JIRA: MDSAL-638
Change-Id: Ifd0b0a6575e39b619868b251abfce6d2a2a340d5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 09:35:16 +0000 (10:35 +0100)]
Convert mdsal-eos-dom-api to a JPMS module
This is a very simple API, convert it to a JPMS module.
JIRA: MDSAL-637
Change-Id: If430e831d4254b20e6f3bf7cbfd2da354a47caf3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 09:14:25 +0000 (10:14 +0100)]
Convert mdsal-eos-common-spi to a JPMS module
This is really simple SPI, convert it to a JPMS module.
JIRA: MDSAL-636
Change-Id: I452b4bf5599550b1e76a63fce133cfeba1544230
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sun, 8 Nov 2020 09:10:46 +0000 (10:10 +0100)]
Convert mdsal-eos-common-api to a JPMS module
This is really simple API, convert it to a JPMS module.
JIRA: MDSAL-635
Change-Id: Ia4afd9ccb9c3743994cc1687c14974189d046086
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 7 Nov 2020 09:55:26 +0000 (10:55 +0100)]
Convert mdsal-yanglib-api to a JPMS module
This is a very simple API component, convert it to JPMS.
JIRA: MDSAL-628
Change-Id: Ic9c69ef5332f9617a953521ac511e58e98044f68
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 7 Nov 2020 09:47:25 +0000 (10:47 +0100)]
Convert mdsal-binding-dom-codec-spi to JPMS
This is a very simplistic SPI component, convert it to JPMS.
JIRA: MDSAL-633
Change-Id: I2ef9e3f262ef70d1dd6e221ba69199207626245e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 7 Nov 2020 09:35:54 +0000 (10:35 +0100)]
Convert mdsal-binding-dom-codec-api to JPMS
This is a very simplistic API component, convert it to JPMS.
JIRA: MDSAL-632
Change-Id: Ie3d7e264f750d9d0f373e334f18cb6294cced9d0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Sat, 7 Nov 2020 09:23:16 +0000 (10:23 +0100)]
Convert mdsal-binding-spi to a JPMS module
This is a simple component, convert it to a JPMS module.
JIRA: MDSAL-631
Change-Id: Ia539cdac1ae672929357bccd5637418932a9a01b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 23:51:01 +0000 (00:51 +0100)]
Fix warnings in unified.doc.generator
We are getting an Xtend warning from unused imports and unnecessary
casts. Fix them up.
Change-Id: Ic28a24616909e6f5d0bbee7076fdc57743f2af51
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 23:44:49 +0000 (00:44 +0100)]
Convert mdsal-binding-api to a JPMS module
This is a simple API, convert it to a module.
JIRA: MDSAL-630
Change-Id: Id41e513b26f0a58e85534b91533af70568db4a6c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 22:38:45 +0000 (23:38 +0100)]
Convert mdsal-binding-runtime-spi to a JPMS module
This is a bit involved, as we are using the parser and a couple of
services. Nevertheless convert the artifact.
JIRA: MDSAL-627
Change-Id: I16bbbe77e2500125512ed57fa22c396e2f662ade
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 22:25:32 +0000 (23:25 +0100)]
Convert mdsal-binding-spec-util to a JPMS module
We have a number of utilities, let's make sure they are properly
encapsulated.
JIRA: MDSAL-629
Change-Id: I06183508f52b7e5ec023e88b4ac1c983d2f4a26c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 20:36:42 +0000 (21:36 +0100)]
Convert mdsal-binding-runtime-api to a JPMS module
This is a very simple artifact, convert it to a JPMS module.
JIRA: MDSAL-625
Change-Id: I6a24724580c26509fb58fb3d5962cb8613ddec3a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 19:01:32 +0000 (20:01 +0100)]
Convert yang-binding to a JPMS module
The code itself is simple, just export it. UTs need an override
to allow use of Whitebox.
JIRA: MDSAL-624
Change-Id: I1d1114473563fe9237df5855ef95c45318cd2ec9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Robert Varga [Fri, 6 Nov 2020 18:28:35 +0000 (19:28 +0100)]
Add build of odl-mdsal-model-rfc8795-non-nmda
We have forgotten to build this feature, make sure it is published.
JIRA: MDSAL-626
Change-Id: I635e61116758009da3a319529238c267366d460c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>