- public ListSchemaNodeBuilder(final String moduleName, final int line, final QName qname, final SchemaPath path, final ListSchemaNode base) {
- super(moduleName, line, qname);
- schemaPath = path;
- instance = new ListSchemaNodeImpl(qname, path);
- constraints = new ConstraintsBuilder(moduleName, line, base.getConstraints());
-
- instance.keyDefinition = base.getKeyDefinition();
- instance.userOrdered = base.isUserOrdered();
-
- 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();
- addedChildNodes.addAll(ParserUtils.wrapChildNodes(moduleName, line, base.getChildNodes(), path, ns, rev, pref));
- addedGroupings.addAll(ParserUtils.wrapGroupings(moduleName, line, base.getGroupings(), path, ns, rev, pref));
- addedTypedefs.addAll(ParserUtils.wrapTypedefs(moduleName, line, base, path, ns, rev, pref));
- addedUnknownNodes.addAll(ParserUtils.wrapUnknownNodes(moduleName, line, base.getUnknownSchemaNodes(), path, ns,
- rev, pref));
-
- instance.uses.addAll(base.getUses());
+ public ListSchemaNodeBuilder(final String moduleName, final int line, final QName qname, final SchemaPath path,
+ final ListSchemaNode base) {
+ super(moduleName, line, qname, path, base);
+ this.schemaPath = Preconditions.checkNotNull(path, "Schema Path must not be null");
+ constraints = new ConstraintsBuilderImpl(moduleName, line, base.getConstraints());
+
+ keyDefinition = ImmutableList.copyOf(base.getKeyDefinition());
+ userOrdered = base.isUserOrdered();
+
+ augmenting = base.isAugmenting();
+ addedByUses = base.isAddedByUses();
+ originalNode = base;
+ configuration = base.isConfiguration();
+
+ addedUnknownNodes.addAll(BuilderUtils.wrapUnknownNodes(moduleName, line, base.getUnknownSchemaNodes(), path,
+ qname));
+ augmentations.addAll(base.getAvailableAugmentations());