package org.opendaylight.transportpce.common.network;
+import com.google.common.util.concurrent.FluentFuture;
import com.google.common.util.concurrent.ListenableFuture;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.common.api.CommitInfo;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-
public class NetworkTransactionImpl implements NetworkTransactionService {
RequestProcessor requestProcessor;
return requestProcessor.submit();
}
+ public FluentFuture<? extends @NonNull CommitInfo> commit() {
+ return requestProcessor.commit();
+ }
+
@Override
public void close() {
package org.opendaylight.transportpce.common.network;
import com.google.common.base.Optional;
-
+import com.google.common.util.concurrent.FluentFuture;
import com.google.common.util.concurrent.ListenableFuture;
-
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.common.api.CommitInfo;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
@Deprecated
ListenableFuture<Void> submit();
+ FluentFuture<? extends @NonNull CommitInfo> commit();
+
void close();
}
package org.opendaylight.transportpce.common.network;
import com.google.common.base.Optional;
+import com.google.common.util.concurrent.FluentFuture;
import com.google.common.util.concurrent.ListenableFuture;
import java.util.concurrent.locks.ReentrantReadWriteLock;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.common.api.CommitInfo;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
return future;
}
+ public FluentFuture<? extends @NonNull CommitInfo> commit() {
+ acquireLock();
+ FluentFuture<? extends @NonNull CommitInfo> future = null;
+ future = rwTx.commit();
+ releaseLock();
+ resetRwTx();
+ return future;
+ }
+
public void close() {
releaseLock();
}