*/
package org.opendaylight.yangtools.yang.parser.spi;
-import org.opendaylight.yangtools.yang.model.api.ModuleIdentifier;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.ModuleStatement;
+import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
+import org.opendaylight.yangtools.yang.parser.spi.meta.NamespaceBehaviour;
import org.opendaylight.yangtools.yang.parser.spi.meta.StatementNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
/**
- * namespace class for storing modules into Yang model storage keyed by {@link ModuleIdentifier}
+ * Module namespace. All modules known to the reactor are populated to this namespace. Each module is identified
+ * by a {@link SourceIdentifier}.
*/
public interface ModuleNamespace extends
- StatementNamespace<ModuleIdentifier, ModuleStatement, EffectiveStatement<String, ModuleStatement>> {
+ StatementNamespace<SourceIdentifier, ModuleStatement, EffectiveStatement<String, ModuleStatement>> {
+ NamespaceBehaviour<SourceIdentifier, StmtContext<?, ModuleStatement, EffectiveStatement<String, ModuleStatement>>,
+ @NonNull ModuleNamespace> BEHAVIOUR = NamespaceBehaviour.global(ModuleNamespace.class);
}