+ if (leafName !== null) {\r
+ var Type returnType = null;
+ val TypeDefinition<?> typeDef = leaf.type;\r
+ if (typeDef instanceof UnionTypeDefinition) {\r
+ // GeneratedType for this type definition should be already created\r
+ var qname = typeDef.QName\r
+ var Module unionModule = null\r
+ if (qname.prefix == null || qname.prefix.empty) {\r
+ unionModule = module\r
+ } else {\r
+ unionModule = findModuleFromImports(module.imports, qname.prefix)\r
+ }\r
+ val ModuleContext mc = genCtx.get(unionModule)\r
+ returnType = mc.typedefs.get(typeDef.path)\r
+ } else {\r
+ returnType = typeProvider.javaTypeForSchemaDefinitionType(typeDef, leaf);\r
+ }