X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding2%2Fmdsal-binding2-generator-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fjavav2%2Fgenerator%2Fimpl%2FAuxiliaryGenUtils.java;h=980ae343bbaeb6855e9bd418f23842d726ae34fd;hb=67b940dfbd66ab7e7ed10e98fe8f732409dced74;hp=4432555e945577263895d51e69709f7a52aa8fd6;hpb=398f49eb45b0ece88908031ea343da1f8e1ecc21;p=mdsal.git diff --git a/binding2/mdsal-binding2-generator-impl/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/impl/AuxiliaryGenUtils.java b/binding2/mdsal-binding2-generator-impl/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/impl/AuxiliaryGenUtils.java index 4432555e94..980ae343bb 100644 --- a/binding2/mdsal-binding2-generator-impl/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/impl/AuxiliaryGenUtils.java +++ b/binding2/mdsal-binding2-generator-impl/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/impl/AuxiliaryGenUtils.java @@ -23,6 +23,7 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.regex.Pattern; +import org.opendaylight.mdsal.binding.javav2.generator.context.ModuleContext; import org.opendaylight.mdsal.binding.javav2.generator.impl.txt.yangTemplateForModule; import org.opendaylight.mdsal.binding.javav2.generator.impl.txt.yangTemplateForNode; import org.opendaylight.mdsal.binding.javav2.generator.impl.txt.yangTemplateForNodes; @@ -350,9 +351,9 @@ final class AuxiliaryGenUtils { * enumTypeDef */ static EnumBuilder resolveInnerEnumFromTypeDefinition(final EnumTypeDefinition enumTypeDef, final QName enumName, - final Map genCtx, final GeneratedTypeBuilder typeBuilder, final Module module) { + final Map genCtx, final GeneratedTypeBuilder typeBuilder, final Module module) { if (enumTypeDef != null && typeBuilder != null && enumTypeDef.getQName().getLocalName() != null) { - final EnumBuilder enumBuilder = typeBuilder.addEnumeration(enumName.getLocalName()); + final EnumBuilder enumBuilder = typeBuilder.addEnumeration(enumName.getLocalName(), genCtx.get(module)); final String enumTypedefDescription = encodeAngleBrackets(enumTypeDef.getDescription()); enumBuilder.setDescription(enumTypedefDescription); enumBuilder.updateEnumPairsFromEnumTypeDef(enumTypeDef); @@ -387,7 +388,7 @@ final class AuxiliaryGenUtils { */ static GeneratedTOBuilder addTOToTypeBuilder(final TypeDefinition typeDef, final GeneratedTypeBuilder typeBuilder, final DataSchemaNode leaf, final Module parentModule, final TypeProvider typeProvider, - final SchemaContext schemaContext) { + final SchemaContext schemaContext, ModuleContext context) { final String classNameFromLeaf = leaf.getQName().getLocalName(); GeneratedTOBuilder genTOBuilder = null; final String packageName = typeBuilder.getFullyQualifiedName(); @@ -395,10 +396,10 @@ final class AuxiliaryGenUtils { genTOBuilder = ((TypeProviderImpl) typeProvider) .provideGeneratedTOBuilderForUnionTypeDef(packageName, ((UnionTypeDefinition) typeDef), classNameFromLeaf, leaf, schemaContext, - ((TypeProviderImpl) typeProvider).getGenTypeDefsContextMap()); + ((TypeProviderImpl) typeProvider).getGenTypeDefsContextMap(), context); } else if (typeDef instanceof BitsTypeDefinition) { genTOBuilder = (((TypeProviderImpl) typeProvider)).provideGeneratedTOBuilderForBitsTypeDefinition( - packageName, typeDef, classNameFromLeaf, parentModule.getName()); + packageName, typeDef, classNameFromLeaf, parentModule.getName(), context); } if (genTOBuilder != null) { typeBuilder.addEnclosingTransferObject(genTOBuilder); @@ -443,26 +444,28 @@ final class AuxiliaryGenUtils { * list or empty TO builder if list is null or list of * key definitions is null or empty. */ - static GeneratedTOBuilder resolveListKeyTOBuilder(final String packageName, final ListSchemaNode list) { + static GeneratedTOBuilder resolveListKeyTOBuilder(final String packageName, final ListSchemaNode list, + ModuleContext context) { GeneratedTOBuilder genTOBuilder = null; if ((list.getKeyDefinition() != null) && (!list.getKeyDefinition().isEmpty())) { // underscore used as separator for distinction of class name parts final String genTOName = new StringBuilder(list.getQName().getLocalName()).append('_').append(BindingNamespaceType.Key) .toString(); - genTOBuilder = new GeneratedTOBuilderImpl(packageName, genTOName); + genTOBuilder = new GeneratedTOBuilderImpl(packageName, genTOName, context); } return genTOBuilder; } - static GeneratedTypeBuilder resolveListKeyTypeBuilder(final String packageName, final ListSchemaNode list) { + static GeneratedTypeBuilder resolveListKeyTypeBuilder(final String packageName, final ListSchemaNode list, + ModuleContext context) { GeneratedTypeBuilder genTypeBuilder = null; if ((list.getKeyDefinition() != null) && (!list.getKeyDefinition().isEmpty())) { // underscore used as separator for distinction of class name parts final String genTOName = new StringBuilder(list.getQName().getLocalName()).append('_').append(BindingNamespaceType.Key) .toString(); - genTypeBuilder = new GeneratedTypeBuilderImpl(packageName, genTOName); + genTypeBuilder = new GeneratedTypeBuilderImpl(packageName, genTOName, context); } return genTypeBuilder; } @@ -497,10 +500,13 @@ final class AuxiliaryGenUtils { final String leafName = leaf.getQName().getLocalName(); final String leafGetterName; - StringBuilder sb = new StringBuilder(nodeName) - .append('_') - .append(leafName); - leafGetterName = sb.toString(); + if ("key".equals(leafName.toLowerCase())) { + StringBuilder sb = new StringBuilder(leafName) + .append('_').append("RESERVED_WORD"); + leafGetterName = sb.toString(); + } else { + leafGetterName = leafName; + } final String leafDesc = encodeAngleBrackets(leaf.getDescription()); final GeneratedPropertyBuilder propBuilder =