- 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());
- }
-
- @Override
- public ListSchemaNode build() {
- if (!isBuilt) {
- // CHILD NODES
- for (DataSchemaNodeBuilder node : addedChildNodes) {
- DataSchemaNode child = node.build();
- childNodes.put(child.getQName(), child);
- }
- instance.addChildNodes(childNodes);
-
- // TYPEDEFS
- for (TypeDefinitionBuilder entry : addedTypedefs) {
- typedefs.add(entry.build());
- }
- instance.addTypeDefinitions(typedefs);
-
- // USES
- for (UsesNodeBuilder builder : addedUsesNodes) {
- usesNodes.add(builder.build());
- }
- instance.addUses(usesNodes);
-
- // GROUPINGS
- for (GroupingBuilder builder : addedGroupings) {
- groupings.add(builder.build());
- }
- instance.addGroupings(groupings);
-
- // AUGMENTATIONS
- for (AugmentationSchemaBuilder builder : augmentationBuilders) {
- augmentations.add(builder.build());
- }
- instance.addAvailableAugmentations(new HashSet<>(augmentations));
+ 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());