Modernize IdentityCodecUtil a bit 71/102871/1
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 25 Oct 2022 13:20:12 +0000 (15:20 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 25 Oct 2022 13:20:12 +0000 (15:20 +0200)
Use local variable type inference and Optional.orElseThrow().

Change-Id: I4de98926da01f6d4f1209b676c2315501e8da5b7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/codec/IdentityCodecUtil.java

index 6ddd2f8a6278cd807abe9c081fb29a2f5aa8a530..d3361eb17a4f1d9f86c4357f57d961ace1f0c755 100644 (file)
@@ -7,17 +7,12 @@
  */
 package org.opendaylight.yangtools.yang.data.util.codec;
 
-import static com.google.common.base.Preconditions.checkState;
-
 import com.google.common.annotations.Beta;
-import java.util.Optional;
 import java.util.function.Function;
 import org.eclipse.jdt.annotation.NonNullByDefault;
-import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
-import org.opendaylight.yangtools.yang.model.api.Module;
 
 /**
  * Utility methods for implementing string-to-identity codecs.
@@ -43,11 +38,11 @@ public final class IdentityCodecUtil {
      */
     public static IdentitySchemaNode parseIdentity(final String value, final EffectiveModelContext schemaContext,
             final Function<String, QNameModule> prefixToModule) {
-        final QName qname = QNameCodecUtil.decodeQName(value, prefixToModule);
-        final Optional<Module> optModule = schemaContext.findModule(qname.getModule());
-        checkState(optModule.isPresent(), "Parsed QName %s refers to a non-existent module", qname);
+        final var qname = QNameCodecUtil.decodeQName(value, prefixToModule);
+        final var module = schemaContext.findModule(qname.getModule())
+            .orElseThrow(() -> new IllegalStateException("Parsed QName " + qname + " refers to a non-existent module"));
 
-        for (IdentitySchemaNode identity : optModule.get().getIdentities()) {
+        for (var identity : module.getIdentities()) {
             if (qname.equals(identity.getQName())) {
                 return identity;
             }