X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=parser%2Fyang-parser-rfc7950%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Frfc7950%2Frepo%2FYangModelDependencyInfo.java;h=be5de12d28c5fa682ccfd191b45bb32c4bf0ef1f;hb=bf25c16c89625837be48ee685184707339f487ff;hp=73ca392e2041489583c27b5193305b107597dc0a;hpb=f7a392df39d0cb0844f992321ed1c78fc7ef85f7;p=yangtools.git diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/YangModelDependencyInfo.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/YangModelDependencyInfo.java index 73ca392e20..be5de12d28 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/YangModelDependencyInfo.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/YangModelDependencyInfo.java @@ -19,6 +19,7 @@ import java.util.Set; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; import org.opendaylight.yangtools.yang.common.Revision; +import org.opendaylight.yangtools.yang.common.UnresolvedQName; import org.opendaylight.yangtools.yang.model.api.ModuleImport; import org.opendaylight.yangtools.yang.model.api.YangStmtMapping; import org.opendaylight.yangtools.yang.model.api.stmt.ImportEffectiveStatement; @@ -190,8 +191,8 @@ public abstract class YangModelDependencyInfo { if (isBuiltin(substatement, IMPORT)) { final String importedModuleName = safeStringArgument(source, substatement, "imported module name"); final String revisionDateStr = getRevisionDateString(substatement, source); - final Revision revisionDate = Revision.ofNullable(revisionDateStr).orElse(null); - result.add(new ModuleImportImpl(importedModuleName, revisionDate)); + result.add(new ModuleImportImpl(UnresolvedQName.Unqualified.of(importedModuleName), + revisionDateStr != null ? Revision.of(revisionDateStr) : null)); } } return ImmutableSet.copyOf(result); @@ -207,9 +208,9 @@ public abstract class YangModelDependencyInfo { for (final IRStatement substatement : module.statements()) { if (isBuiltin(substatement, INCLUDE)) { final String revisionDateStr = getRevisionDateString(substatement, source); - final String IncludeModuleName = safeStringArgument(source, substatement, "included submodule name"); - final Revision revisionDate = Revision.ofNullable(revisionDateStr).orElse(null); - result.add(new ModuleImportImpl(IncludeModuleName, revisionDate)); + final String includeModuleName = safeStringArgument(source, substatement, "included submodule name"); + result.add(new ModuleImportImpl(UnresolvedQName.Unqualified.of(includeModuleName), + revisionDateStr == null ? null : Revision.of(revisionDateStr))); } } return ImmutableSet.copyOf(result); @@ -241,7 +242,7 @@ public abstract class YangModelDependencyInfo { private static @NonNull YangModelDependencyInfo parseSubmoduleContext(final IRStatement submodule, final SourceIdentifier source) { final String name = safeStringArgument(source, submodule, "submodule name"); - final String belongsTo = parseBelongsTo(submodule, source); + final UnresolvedQName.Unqualified belongsTo = UnresolvedQName.Unqualified.of(parseBelongsTo(submodule, source)); final String latestRevision = getLatestRevision(submodule, source); final ImmutableSet imports = parseImports(submodule, source); @@ -271,7 +272,7 @@ public abstract class YangModelDependencyInfo { } private static StatementSourceReference getReference(final SourceIdentifier source, final IRStatement stmt) { - return ExplicitStatement.atPosition(source.getName(), stmt.startLine(), stmt.startColumn() + 1); + return ExplicitStatement.atPosition(source.name().getLocalName(), stmt.startLine(), stmt.startColumn() + 1); } /** @@ -295,10 +296,11 @@ public abstract class YangModelDependencyInfo { * Dependency information for submodule, also provides name for parent module. */ public static final class SubmoduleDependencyInfo extends YangModelDependencyInfo { - private final String belongsTo; + private final UnresolvedQName.Unqualified belongsTo; - private SubmoduleDependencyInfo(final String name, final String latestRevision, final String belongsTo, - final ImmutableSet imports, final ImmutableSet includes) { + private SubmoduleDependencyInfo(final String name, final String latestRevision, + final UnresolvedQName.Unqualified belongsTo, final ImmutableSet imports, + final ImmutableSet includes) { super(name, latestRevision, imports, includes); this.belongsTo = belongsTo; } @@ -308,7 +310,7 @@ public abstract class YangModelDependencyInfo { * * @return The module this info belongs to */ - public String getParentModule() { + public UnresolvedQName.Unqualified getParentModule() { return belongsTo; } @@ -325,16 +327,16 @@ public abstract class YangModelDependencyInfo { */ // FIXME: this is a rather nasty misuse of APIs :( private static final class ModuleImportImpl implements ModuleImport { - private final @NonNull String moduleName; + private final UnresolvedQName.@NonNull Unqualified moduleName; private final Revision revision; - ModuleImportImpl(final @NonNull String moduleName, final @Nullable Revision revision) { + ModuleImportImpl(final UnresolvedQName.@NonNull Unqualified moduleName, final @Nullable Revision revision) { this.moduleName = requireNonNull(moduleName, "Module name must not be null."); this.revision = revision; } @Override - public String getModuleName() { + public UnresolvedQName.Unqualified getModuleName() { return moduleName; }