X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-manager-facade-xml%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Ffacade%2Fxml%2Fosgi%2FYangStoreSnapshot.java;h=452054518e54ed96b8026a3d20bf0015eeaa2faf;hb=f43b01b81319959b1907e3e04537f5169e7f33d8;hp=ce34496810a2356b04b593bfd43dfc5c4bf1f6a8;hpb=2d60632f7cf63712e8357a3cf3fc40d83366e5e6;p=controller.git diff --git a/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/osgi/YangStoreSnapshot.java b/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/osgi/YangStoreSnapshot.java index ce34496810..452054518e 100644 --- a/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/osgi/YangStoreSnapshot.java +++ b/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/osgi/YangStoreSnapshot.java @@ -8,13 +8,12 @@ package org.opendaylight.controller.config.facade.xml.osgi; -import com.google.common.base.Optional; import com.google.common.base.Preconditions; import com.google.common.collect.BiMap; import com.google.common.collect.Maps; import com.google.common.collect.Sets; import com.google.common.io.ByteStreams; -import com.google.common.util.concurrent.CheckedFuture; +import com.google.common.util.concurrent.ListenableFuture; import java.io.IOException; import java.io.InputStream; import java.lang.ref.SoftReference; @@ -25,6 +24,7 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Objects; import java.util.Set; +import java.util.concurrent.ExecutionException; import org.opendaylight.controller.config.yangjmxgenerator.ModuleMXBeanEntry; import org.opendaylight.controller.config.yangjmxgenerator.PackageTranslator; import org.opendaylight.controller.config.yangjmxgenerator.ServiceInterfaceEntry; @@ -35,7 +35,7 @@ import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode; import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.model.api.SchemaContext; -import org.opendaylight.yangtools.yang.model.repo.api.SchemaSourceException; +import org.opendaylight.yangtools.yang.model.repo.api.RevisionSourceIdentifier; import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier; import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource; import org.opendaylight.yangtools.yang.model.repo.spi.SchemaSourceProvider; @@ -151,17 +151,15 @@ public final class YangStoreSnapshot implements YangStoreContext, EnumResolver { } @Override - public String getModuleSource(final org.opendaylight.yangtools.yang.model.api.ModuleIdentifier moduleIdentifier) { - final CheckedFuture source = this.sourceProvider - .getSource(SourceIdentifier.create(moduleIdentifier.getName(), - Optional.fromNullable(QName.formattedRevision(moduleIdentifier.getRevision())))); - + public String getModuleSource(final SourceIdentifier moduleIdentifier) { + final ListenableFuture source = this.sourceProvider.getSource( + RevisionSourceIdentifier.create(moduleIdentifier.getName(), moduleIdentifier.getRevision())); try { - final YangTextSchemaSource yangTextSchemaSource = source.checkedGet(); + final YangTextSchemaSource yangTextSchemaSource = source.get(); try (InputStream inStream = yangTextSchemaSource.openStream()) { return new String(ByteStreams.toByteArray(inStream), StandardCharsets.UTF_8); } - } catch (SchemaSourceException | IOException e) { + } catch (ExecutionException | InterruptedException | IOException e) { LOG.warn("Unable to provide source for {}", moduleIdentifier, e); throw new IllegalArgumentException("Unable to provide source for " + moduleIdentifier, e); }