if ("union".equals(typeName)) {
List<String> typePath = new ArrayList<String>(actualPath);
typePath.add(typeName);
-
SchemaPath p = createActualSchemaPath(typePath, namespace,
revision, yangModelPrefix);
UnionTypeBuilder unionBuilder = moduleBuilder.addUnionType(
line);
} else {
type = parseTypeBody(typeName, typeBody, actualPath,
- namespace, revision, yangModelPrefix);
+ namespace, revision, yangModelPrefix,
+ moduleBuilder.getActualNode());
moduleBuilder.setType(type, actualPath);
}
}
} else {
- type = parseUnknownTypeBody(typeQName, typeBody);
+ type = parseUnknownTypeBody(typeQName, typeBody, actualPath,
+ namespace, revision, yangModelPrefix,
+ moduleBuilder.getActualNode(), moduleBuilder);
// mark parent node of this type statement as dirty
moduleBuilder.addDirtyNode(actualPath);
moduleBuilder.setType(type, actualPath);
GroupingBuilder builder = moduleBuilder.addGrouping(groupQName,
actualPath, ctx.getStart().getLine());
moduleBuilder.enterNode(builder);
- updatePath("grouping");
updatePath(groupName);
+ builder.setPath(createActualSchemaPath(actualPath, namespace, revision,
+ yangModelPrefix));
parseSchemaNodeArgs(ctx, builder);
}
@Override
public void exitGrouping_stmt(YangParser.Grouping_stmtContext ctx) {
String actContainer = actualPath.pop();
- actContainer += "-" + actualPath.pop();
logger.debug("exiting " + actContainer);
moduleBuilder.exitNode();
}
final String groupingPathStr = stringFromNode(ctx);
UsesNodeBuilder builder = moduleBuilder.addUsesNode(groupingPathStr,
actualPath, ctx.getStart().getLine());
+
moduleBuilder.enterNode(builder);
updatePath(groupingPathStr);
+ builder.setPath(createActualSchemaPath(actualPath, namespace, revision,
+ yangModelPrefix));
}
@Override