From cd8a14faeeb69cdab7350e37e5aeb625a0190024 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 20 Jun 2023 11:46:01 +0200 Subject: [PATCH] Fix BindingToNormalizedStreamWriter.enter() We have a blind cast which does not handle augmentations' children. Fix the cast to work for augmentations as well. JIRA: MDSAL-820 Change-Id: Ib32a65e475d5d786bcc0d353f5fe044c147e4c07 Signed-off-by: Robert Varga --- .../binding/dom/codec/impl/BindingToNormalizedStreamWriter.java | 2 +- .../binding/dom/codec/impl/CachingNormalizedNodeSerializer.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingToNormalizedStreamWriter.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingToNormalizedStreamWriter.java index 4bee0d533b..598241165f 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingToNormalizedStreamWriter.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/BindingToNormalizedStreamWriter.java @@ -82,7 +82,7 @@ final class BindingToNormalizedStreamWriter implements AnydataBindingStreamWrite private T enter(final String localName, final Class identifier) { final var current = current(); - final var next = ((DataObjectCodecContext) current).getLeafChild(localName); + final var next = ((AbstractDataObjectCodecContext) current).getLeafChild(localName); schema.push(next); return identifier.cast(next.getDomPathArgument()); } diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/CachingNormalizedNodeSerializer.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/CachingNormalizedNodeSerializer.java index 9677000d53..7621f6f401 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/CachingNormalizedNodeSerializer.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/CachingNormalizedNodeSerializer.java @@ -75,7 +75,7 @@ final class CachingNormalizedNodeSerializer extends ForwardingBindingStreamEvent // They are immutable and hence we can safely wrap them in LeafNodes and reuse them, if directed to do so. final var type = typed.getClass(); if (cacheHolder.isCached(type)) { - final var context = ((DataObjectCodecContext) delegate.current()).getLeafChild(localName); + final var context = ((AbstractDataObjectCodecContext) delegate.current()).getLeafChild(localName); if (context instanceof LeafNodeCodecContext.OfTypeObject typeContext) { final var cache = cacheHolder.getCachingSerializer(typeContext); if (cache != null) { -- 2.36.6