From: Robert Varga Date: Tue, 13 Jun 2023 10:48:19 +0000 (+0200) Subject: Seal IdentifiableItemCodec X-Git-Tag: v12.0.0~83 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=e2948b120b3e8302266a224143f63b1cbd1192bc;p=mdsal.git Seal IdentifiableItemCodec We have only two concrete subclasses, make sure the JVM knows that. Change-Id: Ic9121d08ce6ca6140918bac001132ba68681b32e Signed-off-by: Robert Varga --- diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/IdentifiableItemCodec.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/IdentifiableItemCodec.java index 54d244760a..008bb31807 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/IdentifiableItemCodec.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/IdentifiableItemCodec.java @@ -36,8 +36,7 @@ import org.slf4j.LoggerFactory; /** * Codec support for extracting the {@link Identifiable#key()} method return from a MapEntryNode. */ -// FIXME: sealed class when we have JDK17+ -abstract class IdentifiableItemCodec { +abstract sealed class IdentifiableItemCodec { private static final class SingleKey extends IdentifiableItemCodec { private static final MethodType CTOR_TYPE = MethodType.methodType(Identifier.class, Object.class); @@ -126,7 +125,7 @@ abstract class IdentifiableItemCodec { private final Class identifiable; private final QName qname; - IdentifiableItemCodec(final ListEffectiveStatement schema, final Class> keyClass, + private IdentifiableItemCodec(final ListEffectiveStatement schema, final Class> keyClass, final Class identifiable) { this.identifiable = requireNonNull(identifiable); qname = schema.argument();