X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fbinding%2Fimpl%2FLazyDataTreeModification.java;h=5e9038e7d4c4ef9a13017208c9c07789d6197ea9;hb=1da4f8be48cca9621b790c486528bb28c1cae0c7;hp=26fd420c0e4ed90435de16f2c5f588328c07eba2;hpb=8542d448f20b0eb4ace904fa0babd24a98d5c4e4;p=controller.git diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/LazyDataTreeModification.java b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/LazyDataTreeModification.java index 26fd420c0e..5e9038e7d4 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/LazyDataTreeModification.java +++ b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/LazyDataTreeModification.java @@ -15,7 +15,7 @@ import org.opendaylight.controller.md.sal.binding.api.DataObjectModification; import org.opendaylight.controller.md.sal.binding.api.DataTreeIdentifier; import org.opendaylight.controller.md.sal.binding.api.DataTreeModification; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; -import org.opendaylight.yangtools.binding.data.codec.api.BindingCodecTreeNode; +import org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTreeNode; import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; @@ -28,40 +28,45 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; * which are directly accessed by user of data object modification. * */ -class LazyDataTreeModification implements DataTreeModification { +class LazyDataTreeModification implements DataTreeModification { - private final DataTreeIdentifier path; - private final DataObjectModification rootNode; + private final DataTreeIdentifier path; + private final DataObjectModification rootNode; - LazyDataTreeModification(final LogicalDatastoreType datastoreType, final InstanceIdentifier path, final BindingCodecTreeNode codec, final DataTreeCandidate domChange) { - this.path = new DataTreeIdentifier(datastoreType, path); + LazyDataTreeModification(final LogicalDatastoreType datastoreType, final InstanceIdentifier path, final BindingCodecTreeNode codec, final DataTreeCandidate domChange) { + this.path = new DataTreeIdentifier<>(datastoreType, path); this.rootNode = LazyDataObjectModification.create(codec, domChange.getRootNode()); } @Override - public DataObjectModification getRootNode() { + public DataObjectModification getRootNode() { return rootNode; } @Override - public DataTreeIdentifier getRootPath() { + public DataTreeIdentifier getRootPath() { return path; } - static DataTreeModification create(final BindingToNormalizedNodeCodec codec, final DataTreeCandidate domChange, + @SuppressWarnings({"unchecked", "rawtypes"}) + static DataTreeModification create(final BindingToNormalizedNodeCodec codec, final DataTreeCandidate domChange, final LogicalDatastoreType datastoreType) { final Entry, BindingCodecTreeNode> codecCtx = codec.getSubtreeCodec(domChange.getRootPath()); return new LazyDataTreeModification(datastoreType, codecCtx.getKey(), codecCtx.getValue(), domChange); } - static Collection from(final BindingToNormalizedNodeCodec codec, + static Collection> from(final BindingToNormalizedNodeCodec codec, final Collection domChanges, final LogicalDatastoreType datastoreType) { - final List result = new ArrayList<>(domChanges.size()); + final List> result = new ArrayList<>(domChanges.size()); for (final DataTreeCandidate domChange : domChanges) { - result.add(create(codec, domChange, datastoreType)); + result.add(LazyDataTreeModification.create(codec, domChange, datastoreType)); } return result; } + @Override + public String toString() { + return getClass().getSimpleName() + "{path = " + path + ", rootNode = " + rootNode + "}"; + } }