X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding%2Fmdsal-binding-generator%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fgenerator%2Fimpl%2Freactor%2FListGenerator.java;h=07b2c5382fa63725ad7e37894a806000bcf30c32;hb=refs%2Fchanges%2F22%2F100122%2F11;hp=9bc44ba413f641c280165fcfa3f2a9aa49595bbc;hpb=2037a8c6e17b521c9ccf1ee3a1a965fa96cade3d;p=mdsal.git diff --git a/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/ListGenerator.java b/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/ListGenerator.java index 9bc44ba413..07b2c5382f 100644 --- a/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/ListGenerator.java +++ b/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/ListGenerator.java @@ -20,6 +20,7 @@ import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedTypeBuilde import org.opendaylight.mdsal.binding.model.api.type.builder.MethodSignatureBuilder; import org.opendaylight.mdsal.binding.model.ri.Types; import org.opendaylight.mdsal.binding.runtime.api.AugmentRuntimeType; +import org.opendaylight.mdsal.binding.runtime.api.KeyRuntimeType; import org.opendaylight.mdsal.binding.runtime.api.ListRuntimeType; import org.opendaylight.mdsal.binding.runtime.api.RuntimeType; import org.opendaylight.mdsal.binding.spec.naming.BindingMapping; @@ -80,11 +81,9 @@ final class ListGenerator extends CompositeSchemaTreeGenerator children, final List augments) { - return new DefaultListRuntimeType(type, statement, children, augments, - keyGen != null ? keyGen.runtimeType().orElseThrow() : null); + private @Nullable KeyRuntimeType keyRuntimeType() { + final var gen = keyGen; + return gen != null ? gen.runtimeType().orElseThrow() : null; } @Override @@ -111,4 +110,17 @@ final class ListGenerator extends CompositeSchemaTreeGenerator createBuilder( + final ListEffectiveStatement statement) { + return new CompositeRuntimeTypeBuilder<>(statement) { + @Override + ListRuntimeType build(final GeneratedType type, final ListEffectiveStatement statement, + final List children, final List augments) { + // FIXME: the key here is not rebased correctly :( + return new DefaultListRuntimeType(type, statement, children, augments, keyRuntimeType()); + } + }; + } }