import static com.google.common.base.Preconditions.checkNotNull;
-import com.google.common.util.concurrent.CheckedFuture;
-import com.google.common.util.concurrent.Futures;
-import com.google.common.util.concurrent.ListenableFuture;
-import org.opendaylight.controller.md.sal.common.api.TransactionStatus;
+import com.google.common.util.concurrent.FluentFuture;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction;
-import org.opendaylight.controller.md.sal.dom.broker.impl.TransactionCommitFailedExceptionMapper;
+import org.opendaylight.mdsal.common.api.CommitInfo;
import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction;
-import org.opendaylight.yangtools.yang.common.RpcResult;
-import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
+@Deprecated
class ShardedDOMDataBrokerDelegatingWriteTransaction implements DOMDataWriteTransaction {
- private static final ListenableFuture<RpcResult<TransactionStatus>> SUCCESS_FUTURE = Futures
- .immediateFuture(RpcResultBuilder.success(TransactionStatus.COMMITED).build());
-
private final DOMDataTreeWriteTransaction delegateTx;
private final Object txIdentifier;
@Override
public void put(final LogicalDatastoreType store, final YangInstanceIdentifier path,
final NormalizedNode<?, ?> data) {
- delegateTx.put(LegacyShardedDOMDataBrokerAdapterUtils.translateDataStoreType(store), path, data);
+ delegateTx.put(store.toMdsal(), path, data);
}
@Override
public void merge(final LogicalDatastoreType store, final YangInstanceIdentifier path,
final NormalizedNode<?, ?> data) {
- delegateTx.merge(LegacyShardedDOMDataBrokerAdapterUtils.translateDataStoreType(store), path, data);
+ delegateTx.merge(store.toMdsal(), path, data);
}
@Override
@Override
public void delete(final LogicalDatastoreType store, final YangInstanceIdentifier path) {
- delegateTx.delete(LegacyShardedDOMDataBrokerAdapterUtils.translateDataStoreType(store), path);
- }
-
- @Override
- public CheckedFuture<Void, TransactionCommitFailedException> submit() {
- return Futures.makeChecked(delegateTx.submit(), TransactionCommitFailedExceptionMapper.COMMIT_ERROR_MAPPER);
+ delegateTx.delete(store.toMdsal(), path);
}
@Override
- public ListenableFuture<RpcResult<TransactionStatus>> commit() {
- return Futures.transformAsync(submit(), input -> SUCCESS_FUTURE);
+ public FluentFuture<? extends CommitInfo> commit() {
+ return delegateTx.commit();
}
@Override