From 588b177bd41459cdfe12af80e1bdd76545e13aed Mon Sep 17 00:00:00 2001 From: Tony Tkacik Date: Mon, 25 Aug 2014 15:08:10 +0200 Subject: [PATCH] Fixed breakage of uses generation in Binding Change-Id: I0913de13f426906ca8fd2f5e131b022444194648 Signed-off-by: Tony Tkacik --- .../generator/impl/BindingGeneratorImpl.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/BindingGeneratorImpl.java b/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/BindingGeneratorImpl.java index 87f15ab128..befe3e88e0 100644 --- a/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/BindingGeneratorImpl.java +++ b/code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/BindingGeneratorImpl.java @@ -311,17 +311,16 @@ public class BindingGeneratorImpl implements BindingGenerator { } final String packageName = packageNameForGeneratedType(basePackageName, node.getPath()); final GeneratedTypeBuilder genType = addDefaultInterfaceDefinition(packageName, node, childOf); - if (node instanceof DataNodeContainer) { - genCtx.get(module).addChildNodeType(node, genType); - groupingsToGenTypes(module, ((DataNodeContainer) node).getGroupings()); - processUsesAugments((DataNodeContainer) node, module); - addImplementedInterfaceFromUses((DataNodeContainer) node, genType); - } genType.addComment(node.getDescription()); genType.setDescription(createDescription(node, genType.getFullyQualifiedName())); genType.setModuleName(module.getName()); genType.setReference(node.getReference()); genType.setSchemaPath(node.getPath().getPathFromRoot()); + if (node instanceof DataNodeContainer) { + genCtx.get(module).addChildNodeType(node, genType); + groupingsToGenTypes(module, ((DataNodeContainer) node).getGroupings()); + processUsesAugments((DataNodeContainer) node, module); + } return genType; } @@ -562,8 +561,6 @@ public class BindingGeneratorImpl implements BindingGenerator { genCtx.get(module).addChildNodeType(notification, notificationInterface); // Notification object - groupingsToGenTypes(module, notification.getGroupings()); - addImplementedInterfaceFromUses(notification, notificationInterface); resolveDataSchemaNodes(module, basePackageName, notificationInterface, notificationInterface, notification.getChildNodes()); @@ -708,10 +705,9 @@ public class BindingGeneratorImpl implements BindingGenerator { private void groupingToGenType(final String basePackageName, final GroupingDefinition grouping, final Module module) { final String packageName = packageNameForGeneratedType(basePackageName, grouping.getPath()); final GeneratedTypeBuilder genType = addDefaultInterfaceDefinition(packageName, grouping); - groupingsToGenTypes(module, grouping.getGroupings()); - addImplementedInterfaceFromUses(grouping, genType); genCtx.get(module).addGroupingType(grouping.getPath(), genType); resolveDataSchemaNodes(module, basePackageName, genType, genType, grouping.getChildNodes()); + groupingsToGenTypes(module, grouping.getGroupings()); processUsesAugments(grouping, module); } @@ -1209,7 +1205,6 @@ public class BindingGeneratorImpl implements BindingGenerator { if (caseNode != null && !caseNode.isAddedByUses() && !caseNode.isAugmenting()) { final String packageName = packageNameForGeneratedType(basePackageName, caseNode.getPath()); final GeneratedTypeBuilder caseTypeBuilder = addDefaultInterfaceDefinition(packageName, caseNode); - addImplementedInterfaceFromUses(caseNode, caseTypeBuilder); caseTypeBuilder.addImplementsType(refChoiceType); genCtx.get(module).addCaseType(caseNode.getPath(), caseTypeBuilder); genCtx.get(module).addChoiceToCaseMapping(refChoiceType, caseTypeBuilder, caseNode); @@ -1644,6 +1639,10 @@ public class BindingGeneratorImpl implements BindingGenerator { it.addImplementsType(augmentable(it)); } + if (schemaNode instanceof DataNodeContainer) { + addImplementedInterfaceFromUses((DataNodeContainer) schemaNode, it); + } + return it; } -- 2.36.6