示例#1
0
        protected CoreNode CreateNode(NodeRunner runner, string configFile = "bitcoin.conf", bool useCookieAuth = false, NodeConfigParameters configParameters = null)
        {
            var node = new CoreNode(runner, configParameters, configFile, useCookieAuth);

            this.Nodes.Add(node);
            return(node);
        }
        public CoreNode(NodeRunner runner, NodeConfigParameters configParameters, string configfile, bool useCookieAuth = false)
        {
            this.runner = runner;

            this.State = CoreNodeState.Stopped;
            string user = Encoders.Hex.EncodeData(RandomUtils.GetBytes(20));
            string pass = Encoders.Hex.EncodeData(RandomUtils.GetBytes(20));

            this.creds      = new NetworkCredential(user, pass);
            this.Config     = Path.Combine(this.runner.DataFolder, configfile);
            this.CookieAuth = useCookieAuth;

            this.ConfigParameters = new NodeConfigParameters();
            if (configParameters != null)
            {
                this.ConfigParameters.Import(configParameters);
            }

            var randomFoundPorts = new int[3];

            IpHelper.FindPorts(randomFoundPorts);
            this.ConfigParameters.SetDefaultValueIfUndefined("port", randomFoundPorts[0].ToString());
            this.ConfigParameters.SetDefaultValueIfUndefined("rpcport", randomFoundPorts[1].ToString());
            this.ConfigParameters.SetDefaultValueIfUndefined("apiport", randomFoundPorts[2].ToString());

            this.loggerFactory = new ExtendedLoggerFactory();
            this.loggerFactory.AddConsoleWithFilters();

            CreateConfigFile(this.ConfigParameters);
        }
示例#3
0
        private CoreNode CreateNode(NodeRunner runner, bool start, string configFile = "bitcoin.conf")
        {
            var node = new CoreNode(runner, this, configFile);

            this.Nodes.Add(node);
            if (start)
            {
                node.Start();
            }
            return(node);
        }
示例#4
0
        public CoreNode(NodeRunner runner, NodeBuilder builder, string configfile)
        {
            this.runner = runner;

            this.State = CoreNodeState.Stopped;
            string pass = Encoders.Hex.EncodeData(RandomUtils.GetBytes(20));

            this.creds  = new NetworkCredential(pass, pass);
            this.Config = Path.Combine(this.runner.DataFolder, configfile);
            this.ConfigParameters.Import(builder.ConfigParameters);
            this.ports = new int[3];
            TestHelper.FindPorts(this.ports);
        }
        public CoreNode(NodeRunner runner, NodeBuilder builder, Network network, string configfile)
        {
            this.runner = runner;

            this.State = CoreNodeState.Stopped;
            var pass = Encoders.Hex.EncodeData(RandomUtils.GetBytes(20));

            this.creds  = new NetworkCredential(pass, pass);
            this.Config = Path.Combine(this.runner.DataFolder, configfile);
            this.ConfigParameters.Import(builder.ConfigParameters);
            this.ports = new int[2];
            this.FindPorts(this.ports);

            var loggerFactory = new ExtendedLoggerFactory();

            loggerFactory.AddConsoleWithFilters();

            this.networkPeerFactory = new NetworkPeerFactory(network, DateTimeProvider.Default, loggerFactory, new PayloadProvider().DiscoverPayloads(), new SelfEndpointTracker());
        }
示例#6
0
        public CoreNode(NodeRunner runner, NodeBuilder builder, string configfile, bool useCookieAuth = false)
        {
            this.runner = runner;

            this.State = CoreNodeState.Stopped;
            string pass = Encoders.Hex.EncodeData(RandomUtils.GetBytes(20));

            this.creds      = new NetworkCredential(pass, pass);
            this.Config     = Path.Combine(this.runner.DataFolder, configfile);
            this.CookieAuth = useCookieAuth;
            this.ConfigParameters.Import(builder.ConfigParameters);
            var randomFoundPorts = new int[3];

            IpHelper.FindPorts(randomFoundPorts);
            this.ConfigParameters.SetDefaultValueIfUndefined("port", randomFoundPorts[0].ToString());
            this.ConfigParameters.SetDefaultValueIfUndefined("rpcport", randomFoundPorts[1].ToString());
            this.ConfigParameters.SetDefaultValueIfUndefined("apiport", randomFoundPorts[2].ToString());

            CreateConfigFile(this.ConfigParameters);
        }