public Object perform(InvocationContext ctx) throws Throwable { if (enabled) rpcManager.getFlushTracker().block(); else rpcManager.getFlushTracker().unblock(); return null; }
/** * Mimics a partial flush between the current instance and the address to flush, by opening and closing the necessary * latches on both ends. * @param addressToFlush address to flush in addition to the current address * @param block if true, mimics setting a flush. Otherwise, mimics un-setting a flush. * @throws Exception if there are issues */ private void mimicPartialFlushViaRPC(Address addressToFlush, boolean block) throws Exception { StateTransferControlCommand cmd = commandsFactory.buildStateTransferControlCommand(block); Vector<Address> recipient = new Vector<Address>(); recipient.add(addressToFlush); if (!block) rpcManager.getFlushTracker().unblock(); rpcManager.callRemoteMethods(recipient, cmd, true, cfg.getStateRetrievalTimeout(), true); if (block) rpcManager.getFlushTracker().block(); }
private void writeTxLog(ObjectOutputStream out) throws Exception FlushTracker flushTracker = rpcManager.getFlushTracker();
protected Object executeCommand(ReplicableCommand cmd, Message req) throws Throwable FlushTracker flushTracker = rpcManager.getFlushTracker();