Esempio n. 1
0
        public static Preference ReadBlobToPreferences()
        {
            //TODO: Move deserialization to FileBinIO to avoid duplicating code on multiple objects
            if (!File.Exists(AppDomain.CurrentDomain.BaseDirectory + @"bin\\WalletData\\Pref.bin"))
            {
                //Return empty object
                return(new Preference());
            }

            byte[] BlobData = FileBinIO.ReadBin(AppDomain.CurrentDomain.BaseDirectory + @"bin\\WalletData\\Pref.bin");

            MemoryStream    memorystreamd = new MemoryStream(BlobData);
            BinaryFormatter bfd           = new BinaryFormatter();
            Preference      prefData      = bfd.Deserialize(memorystreamd) as Preference;

            memorystreamd.Close();

            return(prefData);
        }
Esempio n. 2
0
        //This class contains all code to interact with RPC
        public static GenericResponse SendRPCJson(string _method, string _params = "")
        {
            string          URL = "http://" + Preference.ReadBlobToPreferences().daemonIPPort + "/json_rpc"; //Get parameter for IP+Port
            GenericResponse response;

            using (Client rpcClient = new Client(URL))
            {
                JArray parameters = JArray.Parse(@"['9000']");  //TODO: set parameters

                Request request = rpcClient.NewRequest(_method, parameters);
                //GenericResponse
                response = rpcClient.Rpc(request);

                if (response != null)
                {
                    if (response.Result != null)
                    {
                        JToken result = response.Result;

                        Console.WriteLine("Connection success for method {0} : daemon says: {1}", _method, result);
                    }
                    else
                    {
                        Console.WriteLine(string.Format("Error in response, code:{0} message:{1}",
                                                        response.Error.Code, response.Error.Message));
                    }
                }
                else
                {
                    Console.WriteLine("Serious issues occured in connecting to the daemon, please check the setup or check if the daemon is running...");
                    return(null);
                }
            }

            return(response);
        }