From 3be716f16ef1a975449038df66bb239f789d9a54 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Fri, 22 Jul 2016 11:27:35 +0200 Subject: [PATCH 1/1] Add better messages to getTypeWithSchema() This will aid debugging issues. Change-Id: Ic1562e092a073ee2066172efbebd2ca9a64fa9b4 Signed-off-by: Robert Varga --- .../generator/util/BindingRuntimeContext.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/util/BindingRuntimeContext.java b/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/util/BindingRuntimeContext.java index 7fbdcd6149..d1335f945a 100644 --- a/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/util/BindingRuntimeContext.java +++ b/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/util/BindingRuntimeContext.java @@ -287,10 +287,12 @@ public class BindingRuntimeContext implements Immutable { private Entry getTypeWithSchema(final Type referencedType) { final Object schema = typeToDefiningSchema.get(referencedType); + Preconditions.checkNotNull(schema, "Failed to find schema for type %s", referencedType); + final Type definedType = typeToDefiningSchema.inverse().get(schema); - Preconditions.checkNotNull(schema); - Preconditions.checkNotNull(definedType); - if(definedType instanceof GeneratedTypeBuilder) { + Preconditions.checkNotNull(definedType, "Failed to find defined type for %s schema %s", referencedType, schema); + + if (definedType instanceof GeneratedTypeBuilder) { return new SimpleEntry<>(((GeneratedTypeBuilder) definedType).toInstance(), schema); } Preconditions.checkArgument(definedType instanceof GeneratedType,"Type {} is not GeneratedType", referencedType); @@ -410,7 +412,7 @@ public class BindingRuntimeContext implements Immutable { } private static Type referencedType(final Type type) { - if(type instanceof ReferencedTypeImpl) { + if (type instanceof ReferencedTypeImpl) { return type; } return new ReferencedTypeImpl(type.getPackageName(), type.getName()); @@ -419,10 +421,10 @@ public class BindingRuntimeContext implements Immutable { private static Set collectAllContainerTypes(final GeneratedType type, final Set collection) { for (final MethodSignature definition : type.getMethodDefinitions()) { Type childType = definition.getReturnType(); - if(childType instanceof ParameterizedType) { + if (childType instanceof ParameterizedType) { childType = ((ParameterizedType) childType).getActualTypeArguments()[0]; } - if(childType instanceof GeneratedType || childType instanceof GeneratedTypeBuilder) { + if (childType instanceof GeneratedType || childType instanceof GeneratedTypeBuilder) { collection.add(referencedType(childType)); } } -- 2.36.6