+ this.schemaPath = path;
+ constraints = new ConstraintsBuilderImpl(moduleName, line);
+ }
+
+ public ChoiceBuilder(final String moduleName, final int line, final QName qname, final SchemaPath path,
+ final ChoiceNode base) {
+ super(moduleName, line, qname);
+ this.schemaPath = path;
+ constraints = new ConstraintsBuilderImpl(moduleName, line, base.getConstraints());
+
+ description = base.getDescription();
+ reference = base.getReference();
+ status = base.getStatus();
+ augmenting = base.isAugmenting();
+ addedByUses = base.isAddedByUses();
+ originalNode = base;
+ configuration = base.isConfiguration();
+ augmentations.addAll(base.getAvailableAugmentations());
+
+ Set<DataSchemaNodeBuilder> wrapped = BuilderUtils.wrapChildNodes(moduleName, line, new HashSet<DataSchemaNode>(
+ base.getCases()), path, qname);
+ for (DataSchemaNodeBuilder wrap : wrapped) {
+ if (wrap instanceof ChoiceCaseBuilder) {
+ caseBuilders.add((ChoiceCaseBuilder) wrap);
+ }
+ }
+
+ addedUnknownNodes.addAll(BuilderUtils.wrapUnknownNodes(moduleName, line, base.getUnknownSchemaNodes(), path,
+ qname));