Enforce InstanceIdentifier creation 63/100063/6
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 11 Mar 2022 06:48:14 +0000 (07:48 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Fri, 11 Mar 2022 17:18:12 +0000 (18:18 +0100)
commiteb7ab8e1bb6a28cfafd22a5a62ea66e5f85a8c2d
treebad4e8922d40e1a08136d67df8e1ee5757b830bf
parent930e41e099e19109e13d4bca4f3bc90aa890e702
Enforce InstanceIdentifier creation

We currently allow an InstanceIdentifier to be created for any
DataObject, which is wrong, as that includes raw RpcInputs,
Notifications and the like.

Update create() method to require proper relationship with DataRoot
instances. Alternatives can be worked through instantiating a proper
builder.

Also enforce individual items to always have the proper type.

JIRA: MDSAL-370
Change-Id: I38e83760c0ec29613a9ded24c0783bef940c9b7e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 files changed:
binding/mdsal-binding-api/src/test/java/org/opendaylight/mdsal/binding/api/DataTreeIdentifierTest.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/query/SimpleQueryExecutor.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMDataTreeCommitCohortAdapterTest.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMMountPointServiceAdapterTest.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/DirectGetterRouteContextExtractorTest.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/LazyDataTreeModificationTest.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/Mdsal298Test.java
binding/mdsal-binding-dom-codec/src/test/java/org/opendaylight/mdsal/binding/dom/codec/impl/ExceptionReportingTest.java
binding/mdsal-binding-dom-codec/src/test/java/org/opendaylight/mdsal/binding/dom/codec/impl/Mdsal724Test.java
binding/mdsal-binding-dom-codec/src/test/java/org/opendaylight/mdsal/binding/dom/codec/impl/TopLevelContainerViaUsesTest.java
binding/yang-binding/src/main/java/org/opendaylight/yangtools/yang/binding/InstanceIdentifier.java
binding/yang-binding/src/test/java/org/opendaylight/yangtools/yang/binding/InstanceIdentifierTest.java
binding/yang-binding/src/test/java/org/opendaylight/yangtools/yang/binding/test/mock/FooRoot.java [new file with mode: 0644]
binding/yang-binding/src/test/java/org/opendaylight/yangtools/yang/binding/test/mock/Nodes.java
entityownership/mdsal-eos-binding-api/src/test/java/org/opendaylight/mdsal/eos/binding/api/EntityTest.java