Где найти примеры для разбора файлов YANG с помощью opendaylight - PullRequest
0 голосов
/ 07 марта 2019

Я добавил следующую зависимость в свой pom.xml

<dependencies>
        <dependency>
            <groupId>org.opendaylight.yangtools</groupId>
            <artifactId>yang-parser-impl</artifactId>
            <version>2.1.8</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>org.opendaylight.yangtools</groupId>
            <artifactId>yang-parser-api</artifactId>
            <version>2.1.8</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>org.opendaylight.yangtools</groupId>
            <artifactId>yang-model-api</artifactId>
            <version>2.1.8</version>
            <type>jar</type>
        </dependency>
    </dependencies>

Затем я попытался найти документацию о том, как анализировать файлы .yang / .yi для построения схемы.

Я нашел следующий пример здесь:

https://docs.opendaylight.org/en/stable-boron/developer-guide/yang-tools.html

StatementStreamSource yangModuleSource == new YangStatementSourceImpl("/example.yang", false);
StatementStreamSource yangModuleSource2 == new YangStatementSourceImpl("/example2.yang", false);

CrossSourceStatementReactor.BuildAction reactor == YangInferencePipeline.RFC6020_REACTOR.newBuild();
reactor.addSources(yangModuleSource, yangModuleSource2);

SchemaContext schemaContext == reactor.buildEffective();

Однако я не могу найти класс YangStatementSourceImpl или YinStatementSourceImpl в этих банках.

Итак, мой вопрос:

  1. Где я могу найти эти классы, YangStatementSourceImpl или YinStatementSourceImpl?
  2. Каким образом версии opendaylight, такие как барон, кислород ... соответствуют модулю maven здесь: https://mvnrepository.com/artifact/org.opendaylight.yangtools?

ш

// * 1028 микрофон *

1 Ответ

1 голос
/ 08 марта 2019
  1. Эти классы устарели;их замены YangStatementStreamSource и YinStatementStreamSource.Чтобы инициализировать первый поток в этом примере, вы должны написать

    YangTextSchemaSource yangTextSchemaSource = YangTextSchemaSource.forFile(new File("/example.yang"));
    StatementStreamSource yangModuleSource = YangStatementStreamSource.create(yangTextSchemaSource);
    
  2. YANG. Артефакты инструментов были опубликованы в Maven Central начиная с Fluorine;соответствующие версии вы найдете в таблице версий платформы .Версия 2.1.8, которую вы используете в настоящее время, предназначена для Neon, который в настоящее время выпускается.

...