Search in sources :

Example 1 with OrphanBlockProvider

use of io.nuls.consensus.poc.provider.OrphanBlockProvider in project nuls by nuls-io.

the class ConsensusScheduler method start.

public boolean start() {
    ChainManager chainManager = new ChainManager();
    OrphanBlockProvider orphanBlockProvider = new OrphanBlockProvider();
    PocConsensusContext.setChainManager(chainManager);
    cacheManager = new CacheManager(chainManager);
    try {
        initDatas();
    } catch (Exception e) {
        Log.warn(e.getMessage());
    }
    threadPool = TaskManager.createScheduledThreadPool(6, new NulsThreadFactory(ConsensusConstant.MODULE_ID_CONSENSUS, "consensus-poll-control"));
    BlockProcess blockProcess = new BlockProcess(chainManager, orphanBlockProvider);
    if (!protocolInited) {
        protocolInited = true;
        initNulsProtocol();
    }
    threadPool.scheduleAtFixedRate(new BlockProcessTask(blockProcess), 1000L, 300L, TimeUnit.MILLISECONDS);
    ForkChainProcess forkChainProcess = new ForkChainProcess(chainManager);
    threadPool.scheduleAtFixedRate(new ForkChainProcessTask(forkChainProcess), 1000L, 1000L, TimeUnit.MILLISECONDS);
    orphanBlockProcess = new OrphanBlockProcess(chainManager, orphanBlockProvider);
    orphanBlockProcess.start();
    threadPool.scheduleAtFixedRate(new BlockMonitorProcessTask(new BlockMonitorProcess(chainManager)), 60, 60, TimeUnit.SECONDS);
    TaskManager.createAndRunThread(ConsensusConstant.MODULE_ID_CONSENSUS, "poc-reward-cache", new RewardStatisticsProcessTask(NulsContext.getServiceBean(RewardStatisticsProcess.class)));
    threadPool.scheduleAtFixedRate(new RewardCalculatorTask(NulsContext.getServiceBean(RewardStatisticsProcess.class)), ProtocolConstant.BLOCK_TIME_INTERVAL_SECOND, ProtocolConstant.BLOCK_TIME_INTERVAL_SECOND, TimeUnit.SECONDS);
    threadPool.scheduleAtFixedRate(new TxProcessTask(), 5, 1, TimeUnit.SECONDS);
    ConsensusProcess consensusProcess = new ConsensusProcess(chainManager);
    threadPool.scheduleAtFixedRate(new ConsensusProcessTask(consensusProcess), 1000L, 1000L, TimeUnit.MILLISECONDS);
    return true;
}
Also used : ChainManager(io.nuls.consensus.poc.manager.ChainManager) OrphanBlockProvider(io.nuls.consensus.poc.provider.OrphanBlockProvider) NulsRuntimeException(io.nuls.kernel.exception.NulsRuntimeException) NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) CacheManager(io.nuls.consensus.poc.manager.CacheManager)

Example 2 with OrphanBlockProvider

use of io.nuls.consensus.poc.provider.OrphanBlockProvider in project nuls by nuls-io.

the class BlockProcessTaskTest method init.

@Before
public void init() {
    ChainManager chainManager = new ChainManager();
    OrphanBlockProvider orphanBlockProvider = new OrphanBlockProvider();
    BlockProcess blockProcess = new BlockProcess(chainManager, orphanBlockProvider);
    blockProcessTask = new BlockProcessTask(blockProcess);
    downloadService = SpringLiteContext.getBean(ConsensusDownloadServiceImpl.class);
}
Also used : ChainManager(io.nuls.consensus.poc.manager.ChainManager) OrphanBlockProvider(io.nuls.consensus.poc.provider.OrphanBlockProvider) BlockProcess(io.nuls.consensus.poc.process.BlockProcess) ConsensusDownloadServiceImpl(io.nuls.consensus.poc.customer.ConsensusDownloadServiceImpl) Before(org.junit.Before)

Aggregations

ChainManager (io.nuls.consensus.poc.manager.ChainManager)2 OrphanBlockProvider (io.nuls.consensus.poc.provider.OrphanBlockProvider)2 ConsensusDownloadServiceImpl (io.nuls.consensus.poc.customer.ConsensusDownloadServiceImpl)1 CacheManager (io.nuls.consensus.poc.manager.CacheManager)1 BlockProcess (io.nuls.consensus.poc.process.BlockProcess)1 NulsRuntimeException (io.nuls.kernel.exception.NulsRuntimeException)1 NulsThreadFactory (io.nuls.kernel.thread.manager.NulsThreadFactory)1 Before (org.junit.Before)1