Remove ModuleHeaderGroup 98/102898/3
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 26 Oct 2022 15:51:05 +0000 (17:51 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 26 Oct 2022 17:14:23 +0000 (19:14 +0200)
This interface is extended only by ModuleStatement, which implements it
with default methods. Remove ModuleHeaderGroup and implement the methods
directly.

Change-Id: I08e412fd3287ea35e98f7da488fdbe35c730bbb9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ModuleHeaderGroup.java [deleted file]
model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ModuleStatement.java

diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ModuleHeaderGroup.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ModuleHeaderGroup.java
deleted file mode 100644 (file)
index dfb8eaf..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco Systems, Inc. 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
- */
-package org.opendaylight.yangtools.yang.model.api.stmt;
-
-import org.eclipse.jdt.annotation.NonNull;
-import org.eclipse.jdt.annotation.Nullable;
-
-public interface ModuleHeaderGroup {
-
-    @Nullable YangVersionStatement getYangVersion();
-
-    @NonNull NamespaceStatement getNamespace();
-
-    @NonNull PrefixStatement getPrefix();
-}
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();
     }
 }