From 04b051c15469a4d63caf3002c0d25b37a2263d1b Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Wed, 8 Sep 2021 11:29:05 +0200 Subject: [PATCH] Make EffectiveStatement.get() more friendly Return Optional instead of a ? extends V. Change-Id: Ia8570d796ae33d2d91396d621cb7dac7ca122049 Signed-off-by: Robert Varga --- .../yangtools/yang/model/api/meta/EffectiveStatement.java | 5 ++--- .../ri/stmt/impl/eff/TypedefEffectiveStatementImpl.java | 2 +- .../yang/model/spi/meta/AbstractEffectiveStatement.java | 2 +- .../parser/rfc7950/stmt/type/BuiltinEffectiveStatement.java | 6 +++--- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/meta/EffectiveStatement.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/meta/EffectiveStatement.java index fe8d8b2522..80ae61b961 100644 --- a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/meta/EffectiveStatement.java +++ b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/meta/EffectiveStatement.java @@ -42,9 +42,8 @@ public interface EffectiveStatement> extends M * @param identifier Identifier of element. * @return Value if present */ - //> V - > Optional get(@NonNull Class namespace, - @NonNull K identifier); + > @NonNull Optional get(@NonNull Class namespace, + @NonNull K identifier); /** * Returns all local values from supplied namespace. diff --git a/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/TypedefEffectiveStatementImpl.java b/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/TypedefEffectiveStatementImpl.java index b8957b3acc..fffda854ed 100644 --- a/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/TypedefEffectiveStatementImpl.java +++ b/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/TypedefEffectiveStatementImpl.java @@ -129,7 +129,7 @@ public final class TypedefEffectiveStatementImpl extends WithSubstatements> Optional get(final Class namespace, + public > Optional get(final Class namespace, final K identifier) { return TypedefEffectiveStatementImpl.this.get(namespace, identifier); } diff --git a/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractEffectiveStatement.java b/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractEffectiveStatement.java index 9aa1c80304..21c5c69da9 100644 --- a/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractEffectiveStatement.java +++ b/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractEffectiveStatement.java @@ -43,7 +43,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.TypedefEffectiveStatement; abstract class AbstractEffectiveStatement> extends AbstractModelStatement implements EffectiveStatement { @Override - public final > Optional get(final Class namespace, + public final > Optional get(final Class namespace, final K identifier) { return Optional.ofNullable(getAll(namespace).get(requireNonNull(identifier))); } diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BuiltinEffectiveStatement.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BuiltinEffectiveStatement.java index 3cb3911c86..1b2d135888 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BuiltinEffectiveStatement.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BuiltinEffectiveStatement.java @@ -59,15 +59,15 @@ enum BuiltinEffectiveStatement implements TypeEffectiveStatement } @Override - public final > Optional get(final Class namespace, + public final > Optional get(final Class namespace, final K identifier) { - // FIXME: 7.0.0: implement this + // FIXME: 8.0.0: implement this return Optional.empty(); } @Override public final > Map getAll(final Class namespace) { - // FIXME: 7.0.0: implement this + // FIXME: 8.0.0: implement this return ImmutableMap.of(); } -- 2.36.6