From cb2c4bd37029cfec296adf11a85df33c572c59c6 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Wed, 11 Jul 2018 15:44:37 +0200 Subject: [PATCH] Use DOMExtensibleService.getExtensions() getExtensions() provides a better return value, so we can arrive at individual extensions in a type-safe manner. Change-Id: If52c0d9c5a05a70953fd17e27c3f2af155fcb3ee Signed-off-by: Robert Varga --- .../mdsal/connector/MdsalNetconfOperationServiceFactory.java | 4 ++-- .../netconf/sal/restconf/impl/ControllerContext.java | 4 ++-- .../controller/md/sal/rest/common/TestRestconfUtils.java | 3 +++ .../nb/rfc8040/services/wrapper/ServicesWrapper.java | 5 ++--- .../services/impl/JSONRestconfServiceRfc8040ImplTest.java | 3 +++ 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/netconf/mdsal-netconf-connector/src/main/java/org/opendaylight/netconf/mdsal/connector/MdsalNetconfOperationServiceFactory.java b/netconf/mdsal-netconf-connector/src/main/java/org/opendaylight/netconf/mdsal/connector/MdsalNetconfOperationServiceFactory.java index fa1b80368c..b4b03355b1 100644 --- a/netconf/mdsal-netconf-connector/src/main/java/org/opendaylight/netconf/mdsal/connector/MdsalNetconfOperationServiceFactory.java +++ b/netconf/mdsal-netconf-connector/src/main/java/org/opendaylight/netconf/mdsal/connector/MdsalNetconfOperationServiceFactory.java @@ -59,8 +59,8 @@ public class MdsalNetconfOperationServiceFactory implements NetconfOperationServ this.dataBroker = dataBroker; this.rpcService = rpcService; - this.rootSchemaSourceProviderDependency = (DOMYangTextSourceProvider) schemaService.getSupportedExtensions() - .get(DOMYangTextSourceProvider.class); + this.rootSchemaSourceProviderDependency = schemaService.getExtensions() + .getInstance(DOMYangTextSourceProvider.class); this.currentSchemaContext = new CurrentSchemaContext(Preconditions.checkNotNull(schemaService), rootSchemaSourceProviderDependency); this.netconfOperationServiceFactoryListener = netconfOperationServiceFactoryListener; diff --git a/restconf/restconf-nb-bierman02/src/main/java/org/opendaylight/netconf/sal/restconf/impl/ControllerContext.java b/restconf/restconf-nb-bierman02/src/main/java/org/opendaylight/netconf/sal/restconf/impl/ControllerContext.java index 80dabef6a7..677ec32bde 100644 --- a/restconf/restconf-nb-bierman02/src/main/java/org/opendaylight/netconf/sal/restconf/impl/ControllerContext.java +++ b/restconf/restconf-nb-bierman02/src/main/java/org/opendaylight/netconf/sal/restconf/impl/ControllerContext.java @@ -112,8 +112,8 @@ public final class ControllerContext implements SchemaContextListener, Closeable public static ControllerContext newInstance(DOMSchemaService schemaService, DOMMountPointService mountService, DOMSchemaService domSchemaService) { - final DOMYangTextSourceProvider yangTextSourceProvider = - (DOMYangTextSourceProvider) domSchemaService.getSupportedExtensions().get(DOMYangTextSourceProvider.class); + final DOMYangTextSourceProvider yangTextSourceProvider = domSchemaService.getExtensions() + .getInstance(DOMYangTextSourceProvider.class); return new ControllerContext(schemaService, mountService, yangTextSourceProvider); } diff --git a/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/md/sal/rest/common/TestRestconfUtils.java b/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/md/sal/rest/common/TestRestconfUtils.java index e968b710a1..8ef05653da 100644 --- a/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/md/sal/rest/common/TestRestconfUtils.java +++ b/restconf/restconf-nb-bierman02/src/test/java/org/opendaylight/controller/md/sal/rest/common/TestRestconfUtils.java @@ -14,6 +14,7 @@ import static org.mockito.Mockito.mock; import com.google.common.base.Optional; import com.google.common.base.Preconditions; +import com.google.common.collect.ImmutableClassToInstanceMap; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; @@ -75,8 +76,10 @@ public final class TestRestconfUtils { DOMSchemaService mockSchemaService = mock(DOMSchemaService.class); doReturn(schemaContext).when(mockSchemaService).getGlobalContext(); + doReturn(ImmutableClassToInstanceMap.of()).when(mockSchemaService).getExtensions(); DOMSchemaService mockDomSchemaService = mock(DOMSchemaService.class); + doReturn(ImmutableClassToInstanceMap.of()).when(mockDomSchemaService).getExtensions(); return ControllerContext.newInstance(mockSchemaService, mockMountService, mockDomSchemaService); } diff --git a/restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/services/wrapper/ServicesWrapper.java b/restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/services/wrapper/ServicesWrapper.java index de38b6a75b..02e69b589f 100644 --- a/restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/services/wrapper/ServicesWrapper.java +++ b/restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/services/wrapper/ServicesWrapper.java @@ -75,9 +75,8 @@ public final class ServicesWrapper implements BaseServicesWrapper, TransactionSe final DOMSchemaService domSchemaService) { RestconfOperationsService restconfOpsService = new RestconfOperationsServiceImpl(schemaCtxHandler, domMountPointServiceHandler); - final DOMYangTextSourceProvider yangTextSourceProvider = - (DOMYangTextSourceProvider) domSchemaService.getSupportedExtensions() - .get(DOMYangTextSourceProvider.class); + final DOMYangTextSourceProvider yangTextSourceProvider = domSchemaService.getExtensions() + .getInstance(DOMYangTextSourceProvider.class); RestconfSchemaService restconfSchemaService = new RestconfSchemaServiceImpl(schemaCtxHandler, domMountPointServiceHandler, yangTextSourceProvider); diff --git a/restconf/restconf-nb-rfc8040/src/test/java/org/opendaylight/restconf/nb/rfc8040/rests/services/impl/JSONRestconfServiceRfc8040ImplTest.java b/restconf/restconf-nb-rfc8040/src/test/java/org/opendaylight/restconf/nb/rfc8040/rests/services/impl/JSONRestconfServiceRfc8040ImplTest.java index 49f69d50d2..7e82357cf5 100644 --- a/restconf/restconf-nb-rfc8040/src/test/java/org/opendaylight/restconf/nb/rfc8040/rests/services/impl/JSONRestconfServiceRfc8040ImplTest.java +++ b/restconf/restconf-nb-rfc8040/src/test/java/org/opendaylight/restconf/nb/rfc8040/rests/services/impl/JSONRestconfServiceRfc8040ImplTest.java @@ -22,6 +22,7 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import com.google.common.base.Optional; +import com.google.common.collect.ImmutableClassToInstanceMap; import com.google.common.io.Resources; import com.google.common.util.concurrent.Futures; import java.io.FileNotFoundException; @@ -150,6 +151,8 @@ public class JSONRestconfServiceRfc8040ImplTest { public void setup() throws Exception { MockitoAnnotations.initMocks(this); + doReturn(ImmutableClassToInstanceMap.of()).when(domSchemaService).getExtensions(); + doReturn(Futures.immediateCheckedFuture(Optional.absent())).when(mockReadOnlyTx).read( eq(LogicalDatastoreType.CONFIGURATION), any(YangInstanceIdentifier.class)); -- 2.36.6