- mutableChildNodes.put(dataSchemaNode.getQName(),
- dataSchemaNode);
- mutablePublicChildNodes.add(dataSchemaNode);
+ /**
+ * Add case short hand when augmenting choice with short hand
+ **/
+ if (this instanceof AugmentationSchema && !(effectiveStatement instanceof ChoiceCaseNode ||
+ effectiveStatement instanceof ChoiceSchemaNode) &&
+ (YangValidationBundles.SUPPORTED_CASE_SHORTHANDS.contains(effectiveStatement.statementDefinition())) &&
+ Boolean.TRUE.equals(ctx.getFromNamespace(AugmentToChoiceNamespace.class, ctx))) {
+ final CaseShorthandImpl caseShorthand = new CaseShorthandImpl(dataSchemaNode);
+ mutableChildNodes.put(caseShorthand.getQName(), caseShorthand);
+ mutablePublicChildNodes.add(caseShorthand);
+ } else {
+ mutableChildNodes.put(dataSchemaNode.getQName(), dataSchemaNode);
+ mutablePublicChildNodes.add(dataSchemaNode);
+ }