return null;
}
- val String targetSchemaNodeName = result.QName.localName;
var boolean fromUses = (result as DataSchemaNode).addedByUses
var Iterator<UsesNode> groupingUses = grouping.uses.iterator;
- while (fromUses) {
- if (groupingUses.hasNext()) {
- grouping = findNodeInSchemaContext(schemaContext, groupingUses.next().groupingPath.path) as GroupingDefinition;
- result = grouping.getDataChildByName(targetSchemaNodeName);
- fromUses = (result as DataSchemaNode).addedByUses;
- } else {
- throw new NullPointerException("Failed to generate code for augment in " + parentUsesNode);
+ while (groupingUses.hasNext && fromUses) {
+ result = findOriginalTargetFromGrouping(targetPath, groupingUses.next);
+ if (result != null) {
+ fromUses = (result as DataSchemaNode).addedByUses
}
}
+ if (fromUses) {
+ throw new NullPointerException("Failed to generate code for augment in " + parentUsesNode);
+ }
return result as DataSchemaNode
}
val List<QName> nodeNames = nodeSp.path
val List<QName> nodeNewNames = new ArrayList(nodeNames)
nodeNewNames.remove(nodeNewNames.size - 1)
- val SchemaPath nodeNewSp = new SchemaPath(nodeNewNames, nodeSp.absolute)
+ val SchemaPath nodeNewSp = SchemaPath.create(nodeNewNames, nodeSp.absolute)
parentNode = findDataSchemaNode(schemaContext, nodeNewSp)
var SchemaNode parent
val List<QName> names = sp.path
val List<QName> newNames = new ArrayList(names)
newNames.remove(newNames.size - 1)
- val SchemaPath newSp = new SchemaPath(newNames, sp.absolute)
+ val SchemaPath newSp = SchemaPath.create(newNames, sp.absolute)
parent = findDataSchemaNode(schemaContext, newSp)
}
var GeneratedTypeBuilder childOfType = findChildNodeByPath(parent.path)
val List<QName> nodeNames = nodeSp.path
val List<QName> nodeNewNames = new ArrayList(nodeNames)
nodeNewNames.remove(nodeNewNames.size - 1)
- val SchemaPath nodeNewSp = new SchemaPath(nodeNewNames, nodeSp.absolute)
+ val SchemaPath nodeNewSp = SchemaPath.create(nodeNewNames, nodeSp.absolute)
parent = findDataSchemaNode(schemaContext, nodeNewSp)
var GeneratedTypeBuilder childOfType = null;
private def GeneratedTypeBuilder addDefaultInterfaceDefinition(String packageName, SchemaNode schemaNode,
Type parent) {
val it = addRawInterfaceDefinition(packageName, schemaNode, "");
- qnameConstant(BindingMapping.QNAME_STATIC_FIELD_NAME,schemaNode.QName);
if (parent === null) {
addImplementsType(DATA_OBJECT);
} else {
//FIXME: Validation of name conflict
val newType = new GeneratedTypeBuilderImpl(packageName, genTypeName);
+ qnameConstant(newType,BindingMapping.QNAME_STATIC_FIELD_NAME,schemaNode.QName);
newType.addComment(schemaNode.getDescription());
if (!genTypeBuilders.containsKey(packageName)) {
val Map<String, GeneratedTypeBuilder> builders = new HashMap();