BitSharp.Examples.ExamplePrograms.CreateExampleDaemon C# (CSharp) Method

CreateExampleDaemon() private method

private CreateExampleDaemon ( BlockProvider &embeddedBlocks, IStorageManager &storageManager, int maxHeight = null ) : BitSharp.Core.CoreDaemon
embeddedBlocks BitSharp.Core.BlockProvider
storageManager IStorageManager
maxHeight int
return BitSharp.Core.CoreDaemon
        private CoreDaemon CreateExampleDaemon(out BlockProvider embeddedBlocks, out IStorageManager storageManager, int? maxHeight = null)
        {
            // retrieve first 10,000 testnet3 blocks
            embeddedBlocks = new BlockProvider("BitSharp.Examples.Blocks.TestNet3.zip");

            // initialize in-memory storage
            storageManager = new MemoryStorageManager();

            // intialize testnet3 rules (ignore script errors, script engine is not and is not intended to be complete)
            var chainParams = new Testnet3Params();
            var rules = new CoreRules(chainParams) { IgnoreScriptErrors = true };

            // initialize & start core daemon
            var coreDaemon = new CoreDaemon(rules, storageManager) { MaxHeight = maxHeight, IsStarted = true };

            // add embedded blocks
            coreDaemon.CoreStorage.AddBlocks(embeddedBlocks.ReadBlocks());

            // wait for core daemon to finish processing any available data
            coreDaemon.WaitForUpdate();

            return coreDaemon;
        }