Code Review
/
yangtools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Eliminate YangModelDependencyInfo
[yangtools.git]
/
parser
/
yang-parser-impl
/
src
/
main
/
java
/
org
/
opendaylight
/
yangtools
/
yang
/
parser
/
repo
/
RevisionDependencyResolver.java
diff --git
a/parser/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/repo/RevisionDependencyResolver.java
b/parser/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/repo/RevisionDependencyResolver.java
index 312ddfe4f96ffc59e989dd0beb8c9ca8b17a26f1..8ad4f0298df67e80a7fa2233bb938b82d6f22c4f 100644
(file)
--- a/
parser/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/repo/RevisionDependencyResolver.java
+++ b/
parser/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/repo/RevisionDependencyResolver.java
@@
-10,46
+10,36
@@
package org.opendaylight.yangtools.yang.parser.repo;
import java.util.Collection;
import java.util.Map;
import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified;
import java.util.Collection;
import java.util.Map;
import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified;
-import org.opendaylight.yangtools.yang.model.api.
ModuleImport
;
+import org.opendaylight.yangtools.yang.model.api.
source.SourceDependency
;
import org.opendaylight.yangtools.yang.model.api.source.SourceIdentifier;
import org.opendaylight.yangtools.yang.model.api.source.SourceIdentifier;
+import org.opendaylight.yangtools.yang.model.spi.source.SourceInfo;
import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
-import org.opendaylight.yangtools.yang.parser.rfc7950.repo.YangModelDependencyInfo;
final class RevisionDependencyResolver extends DependencyResolver {
final class RevisionDependencyResolver extends DependencyResolver {
- RevisionDependencyResolver(final Map<SourceIdentifier,
YangModelDependency
Info> depInfo) {
+ RevisionDependencyResolver(final Map<SourceIdentifier,
Source
Info> depInfo) {
super(depInfo);
}
super(depInfo);
}
- protected static SourceIdentifier findWildcard(final Iterable<SourceIdentifier> haystack,
- final Unqualified needle) {
- for (final SourceIdentifier r : haystack) {
- if (needle.equals(r.name())) {
- return r;
- }
- }
-
- return null;
- }
-
@Override
YangParserConfiguration parserConfig() {
return YangParserConfiguration.DEFAULT;
}
@Override
@Override
YangParserConfiguration parserConfig() {
return YangParserConfiguration.DEFAULT;
}
@Override
- protected boolean isKnown(final Collection<SourceIdentifier> haystack, final ModuleImport mi) {
- final SourceIdentifier msi = new SourceIdentifier(mi.getModuleName(), mi.getRevision().orElse(null));
-
+ boolean isKnown(final Collection<SourceIdentifier> haystack, final SourceDependency dependency) {
// Quick lookup
// Quick lookup
- if (haystack.contains(msi)) {
- return true;
- }
-
- // Slow revision-less walk
- return mi.getRevision().isEmpty() && findWildcard(haystack, mi.getModuleName()) != null;
+ return haystack.contains(new SourceIdentifier(dependency.name(), dependency.revision()))
+ // Slow revision-less walk
+ || dependency.revision() == null && findWildcard(haystack, dependency.name()) != null;
}
}
- public static RevisionDependencyResolver create(final Map<SourceIdentifier, YangModelDependencyInfo> depInfo) {
- return new RevisionDependencyResolver(depInfo);
+ private static SourceIdentifier findWildcard(final Collection<SourceIdentifier> haystack,
+ final Unqualified needle) {
+ for (var sourceId : haystack) {
+ if (needle.equals(sourceId.name())) {
+ return sourceId;
+ }
+ }
+ return null;
}
}
\ No newline at end of file
}
}
\ No newline at end of file