Remove ModuleHeaderGroup
[yangtools.git] / model / yang-model-api / src / main / java / org / opendaylight / yangtools / yang / model / api / stmt / ModuleStatement.java
index e4be43dec33eb62b73eeed133beb34582c2a18a9..76e9103f3c2fe5e74a992ad4c6eaa69c299fd6f3 100644 (file)
@@ -7,7 +7,8 @@
  */
 package org.opendaylight.yangtools.yang.model.api.stmt;
 
-import java.util.Optional;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
@@ -15,26 +16,23 @@ import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
 /**
  * Declared representation of a {@code module} statement.
  */
-public interface ModuleStatement extends MetaDeclaredStatement<Unqualified>, ModuleHeaderGroup,
+public interface ModuleStatement extends MetaDeclaredStatement<Unqualified>,
         LinkageDeclaredStatement, RevisionAwareDeclaredStatement, BodyDeclaredStatement {
     @Override
     default StatementDefinition statementDefinition() {
         return YangStmtMapping.MODULE;
     }
 
-    @Override
-    default YangVersionStatement getYangVersion() {
-        final Optional<YangVersionStatement> opt = findFirstDeclaredSubstatement(YangVersionStatement.class);
+    default @Nullable YangVersionStatement getYangVersion() {
+        final var opt = findFirstDeclaredSubstatement(YangVersionStatement.class);
         return opt.isPresent() ? opt.orElseThrow() : null;
     }
 
-    @Override
-    default NamespaceStatement getNamespace() {
+    default @NonNull NamespaceStatement getNamespace() {
         return findFirstDeclaredSubstatement(NamespaceStatement.class).orElseThrow();
     }
 
-    @Override
-    default PrefixStatement getPrefix() {
+    default @NonNull PrefixStatement getPrefix() {
         return findFirstDeclaredSubstatement(PrefixStatement.class).orElseThrow();
     }
 }