import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
-import java.util.Optional;
import java.util.Set;
import org.checkerframework.checker.lock.qual.GuardedBy;
import org.checkerframework.checker.lock.qual.Holding;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
import org.opendaylight.yangtools.yang.model.api.stmt.ModuleEffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.SubmoduleEffectiveStatement;
-import org.opendaylight.yangtools.yang.model.repo.api.RevisionSourceIdentifier;
import org.opendaylight.yangtools.yang.model.repo.api.SchemaSourceException;
import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource;
// Alright, now let's find out which sources got captured
final Set<SourceIdentifier> sources = new HashSet<>();
for (Entry<QNameModule, ModuleEffectiveStatement> entry : effectiveModel.getModuleStatements().entrySet()) {
- final Optional<Revision> revision = entry.getKey().getRevision();
+ final Revision revision = entry.getKey().getRevision().orElse(null);
final ModuleEffectiveStatement module = entry.getValue();
- sources.add(RevisionSourceIdentifier.create(module.argument().getLocalName(), revision));
+ sources.add(new SourceIdentifier(module.argument(), revision));
module.streamEffectiveSubstatements(SubmoduleEffectiveStatement.class)
- .map(submodule -> RevisionSourceIdentifier.create(submodule.argument().getLocalName(), revision))
+ .map(submodule -> new SourceIdentifier(submodule.argument(), revision))
.forEach(sources::add);
}
private static SourceIdentifier sourceIdentifierFrom(final YangModuleInfo moduleInfo) {
final QName name = moduleInfo.getName();
- return RevisionSourceIdentifier.create(name.getLocalName(), name.getRevision());
+ return new SourceIdentifier(name.getLocalName(), name.getRevision().map(Revision::toString).orElse(null));
}
private static @NonNull List<@NonNull YangModuleInfo> flatDependencies(final YangModuleInfo moduleInfo) {
import org.opendaylight.yangtools.rfc8528.data.util.AbstractMountPointContextFactory;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.common.Revision;
+import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified;
import org.opendaylight.yangtools.yang.common.XMLNamespace;
import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
-import org.opendaylight.yangtools.yang.model.repo.api.RevisionSourceIdentifier;
+import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
import org.opendaylight.yangtools.yang.parser.api.YangParserException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings("deprecation")
private static SourceReference sourceRefFor(final CommonLeafs obj, final Uri uri) {
- final var sourceId = RevisionSourceIdentifier.create(obj.getName().getValue(),
- LegacyRevisionUtils.toYangCommon(obj.getRevision()));
+ final var sourceId = new SourceIdentifier(Unqualified.of(obj.getName().getValue()),
+ LegacyRevisionUtils.toYangCommon(obj.getRevision()).orElse(null));
if (uri != null) {
try {
return SourceReference.of(sourceId, new URL(uri.getValue()));
private static void fillSource(final List<SourceReference> sources, final YangIdentifier sourceName,
final Optional<Revision> revision, final Set<Uri> uris) {
- final var sourceId = RevisionSourceIdentifier.create(sourceName.getValue(), revision);
+ final var sourceId = new SourceIdentifier(Unqualified.of(sourceName.getValue()), revision.orElse(null));
final SourceReference sourceRef;
if (uris != null && uris.isEmpty()) {
final var locations = new ArrayList<URL>();