Mark ModuleImport technical debt 39/64839/12
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 27 Oct 2017 23:34:52 +0000 (01:34 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Thu, 2 Nov 2017 13:58:50 +0000 (14:58 +0100)
ModuleImport should not be part of effective world because it's sole
purpose is to provide String->QNameModule mapping.

Change-Id: I9cabc16b7c711edffad8ba9c9306f1fe0c5c81ec
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/ModuleImport.java

index b317038e2ee4f659c07b1ecafa1dd021708db232..2f58eaa64ae7b74159cd0c642a793c45d7374a1b 100644 (file)
@@ -17,6 +17,10 @@ import org.opendaylight.yangtools.yang.common.Revision;
  * <p>
  * The import statement makes definitions from one module available inside another module or submodule.
  */
  * <p>
  * The import statement makes definitions from one module available inside another module or submodule.
  */
+// FIXME: 3.0.0 this class is a leak of the declared world into the effective one. In effective world, all nodes form
+//        a tree, which consists of multiple (mostly) QName-navigated namespaces. As such module imports contribute
+//        only a prefix/QNameModule mapping to the effective world and hence should be mapped that way:
+//        - Module exposes String->QNameModule mapping
 public interface ModuleImport extends DocumentedNode {
     /**
      * Returns the name of the module to import.
 public interface ModuleImport extends DocumentedNode {
     /**
      * Returns the name of the module to import.