GetWork() public method

public GetWork ( ) : Newtonsoft.Json.Linq.JObject
return Newtonsoft.Json.Linq.JObject
Example #1
0
        public override WorkBlock GetWorkBlock()
        {
            WorkBlock work = null;

            JObject obj = null;
            try
            {
                // Get block from bitcoin
                BitnetClient bc = new BitnetClient("http://" + mURL + ":" + mPort);
                bc.Credentials = new NetworkCredential(mUser, mPass);
                mBlockCount = bc.GetBlockCount();
                obj = bc.GetWork();
                mNewBlockReady = false;
            }
            catch (Exception e)
            {
                Console.WriteLine("Failed to get work!");
                Console.WriteLine(e.Message);
            }

            if (obj != null)
            {
                work = new WorkBlock(obj);
            }
            return work;
        }
Example #2
0
        public override bool SubmitWork(WorkBlock work, uint solution)
        {
            // Submit this solution to bitcoin
            string data = work.GetSolutionString(solution);
            Console.WriteLine("Trying solution: " + data);
            BitnetClient bc = new BitnetClient("http://" + mURL + ":" + mPort);
            bc.Credentials = new NetworkCredential(mUser, mPass);
            bool success = bc.GetWork(data);
            if (!success)
            {
                data = work.GetSolutionString((uint)IPAddress.HostToNetworkOrder((int)solution));
                success = bc.GetWork(data);
            }

            return success;
        }
Example #3
0
        WorkBlock GetWork()
        {
            /*
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://127.0.0.1:8332/");
            req.TransferEncoding = "";
            req.ServicePoint.UseNagleAlgorithm = false;
            req.Method = "POST";
            req.ContentType = "application/json";
            req.Expect = "";
            req.Credentials = new NetworkCredential("rpcuser", "rpcpass");

            StreamWriter sw = new StreamWriter(req.GetRequestStream());
            sw.Write("{\"method\": \"getwork\", \"params\": [], \"id\":0}\r\n");
            sw.Close();

            HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
            StreamReader sr = new StreamReader(resp.GetResponseStream(), Encoding.Default);

            string str = sr.ReadToEnd();
            Console.WriteLine(str);
            WorkBlock work = new WorkBlock(str);

            sr.Close();
            */

            BitnetClient bc = new BitnetClient("http://127.0.0.1:8332");
            bc.Credentials = new NetworkCredential("rpcuser", "rpcpass");
            JObject obj = bc.GetWork();

            WorkBlock work = new WorkBlock(obj);
            return work;
        }