X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=binding%2Fmdsal-binding-generator%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fgenerator%2Fimpl%2Freactor%2FIdentityGenerator.java;h=ccd88efc57a6b49cc249e194e50f0fc76e315edf;hb=0ee55d1f9da11dd03ff05fc67d10cbcbfe63fd2c;hp=e5fc913e726ecafd17000914ead935643879a740;hpb=2037a8c6e17b521c9ccf1ee3a1a965fa96cade3d;p=mdsal.git diff --git a/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/IdentityGenerator.java b/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/IdentityGenerator.java index e5fc913e72..ccd88efc57 100644 --- a/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/IdentityGenerator.java +++ b/binding/mdsal-binding-generator/src/main/java/org/opendaylight/mdsal/binding/generator/impl/reactor/IdentityGenerator.java @@ -7,12 +7,14 @@ */ package org.opendaylight.mdsal.binding.generator.impl.reactor; +import static com.google.common.base.Verify.verify; import static org.opendaylight.mdsal.binding.model.ri.BindingTypes.BASE_IDENTITY; import java.util.List; import java.util.stream.Collectors; import org.opendaylight.mdsal.binding.generator.impl.rt.DefaultIdentityRuntimeType; import org.opendaylight.mdsal.binding.model.api.GeneratedType; +import org.opendaylight.mdsal.binding.model.api.Type; import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedTypeBuilder; import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedTypeBuilderBase; import org.opendaylight.mdsal.binding.runtime.api.IdentityRuntimeType; @@ -71,13 +73,21 @@ public final class IdentityGenerator } @Override - IdentityRuntimeType createRuntimeType() { - return generatedType().map(type -> new DefaultIdentityRuntimeType(type, statement())).orElse(null); + GeneratedType runtimeJavaType() { + return generatedType().orElse(null); } @Override - IdentityRuntimeType rebaseRuntimeType(final IdentityRuntimeType type, final IdentityEffectiveStatement statement) { - return new DefaultIdentityRuntimeType(type.javaType(), statement); + IdentityRuntimeType createExternalRuntimeType(final Type type) { + verify(type instanceof GeneratedType, "Unexpected type %s", type); + return new DefaultIdentityRuntimeType((GeneratedType) type, statement()); + } + + @Override + IdentityRuntimeType createInternalRuntimeType(final ChildLookup lookup, final IdentityEffectiveStatement statement, + final Type type) { + // 'identity' statements are not part of schema tree and hence should never an internal reference + throw new UnsupportedOperationException("Should never be called"); } @Override