X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-model-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fmodel%2Fapi%2Fstmt%2FContainerStatement.java;h=9c43fbfd9980a0f1fd9b768ea1da5ebb65b84ccb;hb=add05f07912c3070a8bef551d7673befcb4264f2;hp=d16aa23d88abffc6f7f9547a12c694981e6711c8;hpb=ed7f97485553de811698c692054cba027feded1f;p=yangtools.git diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ContainerStatement.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ContainerStatement.java index d16aa23d88..9c43fbfd99 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ContainerStatement.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/ContainerStatement.java @@ -7,14 +7,23 @@ */ package org.opendaylight.yangtools.yang.model.api.stmt; -import java.util.Collection; -import javax.annotation.Nullable; +import java.util.Optional; +import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.model.api.YangStmtMapping; +import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; -public interface ContainerStatement extends DataDefinitionStatement, DataDefinitionContainer.WithReusableDefinitions { +public interface ContainerStatement extends DataDefinitionStatement, + DataDefinitionAwareDeclaredStatement.WithReusableDefinitions, + ActionStatementAwareDeclaredStatement, ConfigStatementAwareDeclaredStatement, + NotificationStatementAwareDeclaredStatement, MustStatementAwareDeclaredStatement { + @Override + default StatementDefinition statementDefinition() { + return YangStmtMapping.CONTAINER; + } - @Nullable Collection getMusts(); - - @Nullable PresenceStatement getPresence(); - - @Nullable ConfigStatement getConfig(); + default @Nullable PresenceStatement getPresence() { + final Optional opt = findFirstDeclaredSubstatement(PresenceStatement.class); + return opt.isPresent() ? opt.get() : null; + } }