Search in sources :

Example 6 with MicroKernelBootstrap

use of io.nuls.kernel.MicroKernelBootstrap in project nuls by nuls-io.

the class AccountServiceTest method beforeTest.

@BeforeClass
public static void beforeTest() {
    MicroKernelBootstrap kernel = MicroKernelBootstrap.getInstance();
    kernel.init();
    kernel.start();
    LevelDbModuleBootstrap db = new LevelDbModuleBootstrap();
    db.init();
    db.start();
    accountService = SpringLiteContext.getBean(AccountService.class);
}
Also used : LevelDbModuleBootstrap(io.nuls.db.module.impl.LevelDbModuleBootstrap) MicroKernelBootstrap(io.nuls.kernel.MicroKernelBootstrap) BeforeClass(org.junit.BeforeClass)

Example 7 with MicroKernelBootstrap

use of io.nuls.kernel.MicroKernelBootstrap in project nuls by nuls-io.

the class AliasServiceTest method beforeClass.

@Before
public void beforeClass() {
    MicroKernelBootstrap kernel = MicroKernelBootstrap.getInstance();
    kernel.init();
    kernel.start();
    LevelDbModuleBootstrap db = new LevelDbModuleBootstrap();
    db.init();
    db.start();
    accountService = SpringLiteContext.getBean(AccountService.class);
    aliasService = SpringLiteContext.getBean(AliasService.class);
}
Also used : LevelDbModuleBootstrap(io.nuls.db.module.impl.LevelDbModuleBootstrap) MicroKernelBootstrap(io.nuls.kernel.MicroKernelBootstrap) Before(org.junit.Before)

Example 8 with MicroKernelBootstrap

use of io.nuls.kernel.MicroKernelBootstrap in project nuls by nuls-io.

the class BaseTest method initMicroKernel.

@BeforeClass
public static void initMicroKernel() {
    MicroKernelBootstrap mk = MicroKernelBootstrap.getInstance();
    mk.init();
    mk.start();
}
Also used : MicroKernelBootstrap(io.nuls.kernel.MicroKernelBootstrap) BeforeClass(org.junit.BeforeClass)

Example 9 with MicroKernelBootstrap

use of io.nuls.kernel.MicroKernelBootstrap in project nuls by nuls-io.

the class PocConsensusModuleBootstrapTest method testStartModule.

@Test
public void testStartModule() throws Exception {
    MicroKernelBootstrap mk = MicroKernelBootstrap.getInstance();
    mk.init();
    mk.start();
    bootstrap.init();
    bootstrap.start();
}
Also used : MicroKernelBootstrap(io.nuls.kernel.MicroKernelBootstrap) Test(org.junit.Test) BaseTest(io.nuls.consensus.poc.BaseTest)

Example 10 with MicroKernelBootstrap

use of io.nuls.kernel.MicroKernelBootstrap in project nuls by nuls-io.

the class Bootstrap method sysStart.

private static void sysStart() throws Exception {
    do {
        MicroKernelBootstrap mk = MicroKernelBootstrap.getInstance();
        mk.init();
        mk.start();
        WalletVersionManager.start();
        initModules();
        String ip = NulsConfig.MODULES_CONFIG.getCfgValue(RpcConstant.CFG_RPC_SECTION, RpcConstant.CFG_RPC_SERVER_IP, RpcConstant.DEFAULT_IP);
        int port = NulsConfig.MODULES_CONFIG.getCfgValue(RpcConstant.CFG_RPC_SECTION, RpcConstant.CFG_RPC_SERVER_PORT, RpcConstant.DEFAULT_PORT);
        copyWebFiles();
        if (NULSParams.BOOTSTRAP.getRpcIp() != null) {
            ip = NULSParams.BOOTSTRAP.getRpcIp();
        }
        if (NULSParams.BOOTSTRAP.getRpcPort() != null) {
            port = NULSParams.BOOTSTRAP.getRpcPort();
        }
        RpcServerManager.getInstance().startServer(ip, port);
        LanguageService languageService = NulsContext.getServiceBean(LanguageService.class);
        String languageDB = (String) languageService.getLanguage().getData();
        String language = null == languageDB ? I18nUtils.getLanguage() : languageDB;
        I18nUtils.setLanguage(language);
        if (null == languageDB) {
            languageService.saveLanguage(language);
        }
    } while (false);
    // if isDaemon flag is true, don't launch the WebView
    boolean isDaemon = NulsConfig.MODULES_CONFIG.getCfgValue(RpcConstant.CFG_RPC_SECTION, RpcConstant.CFG_RPC_DAEMON, false);
    if (!isDaemon) {
        TaskManager.asynExecuteRunnable(new WebViewBootstrap());
    }
    int i = 0;
    Map<NulsDigestData, List<Node>> map = new HashMap<>();
    NulsContext context = NulsContext.getInstance();
    DownloadService downloadService = NulsContext.getServiceBean(DownloadService.class);
    while (true) {
        if (context.getStop() > 0) {
            if (context.getStop() == 2) {
                Runtime.getRuntime().addShutdownHook(new ShutdownHook());
            }
            System.exit(0);
        }
        if (NulsContext.mastUpGrade) {
            // 如果强制升级标志开启,停止网络连接
            ModuleManager.getInstance().stopModule(NetworkConstant.NETWORK_MODULE_ID);
            Log.error(">>>>>> The new protocol version has taken effect, the network connection has been disconnected,please upgrade immediately **********");
        }
        try {
            Thread.sleep(1000L);
        } catch (InterruptedException e) {
            Log.error(e);
        }
        if (i > 10) {
            i = 0;
            if (!downloadService.isDownloadSuccess().isSuccess() && CollectThread.getInstance().getStartHeight() > 0) {
                Log.info("collect-start:{},request-start:{},BlockQueueSize:{}", CollectThread.getInstance().getStartHeight(), CollectThread.getInstance().getRequestStartHeight(), BlockQueueProvider.getInstance().size());
            }
            Block bestBlock = NulsContext.getInstance().getBestBlock();
            Collection<Node> nodes = NulsContext.getServiceBean(NetworkService.class).getAvailableNodes();
            Log.info("bestHeight:" + bestBlock.getHeader().getHeight() + " , txCount : " + bestBlock.getHeader().getTxCount() + " , tx memory pool count : " + TxMemoryPool.getInstance().size() + " - " + TxMemoryPool.getInstance().getOrphanPoolSize() + " , hash : " + bestBlock.getHeader().getHash() + ",nodeCount:" + nodes.size());
            map.clear();
            for (Node node : nodes) {
                List<Node> ips = map.get(node.getBestBlockHash());
                if (null == ips) {
                    ips = new ArrayList<>();
                    map.put(node.getBestBlockHash(), ips);
                }
                ips.add(node);
            }
            for (NulsDigestData key : map.keySet()) {
                if (key == null)
                    continue;
                List<Node> nodeList = map.get(key);
                long height = nodeList.get(0).getBestBlockHeight();
                StringBuilder ids = new StringBuilder();
                for (Node node : nodeList) {
                    ids.append("," + node.getId());
                }
                Log.info("height:" + height + ",count:" + nodeList.size() + ", hash:" + key.getDigestHex() + ids);
            }
        } else {
            i++;
        }
    }
}
Also used : ShutdownHook(io.nuls.client.rpc.resources.thread.ShutdownHook) Node(io.nuls.network.model.Node) DownloadService(io.nuls.protocol.service.DownloadService) MicroKernelBootstrap(io.nuls.kernel.MicroKernelBootstrap) WebViewBootstrap(io.nuls.client.web.view.WebViewBootstrap) LanguageService(io.nuls.client.storage.LanguageService) NulsContext(io.nuls.kernel.context.NulsContext) NulsDigestData(io.nuls.kernel.model.NulsDigestData) Block(io.nuls.kernel.model.Block) NetworkService(io.nuls.network.service.NetworkService)

Aggregations

MicroKernelBootstrap (io.nuls.kernel.MicroKernelBootstrap)13 LevelDbModuleBootstrap (io.nuls.db.module.impl.LevelDbModuleBootstrap)7 Before (org.junit.Before)6 BeforeClass (org.junit.BeforeClass)4 NulsDigestData (io.nuls.kernel.model.NulsDigestData)3 Block (io.nuls.kernel.model.Block)2 BlockSignature (io.nuls.kernel.script.BlockSignature)2 UtxoLedgerModuleBootstrap (io.nuls.ledger.module.impl.UtxoLedgerModuleBootstrap)2 NettyNetworkModuleBootstrap (io.nuls.network.netty.module.impl.NettyNetworkModuleBootstrap)2 ArrayList (java.util.ArrayList)2 ShutdownHook (io.nuls.client.rpc.resources.thread.ShutdownHook)1 LanguageService (io.nuls.client.storage.LanguageService)1 WebViewBootstrap (io.nuls.client.web.view.WebViewBootstrap)1 BaseTest (io.nuls.consensus.poc.BaseTest)1 NulsContext (io.nuls.kernel.context.NulsContext)1 BlockHeader (io.nuls.kernel.model.BlockHeader)1 MessageBusModuleBootstrap (io.nuls.message.bus.module.MessageBusModuleBootstrap)1 Node (io.nuls.network.model.Node)1 NetworkService (io.nuls.network.service.NetworkService)1 BaseProtocolsModuleBootstrap (io.nuls.protocol.base.module.BaseProtocolsModuleBootstrap)1