Split out yang-repo-{api,spi} 58/95158/7
authorRobert Varga <robert.varga@pantheon.tech>
Sat, 13 Feb 2021 02:42:04 +0000 (03:42 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Sat, 13 Feb 2021 10:20:33 +0000 (11:20 +0100)
yang.model.repo.{api,spi} are somewhat different from normal
yang.model.{api,spi}, split them out. This allows for a more
fine-grained accessess to APIs.

JIRA: YANGTOOLS-1143
Change-Id: Idbf7dc5156e1263e83c10e166abc493754b45072
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
78 files changed:
artifacts/pom.xml
docs/pom.xml
features/odl-yangtools-parser-api/pom.xml
plugin/plugin-generator-api/pom.xml
plugin/plugin-generator-api/src/main/java/module-info.java
yang/odlext-model-api/pom.xml
yang/odlext-model-api/src/main/java/module-info.java
yang/openconfig-model-api/pom.xml
yang/openconfig-model-api/src/main/java/module-info.java
yang/pom.xml
yang/rfc6241-model-api/pom.xml
yang/rfc6241-model-api/src/main/java/module-info.java
yang/rfc6536-model-api/pom.xml
yang/rfc6536-model-api/src/main/java/module-info.java
yang/rfc6643-model-api/pom.xml
yang/rfc6643-model-api/src/main/java/module-info.java
yang/rfc7952-model-api/pom.xml
yang/rfc7952-model-api/src/main/java/module-info.java
yang/rfc8040-model-api/pom.xml
yang/rfc8040-model-api/src/main/java/module-info.java
yang/rfc8528-model-api/pom.xml
yang/rfc8528-model-api/src/main/java/module-info.java
yang/yang-model-api/src/main/java/module-info.java
yang/yang-model-util/src/main/java/module-info.java
yang/yang-parser-api/pom.xml
yang/yang-parser-api/src/main/java/module-info.java
yang/yang-parser-rfc7950/pom.xml
yang/yang-parser-rfc7950/src/main/java/module-info.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/path/PathExpressionParserTest.java
yang/yang-parser-spi/pom.xml
yang/yang-parser-spi/src/main/java/module-info.java
yang/yang-repo-api/pom.xml [new file with mode: 0644]
yang/yang-repo-api/src/main/java/module-info.java [new file with mode: 0644]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/DelegatedYangTextSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/DelegatedYangTextSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/DelegatedYinTextSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/DelegatedYinTextSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/EffectiveModelContextFactory.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/EffectiveModelContextFactory.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/MissingSchemaSourceException.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/MissingSchemaSourceException.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/ResourceYangTextSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/ResourceYangTextSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/ResourceYinTextSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/ResourceYinTextSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/RevisionSourceIdentifier.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/RevisionSourceIdentifier.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaContextFactoryConfiguration.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaContextFactoryConfiguration.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaRepository.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaRepository.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaResolutionException.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaResolutionException.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaSourceException.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaSourceException.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaSourceFilter.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaSourceFilter.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaSourceRepresentation.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SchemaSourceRepresentation.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SemVerSourceIdentifier.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SemVerSourceIdentifier.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SourceIdentifier.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/SourceIdentifier.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/StatementParserMode.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/StatementParserMode.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YangSchemaSourceRepresentation.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YangSchemaSourceRepresentation.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YangTextFileSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YangTextFileSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YangTextSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YangTextSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinDomSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinDomSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinSchemaSourceRepresentation.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinSchemaSourceRepresentation.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextFileSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextFileSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextSchemaSource.java with 100% similarity]
yang/yang-repo-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinXmlSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinXmlSchemaSource.java with 100% similarity]
yang/yang-repo-fs/pom.xml
yang/yang-repo-fs/src/main/java/module-info.java
yang/yang-repo-spi/pom.xml [new file with mode: 0644]
yang/yang-repo-spi/src/main/java/module-info.java [new file with mode: 0644]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaListenerRegistration.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaListenerRegistration.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaRepository.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaRepository.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaSourceCache.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaSourceCache.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaSourceRegistration.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/AbstractSchemaSourceRegistration.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/GuavaSchemaSourceCache.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/GuavaSchemaSourceCache.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/PotentialSchemaSource.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/PotentialSchemaSource.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/RefcountedRegistration.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/RefcountedRegistration.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaListenerRegistration.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaListenerRegistration.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceListener.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceListener.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceProvider.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceProvider.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceRegistration.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceRegistration.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceRegistry.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceRegistry.java with 100% similarity]
yang/yang-repo-spi/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceTransformer.java [moved from yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceTransformer.java with 100% similarity]
yang/yang-repo-spi/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/GuavaSchemaSourceCacheTest.java [moved from yang/yang-model-api/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/GuavaSchemaSourceCacheTest.java with 100% similarity]
yang/yang-repo-spi/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/PotentialSchemaSourceTest.java [moved from yang/yang-model-api/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/PotentialSchemaSourceTest.java with 100% similarity]
yang/yang-repo-spi/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/RefcountedRegistrationTest.java [moved from yang/yang-model-api/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/RefcountedRegistrationTest.java with 100% similarity]
yang/yang-repo-spi/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceTransformerTest.java [moved from yang/yang-model-api/src/test/java/org/opendaylight/yangtools/yang/model/repo/spi/SchemaSourceTransformerTest.java with 100% similarity]

index 61ab674482bcb42d62f540085e3708617199f137..80f94fcf77eed7f745f89c6dfc2b0b5fc543b346 100644 (file)
                 <artifactId>yang-parser-rfc7950</artifactId>
                 <version>7.0.0-SNAPSHOT</version>
             </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-repo-api</artifactId>
+                <version>7.0.0-SNAPSHOT</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-repo-spi</artifactId>
+                <version>7.0.0-SNAPSHOT</version>
+            </dependency>
             <dependency>
                 <groupId>org.opendaylight.yangtools</groupId>
                 <artifactId>yang-repo-fs</artifactId>
index 7a2627982706e4aa0a18e4546bdfe7f36acfee04..008eb9dca859835a54b6f0f322f25e381e92258e 100644 (file)
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-parser-rfc7950</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-spi</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-repo-fs</artifactId>
index 5aec457841447adeca007dc52d8f0f26592a63a0..04d2f0799d1b2fe28e58d3658860471f50aa83fe 100644 (file)
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-parser-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-spi</artifactId>
+        </dependency>
     </dependencies>
 </project>
index d7733febea33fbd1cc6ec36ea5c383fc5e20f2c5..6d42f655a3aec4e56bc6929755a1737f03c84944 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 0021099ebed2d9092d1069a9a8343a29caf2f08c..302fde1bcb2b48ba6d134dcca5159bcb5c01a472 100644 (file)
@@ -9,4 +9,5 @@ module org.opendaylight.yangtools.plugin.generator.api {
     exports org.opendaylight.yangtools.plugin.generator.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
 }
index 4ca5726894f0f44ea500a8fc5b0e5347a2454800..e0f295c724a9535964be791389e966872158d16f 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 44cfc16b63b71c9f2058484bc8762e07ee8872d5..59895d2c540b816cdc5d951e3897ce4fc45893aa 100644 (file)
@@ -9,4 +9,5 @@ module org.opendaylight.yangtools.odlext.model.api {
     exports org.opendaylight.yangtools.odlext.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
 }
index 78708343dfc9649168456b6a0c4e9fc72591e094..451af132f067e33a0d92b266751150e5f66f53c7 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index f930e8e4eee0729219c2b8495f5fbdc1ef23ecd7..adebab7baeee8c3caba024b85c33cba73f588a96 100644 (file)
@@ -9,6 +9,7 @@ module org.opendaylight.yangtools.openconfig.model.api {
     exports org.opendaylight.yangtools.openconfig.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
     requires org.opendaylight.yangtools.yang.common;
 
     // Annotations
index e7c0fadf0c507e9c24ec9717753ce9c7b337a7c8..fb209534c852b03cd87ba5f6fe1f7e2f0d58fb7b 100644 (file)
@@ -50,6 +50,8 @@
         <module>yang-parser-impl</module>
 
         <!-- YANG repository API and implementions -->
+        <module>yang-repo-api</module>
+        <module>yang-repo-spi</module>
         <module>yang-repo-fs</module>
 
         <!-- Metamodel statement reactor -->
index 5341728c26480d3f8b102a993f1303733a7b4a6e..98a700c618aed4b4f8a836bf1719650f5ce42334 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 033edfc2d143a13af98f3f29f87bdca51ca8bf94..eee3d48f094dcd1a094233760584e13bb40c8e3a 100644 (file)
@@ -12,4 +12,5 @@ module org.opendaylight.yangtools.rfc6241.model.api {
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
     requires org.opendaylight.yangtools.yang.common;
+    requires org.opendaylight.yangtools.yang.repo.api;
 }
index d461cb97fa4f5eb8b507acd185e8114bf4591911..f548e32fc023662a601a60cb142a33e4b81ae097 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index f94d46c86638cc2783b5ff99fcad4d9c8df71143..93d88b2adb513f8ec37e19626b0f292f7c62857f 100644 (file)
@@ -11,5 +11,6 @@ module org.opendaylight.yangtools.rfc6536.model.api {
     exports org.opendaylight.yangtools.rfc6536.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
     requires org.opendaylight.yangtools.yang.common;
 }
index ffadab11d76cf262e4692a2b68287058b543d59a..77c8206ca5dbf57e9dc4776212f92bfd7a3a6b7d 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 4a0248136704fc2b481f4200bf77add452ead263..08ddb0ef113414a50c00b10c911821c89a1221a9 100644 (file)
@@ -11,4 +11,5 @@ module org.opendaylight.yangtools.rfc6643.model.api {
     exports org.opendaylight.yangtools.rfc6643.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
 }
index 22752eb1cbe058cd6d85dfbbb6cf2b6900eb99b3..019f6ce71ef0bbddc43a10366f572c23c74caf0e 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 87568688940acff195cb079f632f3c9a41e799f9..4d6e89529af3325ce764257b1c108a29d1a1e6c9 100644 (file)
@@ -11,4 +11,5 @@ module org.opendaylight.yangtools.rfc7952.model.api {
     exports org.opendaylight.yangtools.rfc7952.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
 }
index 3442bd766e9676fa3d9b53d7a3308f1b793c5366..0d63189fc319ce1907edb2157a6335f2403e31d4 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 399ac9274f5986e20c15e9a85f419eac394ef551..064bdfc92aed038aaf68ad0889266ab73c807428 100644 (file)
@@ -11,4 +11,5 @@ module org.opendaylight.yangtools.rfc8040.model.api {
     exports org.opendaylight.yangtools.rfc8040.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
 }
index 22e5bd231ff0dd2cd3f430af25858f72329b69e3..814515022ecca5f6191a2693ca148de02992e811 100644 (file)
@@ -34,5 +34,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index 14795ca3a64570cf5869ca801fec4f1e9797226d..bb50e5428a8d83e3c7f523aeff667618a2587690 100644 (file)
@@ -11,4 +11,5 @@ module org.opendaylight.yangtools.rfc8528.model.api {
     exports org.opendaylight.yangtools.rfc8528.model.api;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
 }
index fb5c743c6dc8d7057ddbedb9ccdf6a9e923c129f..949b1ad7d341e28e302fe8d8dc31617e4597b18c 100644 (file)
@@ -11,8 +11,6 @@ module org.opendaylight.yangtools.yang.model.api {
     exports org.opendaylight.yangtools.yang.model.api.stmt;
     exports org.opendaylight.yangtools.yang.model.api.stmt.compat;
     exports org.opendaylight.yangtools.yang.model.api.type;
-    exports org.opendaylight.yangtools.yang.model.repo.api;
-    exports org.opendaylight.yangtools.yang.model.repo.spi;
 
     requires transitive org.opendaylight.yangtools.yang.xpath.api;
     requires org.opendaylight.yangtools.concepts;
@@ -23,5 +21,4 @@ module org.opendaylight.yangtools.yang.model.api {
     // Annotations
     requires static transitive org.eclipse.jdt.annotation;
     requires static com.github.spotbugs.annotations;
-    requires static org.checkerframework.checker.qual;
 }
index 85bdaf8c78c9e5a449263715d33b91ed118cc2be..1767dcc1f0114b9985c148e056b58d702a0d5006 100644 (file)
@@ -8,9 +8,10 @@
 module org.opendaylight.yangtools.yang.model.util {
     exports org.opendaylight.yangtools.yang.model.util;
 
+    requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
     requires com.google.common;
     requires org.opendaylight.yangtools.yang.common;
-    requires org.opendaylight.yangtools.yang.model.api;
     requires org.opendaylight.yangtools.yang.model.spi;
     requires org.slf4j;
 
index 292121b4b3408980a85f4eedba450f841f006989..d07d9e41e29d10b1b7cbb3978a74e5fe22fba445 100644 (file)
@@ -26,5 +26,9 @@
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
     </dependencies>
 </project>
index cda1d0c2e324557e68b398fe9a6e434b7d94bf22..e54ef250277172a566ff7646e331ced530c490a4 100644 (file)
@@ -10,4 +10,5 @@ module org.opendaylight.yangtools.yang.parser.api {
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
     requires org.opendaylight.yangtools.yang.common;
+    requires org.opendaylight.yangtools.yang.repo.api;
 }
index c2e0dfc927a74a79f0d9451a88bd67b4f8b1c203..6753a5cb29423a20b56844f6a8d9274797917f1f 100644 (file)
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-parser-antlr</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-spi</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>openconfig-model-api</artifactId>
index 8f32b295150b5956de1ff35e52129f8ae75c2d24..31b7c53837ca9c2abdffd5ae72750cd0e823a1d0 100644 (file)
@@ -19,6 +19,7 @@ module org.opendaylight.yangtools.yang.parser.rfc7950 {
     requires transitive org.opendaylight.yangtools.yang.parser.api;
     requires transitive org.opendaylight.yangtools.yang.parser.reactor;
     requires transitive org.opendaylight.yangtools.yang.parser.spi;
+    requires transitive org.opendaylight.yangtools.yang.repo.spi;
 
     requires com.google.common;
     requires org.opendaylight.yangtools.concepts;
index 2fa82376b1964480add329d0563618a9b6d3fc7c..ceecf8874bb0f94cde4bf58dfc9be8ddc7a6e6b7 100644 (file)
@@ -48,6 +48,7 @@ public class PathExpressionParserTest {
     @Mock
     public StatementSourceReference ref;
 
+    @SuppressWarnings("exports")
     public final PathExpressionParser parser = new PathExpressionParser();
 
     @Before
index 3b016360a7fcce148b7aa2adfab103dac907099d..26c3ba4f6012656ef8fcd4d2d9feed386363ab26 100644 (file)
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
 
         <dependency>
             <groupId>org.opendaylight.yangtools</groupId>
index c45f7cf7e1d6874ff28e2f3f70d4dbf7d8fdb2cf..c350723b57bfa05bae7fe7193e6d164abe3afeea 100644 (file)
@@ -12,6 +12,7 @@ module org.opendaylight.yangtools.yang.parser.spi {
     exports org.opendaylight.yangtools.yang.parser.spi.validation;
 
     requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
     requires com.google.common;
     requires org.opendaylight.yangtools.concepts;
     requires org.opendaylight.yangtools.yang.common;
diff --git a/yang/yang-repo-api/pom.xml b/yang/yang-repo-api/pom.xml
new file mode 100644 (file)
index 0000000..aaa571b
--- /dev/null
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+ Copyright (c) 2021 PANTHEON.tech, s.r.o. and others.  All rights reserved.
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ and is available at http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.opendaylight.yangtools</groupId>
+        <artifactId>bundle-parent</artifactId>
+        <version>7.0.0-SNAPSHOT</version>
+        <relativePath>../../bundle-parent</relativePath>
+    </parent>
+
+    <artifactId>yang-repo-api</artifactId>
+    <packaging>bundle</packaging>
+    <name>${project.artifactId}</name>
+    <description>YANG Schema Repository API</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-common</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-model-api</artifactId>
+        </dependency>
+    </dependencies>
+</project>
diff --git a/yang/yang-repo-api/src/main/java/module-info.java b/yang/yang-repo-api/src/main/java/module-info.java
new file mode 100644 (file)
index 0000000..ccaac82
--- /dev/null
@@ -0,0 +1,22 @@
+/*
+ * Copyright (c) 2021 PANTHEON.tech, s.r.o. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+module org.opendaylight.yangtools.yang.repo.api {
+    exports org.opendaylight.yangtools.yang.model.repo.api;
+
+    requires transitive java.xml;
+    requires transitive org.opendaylight.yangtools.yang.model.api;
+
+    requires com.google.common;
+    requires org.opendaylight.yangtools.concepts;
+    requires org.opendaylight.yangtools.yang.common;
+    requires org.opendaylight.yangtools.util;
+    requires org.slf4j;
+
+    // Annotations
+    requires static transitive org.eclipse.jdt.annotation;
+}
index 63d7244e07cd499a6c4e105b0127ee2a61f036be..51d7f563a23ae5e342dfd3575629d22c14668950 100644 (file)
             <groupId>org.opendaylight.yangtools</groupId>
             <artifactId>yang-model-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-spi</artifactId>
+        </dependency>
 
         <dependency>
             <groupId>org.opendaylight.yangtools</groupId>
index b2a5f6ab16f1587cfe4d254c3539258790fbd78a..faa49b050636666b2a2a15f3aa89e5814c7af765 100644 (file)
@@ -8,10 +8,12 @@
 module org.opendaylight.yangtools.yang.model.repo.fs {
     exports org.opendaylight.yangtools.yang.model.repo.fs;
 
-    requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.spi;
     requires com.google.common;
     requires org.opendaylight.yangtools.util;
     requires org.opendaylight.yangtools.yang.common;
+    requires org.opendaylight.yangtools.yang.model.api;
+    requires org.opendaylight.yangtools.yang.repo.api;
     requires org.slf4j;
 
     // Annotations
diff --git a/yang/yang-repo-spi/pom.xml b/yang/yang-repo-spi/pom.xml
new file mode 100644 (file)
index 0000000..f753fb3
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+ Copyright (c) 2021 PANTHEON.tech, s.r.o.. and others.  All rights reserved.
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ and is available at http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.opendaylight.yangtools</groupId>
+        <artifactId>bundle-parent</artifactId>
+        <version>7.0.0-SNAPSHOT</version>
+        <relativePath>../../bundle-parent</relativePath>
+    </parent>
+
+    <artifactId>yang-repo-spi</artifactId>
+    <packaging>bundle</packaging>
+    <name>${project.artifactId}</name>
+    <description>YANG Schema Repository SPI</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-repo-api</artifactId>
+        </dependency>
+    </dependencies>
+</project>
diff --git a/yang/yang-repo-spi/src/main/java/module-info.java b/yang/yang-repo-spi/src/main/java/module-info.java
new file mode 100644 (file)
index 0000000..48e4905
--- /dev/null
@@ -0,0 +1,25 @@
+/*
+ * Copyright (c) 2021 PANTHEON.tech, s.r.o. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+module org.opendaylight.yangtools.yang.repo.spi {
+    exports org.opendaylight.yangtools.yang.model.repo.spi;
+
+    requires transitive java.xml;
+    requires transitive org.opendaylight.yangtools.yang.model.api;
+    requires transitive org.opendaylight.yangtools.yang.repo.api;
+
+    requires com.google.common;
+    requires org.opendaylight.yangtools.concepts;
+    requires org.opendaylight.yangtools.yang.common;
+    requires org.opendaylight.yangtools.util;
+    requires org.slf4j;
+
+    // Annotations
+    requires static transitive org.eclipse.jdt.annotation;
+//    requires static org.checkerframework.checker.qual;
+    //    requires static com.github.spotbugs.annotations;
+}