BUG-865: remove pre-Beryllium parser
[yangtools.git] / yang / yang-parser-impl / src / main / java / org / opendaylight / yangtools / yang / parser / impl / util / YangModelDependencyInfo.java
index e92fb61edf292edb66cba5f65667080508920740..bb7348c2fafd392441be88fd70546283df4a2bf0 100644 (file)
@@ -7,8 +7,6 @@
  */
 package org.opendaylight.yangtools.yang.parser.impl.util;
 
-import static org.opendaylight.yangtools.yang.parser.impl.ParserListenerUtils.getArgumentString;
-
 import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Strings;
@@ -20,14 +18,6 @@ import java.util.List;
 import java.util.Objects;
 import java.util.Set;
 import org.antlr.v4.runtime.ParserRuleContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Belongs_to_stmtContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Import_stmtContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Include_stmtContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Module_stmtContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Revision_date_stmtContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Revision_stmtContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Revision_stmtsContext;
-import org.opendaylight.yangtools.antlrv4.code.gen.YangParser.Submodule_stmtContext;
 import org.opendaylight.yangtools.antlrv4.code.gen.YangStatementParser;
 import org.opendaylight.yangtools.antlrv4.code.gen.YangStatementParser.StatementContext;
 import org.opendaylight.yangtools.concepts.SemVer;
@@ -36,7 +26,6 @@ import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.ModuleImport;
 import org.opendaylight.yangtools.yang.model.api.Rfc6020Mapping;
 import org.opendaylight.yangtools.yang.model.parser.api.YangSyntaxErrorException;
-import org.opendaylight.yangtools.yang.parser.impl.ParserListenerUtils;
 import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.SupportedExtensionsMapping;
 import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.Utils;
 import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.YangStatementSourceImpl;
@@ -198,18 +187,6 @@ public abstract class YangModelDependencyInfo {
             return parseAST(rootStatement);
         }
 
-        final Optional<Module_stmtContext> moduleCtx = ParserListenerUtils
-                .getFirstContext(tree, Module_stmtContext.class);
-        if (moduleCtx.isPresent()) {
-            return parseModuleContext(moduleCtx.get());
-        }
-
-        final Optional<Submodule_stmtContext> submoduleCtx = ParserListenerUtils
-                .getFirstContext(tree, Submodule_stmtContext.class);
-        if (submoduleCtx.isPresent()) {
-            return parseSubmoduleContext(submoduleCtx.get());
-        }
-
         throw new YangSyntaxErrorException(name, 0, 0, "Unknown YANG text type");
     }
 
@@ -252,18 +229,6 @@ public abstract class YangModelDependencyInfo {
         return parseAST(yangAST);
     }
 
-    private static YangModelDependencyInfo parseModuleContext(
-            final Module_stmtContext module) {
-        final String name = getArgumentString(module);
-        final String latestRevision = getLatestRevision(module.revision_stmts());
-        final ImmutableSet<ModuleImport> imports = parseImports(module
-                .linkage_stmts().import_stmt());
-        final ImmutableSet<ModuleImport> includes = parseIncludes(module
-                .linkage_stmts().include_stmt());
-
-        return new ModuleDependencyInfo(name, latestRevision, imports, includes);
-    }
-
     private static YangModelDependencyInfo parseModuleContext(
             final YangStatementParser.StatementContext module) {
         final String name = Utils.stringFromStringContext(module.argument());
@@ -339,8 +304,7 @@ public abstract class YangModelDependencyInfo {
     }
 
     private static String getRevisionDateString(final StatementContext importStatement) {
-        final List<StatementContext> importSubStatements = importStatement
-                .statement();
+        final List<StatementContext> importSubStatements = importStatement.statement();
         String revisionDateStr = null;
         for (final StatementContext importSubStatement : importSubStatements) {
             if (importSubStatement
@@ -355,17 +319,6 @@ public abstract class YangModelDependencyInfo {
         return revisionDateStr;
     }
 
-    private static ImmutableSet<ModuleImport> parseImports(
-            final List<Import_stmtContext> importStatements) {
-        final ImmutableSet.Builder<ModuleImport> builder = ImmutableSet.builder();
-        for (final Import_stmtContext importStmt : importStatements) {
-            final String moduleName = getArgumentString(importStmt);
-            final Date revision = getRevision(importStmt.revision_date_stmt());
-            builder.add(new ModuleImportImpl(moduleName, revision));
-        }
-        return builder.build();
-    }
-
     public static String getLatestRevision(
             final YangStatementParser.StatementContext module) {
         final List<StatementContext> subStatements = module.statement();
@@ -387,21 +340,6 @@ public abstract class YangModelDependencyInfo {
         return latestRevision;
     }
 
-    public static String getLatestRevision(
-            final Revision_stmtsContext revisionStmts) {
-        final List<Revision_stmtContext> revisions = revisionStmts
-                .getRuleContexts(Revision_stmtContext.class);
-        String latestRevision = null;
-        for (final Revision_stmtContext revisionStmt : revisions) {
-            final String currentRevision = getArgumentString(revisionStmt);
-            if (latestRevision == null
-                    || latestRevision.compareTo(currentRevision) == -1) {
-                latestRevision = currentRevision;
-            }
-        }
-        return latestRevision;
-    }
-
     private static YangModelDependencyInfo parseSubmoduleContext(
             final YangStatementParser.StatementContext submodule) {
         final String name = Utils.stringFromStringContext(submodule.argument());
@@ -430,43 +368,6 @@ public abstract class YangModelDependencyInfo {
         return null;
     }
 
-    private static YangModelDependencyInfo parseSubmoduleContext(
-            final Submodule_stmtContext submodule) {
-        final String name = getArgumentString(submodule);
-        final Belongs_to_stmtContext belongsToStmt = submodule
-                .submodule_header_stmts().belongs_to_stmt(0);
-        final String belongsTo = getArgumentString(belongsToStmt);
-
-        final String latestRevision = getLatestRevision(submodule.revision_stmts());
-        final ImmutableSet<ModuleImport> imports = parseImports(submodule
-                .linkage_stmts().import_stmt());
-        final ImmutableSet<ModuleImport> includes = parseIncludes(submodule
-                .linkage_stmts().include_stmt());
-
-        return new SubmoduleDependencyInfo(name, latestRevision, belongsTo,
-                imports, includes);
-    }
-
-    private static ImmutableSet<ModuleImport> parseIncludes(
-            final List<Include_stmtContext> importStatements) {
-        final ImmutableSet.Builder<ModuleImport> builder = ImmutableSet.builder();
-        for (final Include_stmtContext importStmt : importStatements) {
-            final String moduleName = getArgumentString(importStmt);
-            final Date revision = getRevision(importStmt.revision_date_stmt());
-            builder.add(new ModuleImportImpl(moduleName, revision));
-        }
-        return builder.build();
-    }
-
-    private static Date getRevision(
-            final Revision_date_stmtContext revisionDateStmt) {
-        if (revisionDateStmt == null) {
-            return null;
-        }
-        final String formatedDate = getArgumentString(revisionDateStmt);
-        return QName.parseRevision(formatedDate);
-    }
-
     /**
      *
      * Dependency information for YANG module.