X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-restconf-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Fbroker%2Fclient%2FSalRemoteClientImpl.java;h=7428b90113e582326ade791aa7253814681ac4c3;hp=ec62568a1b378b91210af441850fb087be4ead57;hb=e631dc96f0461b2270377dc072b9f969a875667a;hpb=6623a8370580d5210be559299e165c96d4097fe2 diff --git a/opendaylight/md-sal/sal-restconf-broker/src/main/java/org/opendaylight/controller/sal/restconf/broker/client/SalRemoteClientImpl.java b/opendaylight/md-sal/sal-restconf-broker/src/main/java/org/opendaylight/controller/sal/restconf/broker/client/SalRemoteClientImpl.java index ec62568a1b..7428b90113 100644 --- a/opendaylight/md-sal/sal-restconf-broker/src/main/java/org/opendaylight/controller/sal/restconf/broker/client/SalRemoteClientImpl.java +++ b/opendaylight/md-sal/sal-restconf-broker/src/main/java/org/opendaylight/controller/sal/restconf/broker/client/SalRemoteClientImpl.java @@ -7,10 +7,8 @@ */ package org.opendaylight.controller.sal.restconf.broker.client; +import com.google.common.base.Preconditions; import java.net.URL; - -import javassist.ClassPool; - import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerContext; import org.opendaylight.controller.sal.binding.api.BindingAwareConsumer; import org.opendaylight.controller.sal.restconf.broker.SalRemoteServiceBroker; @@ -18,36 +16,30 @@ import org.opendaylight.yangtools.restconf.client.RestconfClientFactory; import org.opendaylight.yangtools.restconf.client.api.RestconfClientContext; import org.opendaylight.yangtools.restconf.client.api.UnsupportedProtocolException; import org.opendaylight.yangtools.sal.binding.generator.impl.ModuleInfoBackedContext; -import org.opendaylight.yangtools.sal.binding.generator.impl.RuntimeGeneratedMappingServiceImpl; -import org.opendaylight.yangtools.yang.binding.Augmentation; import org.opendaylight.yangtools.yang.binding.util.BindingReflections; +import org.opendaylight.yangtools.yang.model.api.SchemaContext; +import org.opendaylight.yangtools.yang.model.api.SchemaContextHolder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.google.common.base.Preconditions; - -class SalRemoteClientImpl implements SalRemoteClient { +class SalRemoteClientImpl implements SalRemoteClient, SchemaContextHolder { private static final Logger logger = LoggerFactory.getLogger(SalRemoteClientImpl.class); private final RestconfClientContext restconfClientContext; private final SalRemoteServiceBroker salRemoteBroker; - private final RuntimeGeneratedMappingServiceImpl mappingService; + + private SchemaContext schemaContext; public SalRemoteClientImpl(final URL url) { Preconditions.checkNotNull(url); - this.mappingService = new RuntimeGeneratedMappingServiceImpl(); - this.mappingService.setPool(ClassPool.getDefault()); - this.mappingService.init(); final ModuleInfoBackedContext moduleInfo = ModuleInfoBackedContext.create(); moduleInfo.addModuleInfos(BindingReflections.loadModuleInfos()); - this.mappingService.onGlobalContextUpdated(moduleInfo.tryToCreateSchemaContext().get()); - + schemaContext = moduleInfo.tryToCreateSchemaContext().get(); try { - this.restconfClientContext = new RestconfClientFactory().getRestconfClientContext(url, this.mappingService, - this.mappingService); + this.restconfClientContext = new RestconfClientFactory().getRestconfClientContext(url,this); this.salRemoteBroker = new SalRemoteServiceBroker("remote-broker", restconfClientContext); this.salRemoteBroker.start(); @@ -67,6 +59,11 @@ class SalRemoteClientImpl implements SalRemoteClient { }, null); } + @Override + public SchemaContext getSchemaContext() { + return schemaContext; + } + @Override public void close() throws Exception { this.restconfClientContext.close();