private final List<Optional<NormalizedNode<?, ?>>> nodes;
private final DataTree dataTree;
- private NormalizedNodeAggregator(YangInstanceIdentifier rootIdentifier, List<Optional<NormalizedNode<?, ?>>> nodes,
- SchemaContext schemaContext) {
+ private NormalizedNodeAggregator(final YangInstanceIdentifier rootIdentifier, final List<Optional<NormalizedNode<?, ?>>> nodes,
+ final SchemaContext schemaContext) {
this.rootIdentifier = rootIdentifier;
this.nodes = nodes;
+ // FIXME: BUG-1014: pass down proper DataTree
this.dataTree = InMemoryDataTreeFactory.getInstance().create();
this.dataTree.setSchemaContext(schemaContext);
}
* @return
* @throws DataValidationFailedException
*/
- public static Optional<NormalizedNode<?,?>> aggregate(YangInstanceIdentifier rootIdentifier,
- List<Optional<NormalizedNode<?, ?>>> nodes,
- SchemaContext schemaContext) throws DataValidationFailedException {
+ public static Optional<NormalizedNode<?,?>> aggregate(final YangInstanceIdentifier rootIdentifier,
+ final List<Optional<NormalizedNode<?, ?>>> nodes,
+ final SchemaContext schemaContext) throws DataValidationFailedException {
return new NormalizedNodeAggregator(rootIdentifier, nodes, schemaContext).aggregate();
}
}
private NormalizedNodeAggregator combine() throws DataValidationFailedException {
- DataTreeModification mod = dataTree.takeSnapshot().newModification();
+ final DataTreeModification mod = dataTree.takeSnapshot().newModification();
- for (Optional<NormalizedNode<?,?>> node : nodes) {
+ for (final Optional<NormalizedNode<?,?>> node : nodes) {
if (node.isPresent()) {
mod.merge(rootIdentifier, node.get());
}
}
-
+ mod.ready();
dataTree.validate(mod);
final DataTreeCandidate candidate = dataTree.prepare(mod);
dataTree.commit(candidate);