import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
+import com.google.common.util.concurrent.MoreExecutors;
import com.google.common.util.concurrent.SettableFuture;
import javax.inject.Inject;
import javax.inject.Singleton;
@Override
public ListenableFuture<RpcResult<ReconcileNodeOutput>> reconcileNode(ReconcileNodeInput input) {
- LOG.debug("Triggering reconciliation for node: {}", input.getNodeId().toString());
+ LOG.debug("Triggering reconciliation for node: {}", input.getNodeId());
Node nodeDpn = buildNode(input.getNodeId().longValue());
InstanceIdentifier<FlowCapableNode> connectedNode = InstanceIdentifier.builder(Nodes.class)
.child(Node.class, nodeDpn.key()).augmentation(FlowCapableNode.class).build();
SettableFuture<RpcResult<ReconcileNodeOutput>> rpcResult = SettableFuture.create();
ListenableFuture<Boolean> futureResult = forwardingRulesManagerImpl
.getNodeListener().reconcileConfiguration(connectedNode);
- Futures.addCallback(futureResult, new ResultCallBack(futureResult, rpcResult));
- LOG.debug("Completing reconciliation for node: {}", input.getNodeId().toString());
+ Futures.addCallback(futureResult, new ResultCallBack(futureResult, rpcResult),
+ MoreExecutors.directExecutor());
+ LOG.debug("Completing reconciliation for node: {}", input.getNodeId());
return rpcResult;
}