+ public ChoiceBuilder(final String moduleName, final int line, final QName qname, final SchemaPath path,
+ final ChoiceNode base) {
+ super(moduleName, line, qname);
+ this.schemaPath = path;
+ instance = new ChoiceNodeImpl(qname, path);
+ constraints = new ConstraintsBuilder(moduleName, line, base.getConstraints());
+
+ instance.description = base.getDescription();
+ instance.reference = base.getReference();
+ instance.status = base.getStatus();
+ instance.augmenting = base.isAugmenting();
+ instance.addedByUses = base.isAddedByUses();
+ instance.configuration = base.isConfiguration();
+ instance.constraints = base.getConstraints();
+ instance.augmentations.addAll(base.getAvailableAugmentations());
+
+ URI ns = qname.getNamespace();
+ Date rev = qname.getRevision();
+ String pref = qname.getPrefix();
+ Set<DataSchemaNodeBuilder> wrapped = ParserUtils.wrapChildNodes(moduleName, line, new HashSet<DataSchemaNode>(
+ base.getCases()), path, ns, rev, pref);
+ for (DataSchemaNodeBuilder wrap : wrapped) {
+ if (wrap instanceof ChoiceCaseBuilder) {
+ caseBuilders.add((ChoiceCaseBuilder) wrap);
+ }
+ }
+
+ instance.unknownNodes.addAll(base.getUnknownSchemaNodes());
+ }
+