From: Robert Varga Date: Mon, 21 Feb 2022 17:04:44 +0000 (+0100) Subject: Mark DataContainerCodecPrototype.isChoice() for removal X-Git-Tag: v9.0.0~39 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=mdsal.git;a=commitdiff_plain;h=8b1e58079a50002c89bf6b5f8cc6f585f23abead Mark DataContainerCodecPrototype.isChoice() for removal This is an internal remnant from when we did not have a ChoiceIn intermediate class. Mark it for removal. JIRA: MDSAL-696 Change-Id: I50217ccfd6ff4c6c7db58e1085fa253779732e8f Signed-off-by: Robert Varga --- diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataContainerCodecPrototype.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataContainerCodecPrototype.java index a88869e16f..542238eb0f 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataContainerCodecPrototype.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataContainerCodecPrototype.java @@ -247,6 +247,7 @@ final class DataContainerCodecPrototype implements NodeCon throw new IllegalArgumentException("Unsupported type " + getBindingClass() + " " + schema); } + // FIXME: eliminate with above createInstance() item boolean isChoice() { return schema instanceof ChoiceSchemaNode; } diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataObjectCodecContext.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataObjectCodecContext.java index ff05f546b1..fd1c2eea8b 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataObjectCodecContext.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/DataObjectCodecContext.java @@ -126,9 +126,13 @@ public abstract class DataObjectCodecContext childProto = loadChildPrototype(retClass); - tmpDataObjects.put(method, childProto.getBindingClass()); - byStreamClassBuilder.put(childProto.getBindingClass(), childProto); + final Class childClass = childProto.getBindingClass(); + tmpDataObjects.put(method, childClass); + byStreamClassBuilder.put(childClass, childProto); byYangBuilder.put(childProto.getYangArg(), childProto); + + // FIXME: It really feels like we should be specializing DataContainerCodecPrototype so as to ditch + // createInstance() and then we could do an instanceof check instead. if (childProto.isChoice()) { final ChoiceNodeCodecContext choice = (ChoiceNodeCodecContext) childProto.get(); for (final Class cazeChild : choice.getCaseChildrenClasses()) {