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=5319a57aa458a9d121840b61a3be87cd28e905b4;hb=8a01ebe93fac21b1ae80dcfcc81c21543ec1a687;hp=26fd420c0e4ed90435de16f2c5f588328c07eba2;hpb=e1a6ed792b504c2978c5259f926eaa09257c694c;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..5319a57aa4 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.BindingDataObjectCodecTreeNode; 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,47 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; * which are directly accessed by user of data object modification. * */ -class LazyDataTreeModification implements DataTreeModification { +@Deprecated +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 BindingDataObjectCodecTreeNode 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, - final LogicalDatastoreType datastoreType) { - final Entry, BindingCodecTreeNode> codecCtx = + @SuppressWarnings({"unchecked", "rawtypes"}) + static DataTreeModification create(final BindingToNormalizedNodeCodec codec, + final DataTreeCandidate domChange, final LogicalDatastoreType datastoreType) { + final Entry, BindingDataObjectCodecTreeNode> 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 + "}"; + } }