From 5aeabb0af71886606ba50ebed518df881b1c684d Mon Sep 17 00:00:00 2001 From: Martin Vitez Date: Mon, 2 Sep 2013 16:38:59 +0200 Subject: [PATCH] Added more javadocs. Removed unused methods from UsesNodeBuilder. Signed-off-by: Martin Vitez --- .../parser/builder/api/UsesNodeBuilder.java | 144 ++++++++++++++++-- .../parser/builder/impl/ModuleBuilder.java | 3 - .../builder/impl/UsesNodeBuilderImpl.java | 42 +---- .../yang/parser/impl/YangParserImpl.java | 6 +- .../yangtools/yang/parser/util/CopyUtils.java | 6 +- .../yang/parser/util/GroupingUtils.java | 82 +++++++--- .../yang/parser/util/ParserUtils.java | 23 ++- 7 files changed, 228 insertions(+), 78 deletions(-) diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/api/UsesNodeBuilder.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/api/UsesNodeBuilder.java index a861c45f62..0ead002946 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/api/UsesNodeBuilder.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/api/UsesNodeBuilder.java @@ -21,62 +21,186 @@ import org.opendaylight.yangtools.yang.parser.util.RefineHolder; */ public interface UsesNodeBuilder extends GroupingMember, Builder { + /** + * Get parent of this uses node. Since uses can be defined only under on of + * module, container, list, case, grouping, input, output, notification or + * augment, return type is DataNodeContainerBuilder. + */ DataNodeContainerBuilder getParent(); - String getGroupingName(); - + /** + * Get grouping path as string. + * + * @return grouping path as String + */ + String getGroupingPathAsString(); + + /** + * Get grouping path. + * + * @return grouping path as SchemaPath + */ SchemaPath getGroupingPath(); + /** + * Get grouping definition. + * + * @return GroupingDefinition if present, null otherwise + */ GroupingDefinition getGroupingDefinition(); + /** + * Set grouping definition. + * + * @param groupingDefinition + * GroupingDefinition object + */ void setGroupingDefinition(GroupingDefinition groupingDefinition); + /** + * Get grouping builder. + * + * @return GroupingBuilder if present, null otherwise + */ GroupingBuilder getGroupingBuilder(); + /** + * Set grouping builder. + * + * @param grouping + * GroupingBuilder object + */ void setGrouping(GroupingBuilder grouping); + /** + * Get augmentations defined in this uses node. + * + * @return set of augmentations defined in this node + */ Set getAugmentations(); + /** + * Add augment builder. + * + * @param builder + * new builder of augment statement + */ void addAugment(AugmentationSchemaBuilder builder); - boolean isAugmenting(); - - void setAugmenting(boolean augmenting); - + /** + * Get refine statements. + * + * @return list of RefineHolder objects + */ List getRefines(); + /** + * Get refined nodes. + * + * @return List of refined SchemaNodeBuilder objects + */ List getRefineNodes(); + /** + * Add refine statement. + * + * @param refine + * new RefineHolder object + */ void addRefine(RefineHolder refine); + /** + * Add refine node. + * + * @param refineNode + * refined DataSchemaNodeBuilder object + */ void addRefineNode(DataSchemaNodeBuilder refineNode); + /** + * Build new UsesNode object. + */ UsesNode build(); + /** + * Get child nodes defined in target grouping. + * + * @return set of DataSchemaNodeBuilder objects + */ Set getTargetChildren(); + /** + * Set reference to target grouping child nodes. + * + * @param targetChildren + * set of child nodes defined in target grouping + */ void setTargetChildren(Set targetChildren); + /** + * Get groupings defined in target grouping. + * + * @return set of GroupingBuilder objects + */ Set getTargetGroupings(); + /** + * Set reference to target grouping groupings. + * + * @param targetGroupings + * set of groupings defined in target grouping + */ void setTargetGroupings(Set targetGroupings); + /** + * Get type definitions defined in target grouping. + * + * @return set of typedefs defined in target grouping + */ Set getTargetTypedefs(); + /** + * Set reference to target grouping typedefs. + * + * @param targetTypedefs + * set of typedefs defined in target grouping + */ void setTargetTypedefs(Set targetTypedefs); + /** + * Get unknown nodes defined in target grouping. + * + * @return list of unknown nodes defined in target grouping + */ List getTargetUnknownNodes(); + /** + * Set reference to target grouping unknown nodes. + * + * @param targetUnknownNodes + * list of unknown nodes defined in target grouping. + */ void setTargetUnknownNodes(List targetUnknownNodes); + /** + * + * @return true, if this object was built based on another UsesNodeBuilder, + * false otherwise + */ boolean isCopy(); + /** + * + * @return true, if target grouping objects was loaded already, false + * otherwise + */ boolean isDataCollected(); + /** + * Set if target grouping objects was loaded already. + * + * @param dataCollected + */ void setDataCollected(boolean dataCollected); - boolean isParentUpdated(); - - void setParentUpdated(boolean parentUpdated); - } diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/ModuleBuilder.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/ModuleBuilder.java index 71ff0717b9..01ee714694 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/ModuleBuilder.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/ModuleBuilder.java @@ -465,9 +465,6 @@ public class ModuleBuilder extends AbstractDataNodeContainerBuilder { if (!(parent instanceof DataNodeContainerBuilder)) { throw new YangParseException(name, line, "Unresolved parent of uses '" + groupingPathStr + "'."); } - if (parent instanceof AugmentationSchemaBuilder) { - usesBuilder.setAugmenting(true); - } ((DataNodeContainerBuilder) parent).addUsesNode(usesBuilder); } allUsesNodes.add(usesBuilder); diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/UsesNodeBuilderImpl.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/UsesNodeBuilderImpl.java index 94416471bd..c1978e836c 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/UsesNodeBuilderImpl.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/UsesNodeBuilderImpl.java @@ -41,7 +41,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo private SchemaPath groupingPath; private GroupingDefinition groupingDefinition; private GroupingBuilder groupingBuilder; - private boolean augmenting; private boolean addedByUses; private final Set addedAugments = new HashSet(); private final List refineBuilders = new ArrayList(); @@ -54,7 +53,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo private final boolean isCopy; private boolean dataCollected; - private boolean parentUpdated; @Override public boolean isCopy() { @@ -71,16 +69,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo this.dataCollected = dataCollected; } - @Override - public boolean isParentUpdated() { - return parentUpdated; - } - - @Override - public void setParentUpdated(boolean parentUpdated) { - this.parentUpdated = parentUpdated; - } - public UsesNodeBuilderImpl(final String moduleName, final int line, final String groupingName) { super(moduleName, line); this.groupingName = groupingName; @@ -97,7 +85,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo public UsesNode build() { if (!isBuilt) { instance = new UsesNodeImpl(groupingPath); - instance.setAugmenting(augmenting); instance.setAddedByUses(addedByUses); // AUGMENTATIONS @@ -136,7 +123,8 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo @Override public void setParent(Builder parent) { if (!(parent instanceof DataNodeContainerBuilder)) { - throw new YangParseException(moduleName, line, "Unresolved parent of uses '" + groupingName + "'."); + throw new YangParseException(moduleName, line, + "Parent of 'uses' has to be instance of DataNodeContainerBuilder, but was: '" + parent + "'."); } this.parent = (DataNodeContainerBuilder) parent; } @@ -173,7 +161,7 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo } @Override - public String getGroupingName() { + public String getGroupingPathAsString() { return groupingName; } @@ -187,16 +175,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo addedAugments.add(augmentBuilder); } - @Override - public boolean isAugmenting() { - return augmenting; - } - - @Override - public void setAugmenting(final boolean augmenting) { - this.augmenting = augmenting; - } - @Override public boolean isAddedByUses() { return addedByUses; @@ -272,6 +250,8 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo final int prime = 31; int result = 1; result = prime * result + ((groupingName == null) ? 0 : groupingName.hashCode()); + result = prime * result + ((parent == null) ? 0 : parent.hashCode()); + result = prime * result + ((refines == null) ? 0 : refines.hashCode()); return result; } @@ -289,7 +269,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo return false; } else if (!groupingName.equals(other.groupingName)) return false; - if (parent == null) { if (other.parent != null) return false; @@ -311,7 +290,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo public final class UsesNodeImpl implements UsesNode { private final SchemaPath groupingPath; private Set augmentations = Collections.emptySet(); - private boolean augmenting; private boolean addedByUses; private Map refines = Collections.emptyMap(); private List unknownNodes = Collections.emptyList(); @@ -338,11 +316,7 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo @Override public boolean isAugmenting() { - return augmenting; - } - - private void setAugmenting(final boolean augmenting) { - this.augmenting = augmenting; + return false; } @Override @@ -385,7 +359,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo int result = 1; result = prime * result + ((groupingPath == null) ? 0 : groupingPath.hashCode()); result = prime * result + ((augmentations == null) ? 0 : augmentations.hashCode()); - result = prime * result + (augmenting ? 1231 : 1237); return result; } @@ -415,9 +388,6 @@ public final class UsesNodeBuilderImpl extends AbstractBuilder implements UsesNo } else if (!augmentations.equals(other.augmentations)) { return false; } - if (augmenting != other.augmenting) { - return false; - } return true; } diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/impl/YangParserImpl.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/impl/YangParserImpl.java index 7cd05c0534..48bca6716c 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/impl/YangParserImpl.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/impl/YangParserImpl.java @@ -669,7 +669,7 @@ public final class YangParserImpl implements YangModelParser { if (targetGroupingBuilder == null) { if (context == null) { throw new YangParseException(module.getName(), usesNode.getLine(), "Referenced grouping '" - + usesNode.getGroupingName() + "' not found."); + + usesNode.getGroupingPathAsString() + "' not found."); } else { GroupingDefinition targetGroupingDefinition = GroupingUtils.getTargetGroupingFromContext(usesNode, module, context); @@ -707,7 +707,7 @@ public final class YangParserImpl implements YangModelParser { } } - // new cycle is must because in collecting data process new uses could + // new loop is must because in collecting data process new uses could // be created final List allModulesUses = new ArrayList<>(); for (Map.Entry> entry : modules.entrySet()) { @@ -764,7 +764,7 @@ public final class YangParserImpl implements YangModelParser { } } - // new cycle is must because in collecting data process new uses could + // new loop is must because in collecting data process new uses could // be created final List allModulesUses = new ArrayList<>(); for (Map.Entry> entry : modules.entrySet()) { diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/CopyUtils.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/CopyUtils.java index 65c81b9e91..971ee8293a 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/CopyUtils.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/CopyUtils.java @@ -54,6 +54,9 @@ import org.opendaylight.yangtools.yang.parser.builder.impl.UsesNodeBuilderImpl; public class CopyUtils { + private CopyUtils() { + } + /** * Create copy of DataSchemaNodeBuilder with new parent. If updateQName is * true, qname of node will be corrected based on new parent. @@ -411,11 +414,10 @@ public class CopyUtils { static UsesNodeBuilder copyUses(UsesNodeBuilder old, Builder newParent) { UsesNodeBuilder copy = new UsesNodeBuilderImpl(newParent.getModuleName(), newParent.getLine(), - old.getGroupingName(), true); + old.getGroupingPathAsString(), true); copy.setParent(newParent); copy.setGroupingDefinition(old.getGroupingDefinition()); copy.setGrouping(old.getGroupingBuilder()); - copy.setAugmenting(old.isAugmenting()); copy.setAddedByUses(old.isAddedByUses()); copy.getAugmentations().addAll(old.getAugmentations()); copy.getRefineNodes().addAll(old.getRefineNodes()); diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingUtils.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingUtils.java index 76795548d2..058d42542e 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingUtils.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/GroupingUtils.java @@ -7,8 +7,6 @@ */ package org.opendaylight.yangtools.yang.parser.util; -import static org.opendaylight.yangtools.yang.parser.util.ParserUtils.createSchemaPath; - import java.net.URI; import java.util.ArrayList; import java.util.Date; @@ -45,6 +43,9 @@ import org.opendaylight.yangtools.yang.parser.builder.impl.UnknownSchemaNodeBuil public class GroupingUtils { + private GroupingUtils() { + } + /** * Search given modules for grouping by name defined in uses node. * @@ -59,7 +60,7 @@ public class GroupingUtils { public static GroupingBuilder getTargetGroupingFromModules(final UsesNodeBuilder usesBuilder, final Map> modules, final ModuleBuilder module) { final int line = usesBuilder.getLine(); - final String groupingString = usesBuilder.getGroupingName(); + final String groupingString = usesBuilder.getGroupingPathAsString(); String groupingPrefix; String groupingName; @@ -130,7 +131,7 @@ public class GroupingUtils { public static GroupingDefinition getTargetGroupingFromContext(final UsesNodeBuilder usesBuilder, final ModuleBuilder module, final SchemaContext context) { final int line = usesBuilder.getLine(); - String groupingString = usesBuilder.getGroupingName(); + String groupingString = usesBuilder.getGroupingPathAsString(); String groupingPrefix; String groupingName; @@ -221,15 +222,28 @@ public class GroupingUtils { } } + /** + * Read data defined in target grouping builder, make a copy and add them to + * uses node builder. + * + * @param usesNode + * uses node builder + */ public static void collectUsesData(UsesNodeBuilder usesNode) { - usesNode.setTargetChildren(collectUsesChildNodes(usesNode)); - usesNode.setTargetTypedefs(collectUsesTypedefs(usesNode)); - usesNode.setTargetGroupings(collectUsesGroupings(usesNode)); - usesNode.setTargetUnknownNodes(collectUsesUnknownNodes(usesNode)); + usesNode.setTargetChildren(collectTargetChildNodes(usesNode)); + usesNode.setTargetTypedefs(collectTargetTypedefs(usesNode)); + usesNode.setTargetGroupings(collectTargetGroupings(usesNode)); + usesNode.setTargetUnknownNodes(collectTargetUnknownNodes(usesNode)); usesNode.setDataCollected(true); } - private static Set collectUsesChildNodes(UsesNodeBuilder usesNode) { + /** + * Read child nodes defined in target grouping and make a copy of them. + * + * @param usesNode + * @return copy of child nodes defined in uses target grouping + */ + private static Set collectTargetChildNodes(UsesNodeBuilder usesNode) { final GroupingBuilder target = usesNode.getGroupingBuilder(); Set childNodes = target.getChildNodeBuilders(); Set copies = new HashSet<>(); @@ -237,12 +251,18 @@ public class GroupingUtils { copies.add(CopyUtils.copy(childNode, usesNode.getParent(), true)); } for (UsesNodeBuilder targetUses : target.getUsesNodes()) { - copies.addAll(collectUsesChildNodes(targetUses)); + copies.addAll(collectTargetChildNodes(targetUses)); } return copies; } - private static Set collectUsesTypedefs(UsesNodeBuilder usesNode) { + /** + * Read typedefs defined in target grouping and make a copy of them. + * + * @param usesNode + * @return copy of typedefs defined in uses target grouping + */ + private static Set collectTargetTypedefs(UsesNodeBuilder usesNode) { final GroupingBuilder target = usesNode.getGroupingBuilder(); Set typedefs = target.getTypeDefinitionBuilders(); Set copies = new HashSet<>(); @@ -250,12 +270,18 @@ public class GroupingUtils { copies.add(CopyUtils.copy(typedef, usesNode.getParent(), true)); } for (UsesNodeBuilder targetUses : target.getUsesNodes()) { - copies.addAll(collectUsesTypedefs(targetUses)); + copies.addAll(collectTargetTypedefs(targetUses)); } return copies; } - private static Set collectUsesGroupings(UsesNodeBuilder usesNode) { + /** + * Read groupings defined in target grouping and make a copy of them. + * + * @param usesNode + * @return copy of groupings defined in uses target grouping + */ + private static Set collectTargetGroupings(UsesNodeBuilder usesNode) { final GroupingBuilder target = usesNode.getGroupingBuilder(); Set groupings = target.getGroupingBuilders(); Set copies = new HashSet<>(); @@ -263,12 +289,18 @@ public class GroupingUtils { copies.add(CopyUtils.copy(grouping, usesNode.getParent(), true)); } for (UsesNodeBuilder targetUses : target.getUsesNodes()) { - copies.addAll(collectUsesGroupings(targetUses)); + copies.addAll(collectTargetGroupings(targetUses)); } return copies; } - private static List collectUsesUnknownNodes(UsesNodeBuilder usesNode) { + /** + * Read unknown nodes defined in target grouping and make a copy of them. + * + * @param usesNode + * @return copy of unknown nodes defined in uses target grouping + */ + private static List collectTargetUnknownNodes(UsesNodeBuilder usesNode) { final GroupingBuilder target = usesNode.getGroupingBuilder(); List unknownNodes = target.getUnknownNodeBuilders(); List copies = new ArrayList<>(); @@ -276,17 +308,24 @@ public class GroupingUtils { copies.add(CopyUtils.copy(unknownNode, usesNode.getParent(), true)); } for (UsesNodeBuilder targetUses : target.getUsesNodes()) { - copies.addAll(collectUsesUnknownNodes(targetUses)); + copies.addAll(collectTargetUnknownNodes(targetUses)); } return copies; } + /** + * Read data defined in target grouping definition, make a copy and add them + * to uses node builder. + * + * @param usesNode + * uses node builder + */ public static void collectUsesDataFromContext(UsesNodeBuilder usesNode) { DataNodeContainerBuilder parent = usesNode.getParent(); URI namespace = parent.getQName().getNamespace(); Date revision = parent.getQName().getRevision(); String prefix = parent.getQName().getPrefix(); - String moduleName = parent.getModuleName(); + String moduleName = parent.getModuleName(); int line = parent.getLine(); // child nodes @@ -317,7 +356,6 @@ public class GroupingUtils { ((GroupingMember) newChild).setAddedByUses(true); } - newChild.setPath(createSchemaPath(parent.getPath(), newQName)); newChildren.add(newChild); } } @@ -329,7 +367,6 @@ public class GroupingUtils { QName newQName = new QName(namespace, revision, prefix, g.getQName().getLocalName()); GroupingBuilder newGrouping = CopyUtils.createGrouping(g, newQName, moduleName, line); newGrouping.setAddedByUses(true); - newGrouping.setPath(createSchemaPath(parent.getPath(), newQName)); newGroupings.add(newGrouping); } usesNode.setTargetGroupings(newGroupings); @@ -340,7 +377,6 @@ public class GroupingUtils { QName newQName = new QName(namespace, revision, prefix, td.getQName().getLocalName()); TypeDefinitionBuilder newType = CopyUtils.createTypedef((ExtendedType) td, newQName, moduleName, line); newType.setAddedByUses(true); - newType.setPath(createSchemaPath(parent.getPath(), newQName)); newTypedefs.add(newType); } usesNode.setTargetTypedefs(newTypedefs); @@ -351,7 +387,6 @@ public class GroupingUtils { QName newQName = new QName(namespace, revision, prefix, un.getQName().getLocalName()); UnknownSchemaNodeBuilder newNode = CopyUtils.createUnknownSchemaNode(un, newQName, moduleName, line); newNode.setAddedByUses(true); - newNode.setPath(createSchemaPath(parent.getPath(), newQName)); newUnknownNodes.add(newNode); } usesNode.setTargetUnknownNodes(newUnknownNodes); @@ -359,6 +394,11 @@ public class GroupingUtils { usesNode.setDataCollected(true); } + /** + * Fix schema path of all nodes which were defined by this usesNode. + * + * @param usesNode + */ public static void fixUsesNodesPath(UsesNodeBuilder usesNode) { DataNodeContainerBuilder parent = usesNode.getParent(); diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/ParserUtils.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/ParserUtils.java index 8928786c8c..f368e837ed 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/ParserUtils.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/util/ParserUtils.java @@ -248,6 +248,14 @@ public final class ParserUtils { } } + /** + * Create new schema path of node based on parent node schema path. + * + * @param node + * node to correct + * @param parentSchemaPath + * schema path of node parent + */ static void correctNodePath(final SchemaNodeBuilder node, final SchemaPath parentSchemaPath) { // set correct path List targetNodePath = new ArrayList(parentSchemaPath.getPath()); @@ -279,7 +287,7 @@ public final class ParserUtils { * parent of first node in path * @param path * path to augment target - * @return true if augment process succeed, false otherwise + * @return true if augmentation process succeed, false otherwise */ public static boolean processAugmentation(final AugmentationSchemaBuilder augment, final Builder firstNodeParent, final List path) { @@ -344,6 +352,15 @@ public final class ParserUtils { return true; } + /** + * Find node with given name in uses target. + * + * @param localName + * name of node to find + * @param uses + * uses node which target grouping should be searched + * @return node with given name if found, null otherwise + */ private static DataSchemaNodeBuilder findNodeInUses(String localName, UsesNodeBuilder uses) { GroupingBuilder target = uses.getGroupingBuilder(); for (DataSchemaNodeBuilder child : target.getChildNodeBuilders()) { @@ -497,8 +514,8 @@ public final class ParserUtils { * @return builder of module where this node is defined */ public static ModuleBuilder getParentModule(Builder node) { - if(node instanceof ModuleBuilder) { - return (ModuleBuilder)node; + if (node instanceof ModuleBuilder) { + return (ModuleBuilder) node; } Builder parent = node.getParent(); -- 2.36.6