From bb50b3286bc197acce20694082c0f65a04a7ca2a Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Mon, 11 Apr 2022 16:29:53 +0200 Subject: [PATCH] Eliminate ValueTypeCodec.encapsulatedValueCodecFor() There are only two call sites in the same method, inline it and remove the unnecessary indirection through ValueTypeCodec -- which any reason for existence except binding IllegalArgumentCodec vtable. JIRA: MDSAL-704 Change-Id: I11cd0b4f08a1cb8dacd1f66fec9070102ba47889 Signed-off-by: Robert Varga --- .../mdsal/binding/dom/codec/impl/BindingCodecContext.java | 4 ++-- .../mdsal/binding/dom/codec/impl/ValueTypeCodec.java | 6 ------ 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingCodecContext.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingCodecContext.java index 57426e2e42..1d34844cfd 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingCodecContext.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingCodecContext.java @@ -443,9 +443,9 @@ public final class BindingCodecContext extends AbstractBindingNormalizedNodeSeri private IllegalArgumentCodec getCodecForBindingClass(final Class valueType, final TypeDefinition typeDef) { if (typeDef instanceof IdentityrefTypeDefinition) { - return ValueTypeCodec.encapsulatedValueCodecFor(valueType, typeDef, identityCodec); + return new CompositeValueCodec(SchemaUnawareCodec.of(valueType, typeDef), identityCodec); } else if (typeDef instanceof InstanceIdentifierTypeDefinition) { - return ValueTypeCodec.encapsulatedValueCodecFor(valueType, typeDef, instanceIdentifierCodec); + return new CompositeValueCodec(SchemaUnawareCodec.of(valueType, typeDef), instanceIdentifierCodec); } else if (typeDef instanceof UnionTypeDefinition) { final Callable unionLoader = UnionTypeCodec.loader(valueType, (UnionTypeDefinition) typeDef, this); diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/ValueTypeCodec.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/ValueTypeCodec.java index d9e3255027..45343e560f 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/ValueTypeCodec.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/ValueTypeCodec.java @@ -8,7 +8,6 @@ package org.opendaylight.mdsal.binding.dom.codec.impl; import org.opendaylight.yangtools.concepts.IllegalArgumentCodec; -import org.opendaylight.yangtools.yang.model.api.TypeDefinition; /** * Value codec, which serializes / deserializes values from DOM simple values. @@ -16,9 +15,4 @@ import org.opendaylight.yangtools.yang.model.api.TypeDefinition; // FIXME: IllegalArgumentCodec is perhaps not appropriate here due to null behavior abstract class ValueTypeCodec implements IllegalArgumentCodec { - @SuppressWarnings("rawtypes") - static ValueTypeCodec encapsulatedValueCodecFor(final Class typeClz, final TypeDefinition typeDef, - final IllegalArgumentCodec delegate) { - return new CompositeValueCodec(SchemaUnawareCodec.of(typeClz, typeDef), delegate); - } } -- 2.36.6