constraints = new ConstraintsBuilder(moduleName, line);
}
- public ChoiceBuilder(ChoiceBuilder b, QName qname) {
- super(b.getModuleName(), b.getLine(), qname);
- parent = b.getParent();
- instance = new ChoiceNodeImpl(qname);
- constraints = new ConstraintsBuilder(b.getConstraints());
- schemaPath = b.getPath();
- description = b.getDescription();
- reference = b.getReference();
- status = b.getStatus();
- unknownNodes = b.unknownNodes;
- addedUnknownNodes.addAll(b.getUnknownNodes());
- augmenting = b.isAugmenting();
- addedByUses = b.isAddedByUses();
- configuration = b.isConfiguration();
- addedAugmentations.addAll(b.getAugmentations());
- cases = b.cases;
- addedCases.addAll(b.getCases());
- defaultCase = b.getDefaultCase();
- }
-
@Override
public ChoiceNode build() {
if (!isBuilt) {
return addedCases;
}
+ /**
+ * Get case by name.
+ *
+ * @param caseName
+ * name of case to search
+ * @return case with given name if present, null otherwise
+ */
+ public ChoiceCaseBuilder getCaseNodeByName(String caseName) {
+ for (ChoiceCaseBuilder addedCase : addedCases) {
+ if (addedCase.getQName().getLocalName().equals(caseName)) {
+ return addedCase;
+ }
+ }
+ return null;
+ }
+
/**
* Add case node to this choice.
*