use of com.alipay.sofa.jraft.option.FSMCallerOptions in project sofa-jraft by sofastack.
the class FSMCallerTest method setup.
@Before
public void setup() {
this.fsmCaller = new FSMCallerImpl();
this.closureQueue = new ClosureQueueImpl();
final FSMCallerOptions opts = new FSMCallerOptions();
Mockito.when(this.node.getNodeMetrics()).thenReturn(new NodeMetrics(false));
opts.setNode(this.node);
opts.setFsm(this.fsm);
opts.setLogManager(this.logManager);
opts.setBootstrapId(new LogId(10, 1));
opts.setClosureQueue(this.closureQueue);
assertTrue(this.fsmCaller.init(opts));
}
use of com.alipay.sofa.jraft.option.FSMCallerOptions in project sofa-jraft by sofastack.
the class NodeImpl method initFSMCaller.
private boolean initFSMCaller(final LogId bootstrapId) {
if (this.fsmCaller == null) {
LOG.error("Fail to init fsm caller, null instance, bootstrapId={}.", bootstrapId);
return false;
}
this.closureQueue = new ClosureQueueImpl();
final FSMCallerOptions opts = new FSMCallerOptions();
opts.setAfterShutdown(status -> afterShutdown());
opts.setLogManager(this.logManager);
opts.setFsm(this.options.getFsm());
opts.setClosureQueue(this.closureQueue);
opts.setNode(this);
opts.setBootstrapId(bootstrapId);
opts.setDisruptorBufferSize(this.raftOptions.getDisruptorBufferSize());
return this.fsmCaller.init(opts);
}
Aggregations