From 751b981438903be046183ecfcfc87b9fe6d91914 Mon Sep 17 00:00:00 2001 From: Dan Timoney Date: Tue, 19 Mar 2024 16:28:45 -0400 Subject: Migrate bierman API to Argon Update Biermann API code to work correctly with OpenDaylight Argon release Issue-ID: CCSDK-4001 Change-Id: Ia9b45b05744908b806a22793e7870c613942dfb4 Signed-off-by: Dan Timoney --- netconf/features/pom.xml | 4 +- .../restconf/odl-restconf-nb-bierman02/pom.xml | 6 +- netconf/features/restconf/pom.xml | 4 +- netconf/pom.xml | 4 +- netconf/restconf/pom.xml | 4 +- netconf/restconf/restconf-common/pom.xml | 4 +- .../common/util/AbstractOperationsModule.java | 19 ---- .../common/util/OperationsImportedModule.java | 89 ++++++++++++++++ .../common/util/OperationsRestconfModule.java | 88 ++++++++++++++++ .../restconf-nb-bierman02-installer/pom.xml | 4 +- netconf/restconf/restconf-nb-bierman02/pom.xml | 4 +- .../schema/SchemaExportContentYangBodyWriter.java | 2 +- .../schema/SchemaExportContentYinBodyWriter.java | 2 +- .../rest/impl/DepthAwareNormalizedNodeWriter.java | 2 +- .../rest/impl/JsonNormalizedNodeBodyReader.java | 2 +- .../sal/rest/impl/JsonToPatchBodyReader.java | 2 +- .../impl/RestconfDocumentedExceptionMapper.java | 20 ++-- .../sal/rest/impl/XmlNormalizedNodeBodyReader.java | 2 +- .../sal/rest/impl/XmlToPatchBodyReader.java | 2 +- .../netconf/sal/restconf/impl/BrokerFacade.java | 41 ++++---- .../sal/restconf/impl/ControllerContext.java | 2 +- .../sal/restconf/impl/JSONRestconfServiceImpl.java | 4 +- .../netconf/sal/restconf/impl/RestconfImpl.java | 113 +++++++++++---------- .../netconf/sal/restconf/web/WebInitializer.java | 15 ++- .../sal/streams/listeners/ListenerAdapter.java | 4 +- .../netconf/sal/streams/listeners/Notificator.java | 2 - .../rev131019/DatastoreIdentifierBuilder.java | 6 +- .../restconf/modules/ModuleRevisionBuilder.java | 2 +- .../restconf/restconf/modules/RevisionBuilder.java | 9 +- .../impl/test/providers/TestJsonBodyReader.java | 6 +- .../providers/TestJsonBodyReaderMountPoint.java | 6 +- .../impl/test/providers/TestXmlBodyReader.java | 4 +- .../input/to/cnsn/test/RestPutListDataTest.java | 8 +- .../to/xml/test/NnInstanceIdentifierToXmlTest.java | 39 ++++--- .../restconf/impl/nn/to/xml/test/NnToXmlTest.java | 33 +++--- .../impl/nn/to/xml/test/NnToXmlWithChoiceTest.java | 13 ++- .../NnToXmlWithDataFromSeveralModulesTest.java | 19 ++-- .../sal/restconf/impl/test/BrokerFacadeTest.java | 5 +- .../restconf/impl/test/InvokeRpcMethodTest.java | 23 ++--- .../impl/test/JSONRestconfServiceImplTest.java | 33 +++--- .../restconf/impl/test/RestGetOperationTest.java | 4 +- .../sal/restconf/impl/test/RestconfImplTest.java | 17 ++-- .../restconf/impl/test/URIParametersParsing.java | 16 +-- .../modules/ModuleRevisionBuilderTest.java | 6 +- .../restconf/modules/RevisionBuilderTest.java | 12 +-- pom.xml | 4 +- 46 files changed, 431 insertions(+), 279 deletions(-) diff --git a/netconf/features/pom.xml b/netconf/features/pom.xml index fa13cae..910a38a 100644 --- a/netconf/features/pom.xml +++ b/netconf/features/pom.xml @@ -11,13 +11,13 @@ org.opendaylight.odlparent odlparent-lite - 11.0.3 + 12.0.7 org.onap.ccsdk.odl-legacy.netconf netconf-features-parent - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT pom diff --git a/netconf/features/restconf/odl-restconf-nb-bierman02/pom.xml b/netconf/features/restconf/odl-restconf-nb-bierman02/pom.xml index 4c0b47b..947934a 100644 --- a/netconf/features/restconf/odl-restconf-nb-bierman02/pom.xml +++ b/netconf/features/restconf/odl-restconf-nb-bierman02/pom.xml @@ -12,13 +12,13 @@ org.opendaylight.netconf feature-parent - 4.0.4 - ../../parent + 5.0.7 + org.onap.ccsdk.odl-legacy.netconf odl-restconf-nb-bierman02 - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT feature OpenDaylight :: Restconf :: NB :: bierman02 diff --git a/netconf/features/restconf/pom.xml b/netconf/features/restconf/pom.xml index 72ddd87..5db9c60 100644 --- a/netconf/features/restconf/pom.xml +++ b/netconf/features/restconf/pom.xml @@ -11,13 +11,13 @@ org.opendaylight.odlparent odlparent-lite - 11.0.3 + 12.0.7 org.onap.ccsdk.odk-legacy features-restconf-aggregator - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT pom diff --git a/netconf/pom.xml b/netconf/pom.xml index fc4c6c9..0a1c600 100644 --- a/netconf/pom.xml +++ b/netconf/pom.xml @@ -13,13 +13,13 @@ org.opendaylight.odlparent odlparent-lite - 11.0.3 + 12.0.7 org.onap.ccsdk.odl-legacy.netconf netconf-aggregator - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT pom ${project.artifactId} diff --git a/netconf/restconf/pom.xml b/netconf/restconf/pom.xml index e042305..f32804b 100644 --- a/netconf/restconf/pom.xml +++ b/netconf/restconf/pom.xml @@ -12,13 +12,13 @@ org.opendaylight.odlparent odlparent-lite - 11.0.3 + 12.0.7 org.onap.ccsdk.odl-legacy.netconf restconf-subsystem - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT pom ${project.artifactId} diff --git a/netconf/restconf/restconf-common/pom.xml b/netconf/restconf/restconf-common/pom.xml index aa383eb..6244dbe 100644 --- a/netconf/restconf/restconf-common/pom.xml +++ b/netconf/restconf/restconf-common/pom.xml @@ -14,13 +14,13 @@ org.opendaylight.netconf netconf-parent - 4.0.4 + 5.0.7 org.onap.ccsdk.odl-legacy.netconf restconf-common - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT bundle ${project.artifactId} diff --git a/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/AbstractOperationsModule.java b/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/AbstractOperationsModule.java index 68b7fe5..615badb 100644 --- a/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/AbstractOperationsModule.java +++ b/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/AbstractOperationsModule.java @@ -9,13 +9,10 @@ package org.opendaylight.restconf.common.util; import java.util.Collection; import java.util.Collections; -import java.util.Map; import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.concepts.SemVer; import org.opendaylight.yangtools.yang.common.QNameModule; -import org.opendaylight.yangtools.yang.common.UnresolvedQName; -import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified; import org.opendaylight.yangtools.yang.common.YangVersion; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; import org.opendaylight.yangtools.yang.model.api.Deviation; @@ -31,7 +28,6 @@ import org.opendaylight.yangtools.yang.model.api.Submodule; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; import org.opendaylight.yangtools.yang.model.api.UsesNode; import org.opendaylight.yangtools.yang.model.api.YangStmtMapping; -import org.opendaylight.yangtools.yang.model.api.meta.IdentifierNamespace; import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; import org.opendaylight.yangtools.yang.model.api.meta.StatementOrigin; import org.opendaylight.yangtools.yang.model.api.stmt.ModuleEffectiveStatement; @@ -53,21 +49,6 @@ abstract class AbstractOperationsModule implements Module, ModuleEffectiveStatem return StatementOrigin.CONTEXT; } - @Override - public final > Optional get(final Class namespace, - final K identifier) { - return Optional.empty(); - } - - @Override - public final > Map getAll(final Class namespace) { - return Map.of(); - } - - @Override - public final Unqualified argument() { - return UnresolvedQName.unqualified(getName()); - } @Override public final QNameModule localQNameModule() { diff --git a/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsImportedModule.java b/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsImportedModule.java index 5551326..6f4c3c2 100644 --- a/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsImportedModule.java +++ b/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsImportedModule.java @@ -11,11 +11,22 @@ import static java.util.Objects.requireNonNull; import java.util.Collection; import java.util.List; +import java.util.Map.Entry; +import java.util.Optional; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.QNameModule; +import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.DataTreeEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.ExtensionEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.FeatureEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.IdentityEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.ModuleEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.SchemaTreeEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.SubmoduleEffectiveStatement; final class OperationsImportedModule extends AbstractOperationsModule { private final Module original; @@ -53,4 +64,82 @@ final class OperationsImportedModule extends AbstractOperationsModule { public List> effectiveSubstatements() { return List.of(); } + + @Override + public @NonNull Optional findExtension(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findExtension'"); + } + + @Override + public @NonNull Optional findFeature(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findFeature'"); + } + + @Override + public @NonNull Optional findIdentity(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findIdentity'"); + } + + @Override + public @NonNull Optional findSubmodule(@NonNull Unqualified arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findSubmodule'"); + } + + @Override + public @NonNull Collection> dataTreeNodes() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'dataTreeNodes'"); + } + + @Override + public @NonNull Optional> findDataTreeNode(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findDataTreeNode'"); + } + + @Override + public @NonNull Optional> findSchemaTreeNode(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findSchemaTreeNode'"); + } + + @Override + public @NonNull Collection> schemaTreeNodes() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'schemaTreeNodes'"); + } + + @Override + public @NonNull Unqualified argument() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'argument'"); + } + + @Override + public @NonNull Optional findNamespacePrefix(@NonNull QNameModule arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findNamespacePrefix'"); + } + + @Override + public @NonNull Optional findReachableModule(@NonNull String arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findReachableModule'"); + } + + @Override + public Collection> namespacePrefixes() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'namespacePrefixes'"); + } + + @Override + public @NonNull Collection> reachableModules() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'reachableModules'"); + } } diff --git a/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsRestconfModule.java b/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsRestconfModule.java index 467db9b..9145598 100644 --- a/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsRestconfModule.java +++ b/netconf/restconf/restconf-common/src/main/java/org/opendaylight/restconf/common/util/OperationsRestconfModule.java @@ -11,12 +11,22 @@ import static java.util.Objects.requireNonNull; import java.util.Collection; import java.util.List; +import java.util.Map.Entry; +import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.QNameModule; +import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified; import org.opendaylight.yangtools.yang.common.XMLNamespace; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.DataTreeEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.ExtensionEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.FeatureEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.IdentityEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.ModuleEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.SchemaTreeEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.SubmoduleEffectiveStatement; final class OperationsRestconfModule extends AbstractOperationsModule { // There is no need to intern this nor add a revision, as we are providing the corresponding context anyway @@ -59,4 +69,82 @@ final class OperationsRestconfModule extends AbstractOperationsModule { // This is not accurate, but works for now return List.of(); } + + @Override + public @NonNull Optional findExtension(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findExtension'"); + } + + @Override + public @NonNull Optional findFeature(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findFeature'"); + } + + @Override + public @NonNull Optional findIdentity(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findIdentity'"); + } + + @Override + public @NonNull Optional findSubmodule(@NonNull Unqualified arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findSubmodule'"); + } + + @Override + public @NonNull Collection> dataTreeNodes() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'dataTreeNodes'"); + } + + @Override + public @NonNull Optional> findDataTreeNode(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findDataTreeNode'"); + } + + @Override + public @NonNull Optional> findSchemaTreeNode(@NonNull QName arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findSchemaTreeNode'"); + } + + @Override + public @NonNull Collection> schemaTreeNodes() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'schemaTreeNodes'"); + } + + @Override + public @NonNull Unqualified argument() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'argument'"); + } + + @Override + public @NonNull Optional findNamespacePrefix(@NonNull QNameModule arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findNamespacePrefix'"); + } + + @Override + public @NonNull Optional findReachableModule(@NonNull String arg0) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'findReachableModule'"); + } + + @Override + public Collection> namespacePrefixes() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'namespacePrefixes'"); + } + + @Override + public @NonNull Collection> reachableModules() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'reachableModules'"); + } } diff --git a/netconf/restconf/restconf-nb-bierman02-installer/pom.xml b/netconf/restconf/restconf-nb-bierman02-installer/pom.xml index 57aa756..64b75df 100755 --- a/netconf/restconf/restconf-nb-bierman02-installer/pom.xml +++ b/netconf/restconf/restconf-nb-bierman02-installer/pom.xml @@ -27,13 +27,13 @@ org.opendaylight.netconf netconf-parent - 4.0.4 + 5.0.7 org.onap.ccsdk.odl-legacy.netconf restconf-nb-bierman02-installer - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT pom ccsdk-odl-legacy :: ${project.artifactId} diff --git a/netconf/restconf/restconf-nb-bierman02/pom.xml b/netconf/restconf/restconf-nb-bierman02/pom.xml index 6037742..b87a5ca 100644 --- a/netconf/restconf/restconf-nb-bierman02/pom.xml +++ b/netconf/restconf/restconf-nb-bierman02/pom.xml @@ -11,13 +11,13 @@ org.opendaylight.netconf netconf-parent - 4.0.4 + 5.0.7 org.onap.ccsdk.odl-legacy.netconf restconf-nb-bierman02 - 1.0.1-SNAPSHOT + 1.1.0-SNAPSHOT bundle