コード例 #1
0
ファイル: wallet_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        /// <summary>
        /// Return the wallet seed and all addresses in the wallet for backup and offline storage.
        /// </summary>
        /// <param name="con">Connection object</param>
        /// <returns></returns>
        public static string wallet_backup(Configure.Connection con)
        {
            String json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.wallet_backup + @"""
                }";
            var request  = http.createRequest(con.walletd_address, json);
            var response = http.getResponse(request);

            return(response);
        } //function
コード例 #2
0
ファイル: factom_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        ///<summary>
        /// Reveal an Entry to factomd after the Commit to complete the Entry creation. The reveal-entry has to be hex encoded string
        ///</summary>
        /// <param name="con">Connection object</param>
        /// <param name="entry"></param>
        public static string reveal_entry(Configure.Connection con, string entry)
        {
            String json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.reveal_entry + @""",
                    ""params"": {
                        ""entry"": """ + entry + @"""
                    }
                }";
            var request  = http.createRequest(con.factomd_address, json);
            var response = http.getResponse(request);

            return(response);
        }//function
コード例 #3
0
ファイル: factom_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        /// <summary>
        /// Retrieve administrative blocks for any given height.
        /// </summary>
        /// <param name="con">Connection object</param>
        /// <param name="height">Administrator block height</param>
        public static string ablock_by_height(Configure.Connection con, int height)
        {
            String json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.ablock_by_height + @""",
                    ""params"": {
                        ""height"": " + height + @"
                    }
                }";
            var request  = http.createRequest(con.factomd_address, json);
            var response = http.getResponse(request);

            return(response);
        } //function
コード例 #4
0
ファイル: factom_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        /// <summary>
        /// Return the keymr of the head of the chain for a chain ID (the unique hash created when the chain was created).
        /// </summary>
        /// <param name="con">Connection object</param>
        /// <param name="chainid">Chain ID</param>
        public static string chain_head(Configure.Connection con, string chainid)
        {
            String json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.chain_head + @""",
                    ""params"": {
                        ""chainid"": """ + chainid + @"""
                    }
                }";
            var request  = http.createRequest(con.factomd_address, json);
            var response = http.getResponse(request);

            return(response);
        }//function
コード例 #5
0
ファイル: factom_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        ///<summary>
        /// Return its current balance for a specific entry credit address.
        ///</summary>
        /// <param name="con">Connection object</param>
        /// <param name="address">Address object</param>
        /// <returns></returns>
        public static string entry_credit_balance(Configure.Connection con, Configure.FactomAddress address)
        {
            String json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.entry_credit_balance + @""",
                    ""params"": {
                        ""address"": """ + address.entryCE_address + @"""
                    }
                }";
            var request  = http.createRequest(con.factomd_address, json);
            var response = http.getResponse(request);

            return(response);
        }//function
コード例 #6
0
ファイル: factom_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        /// <summary>
        /// Retrieve details of a factoid transaction using a transaction’s hash (or corresponding transaction id).
        /// </summary>
        /// <param name="con">Connection object</param>
        /// <param name="hash">Transaction Hash</param>
        public static string transaction(Configure.Connection con, string hash)
        {
            String json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.transaction + @""",
                    ""params"": {
                        ""hash"": """ + hash + @"""
                    }
                }";

            var request  = http.createRequest(con.factomd_address, json);
            var response = http.getResponse(request);

            return(response);
        }//function
コード例 #7
0
ファイル: wallet_API.cs プロジェクト: RealALeon/FactomLibrary
        }//function

        /// <summary>
        /// Composes a chain in factom.
        /// </summary>
        /// <param name="con">Connection object</param>
        /// <param name="chainData">Chain data</param>
        /// <param name="address">Factom addresses</param>
        /// <returns></returns>
        public static string compose_chain(Configure.Connection con, Configure.ChainData chainData, Configure.FactomAddress address)
        {
            // convert extIDs to hex
            string ext_ids = utils.convertExternal_IDs(chainData.extIDs);

            //check if content is a path or actual content
            if (File.Exists(chainData.content))
            {
                //choose the type of algorithm to hash the file:
                chainData.content = utils.hashFile_SHA256(chainData.content);
                //chainData.content = utils.hashFile_SHA512(chainData.content);
            }
            else
            {
                //you can choose whether hash your content or convert it into hex_string
                //chainData.content = utils.hashString_SHA256(chainData.content);
                //chainData.content = utils.hashString_SHA512(chainData.content);
                chainData.content = utils.stringToHex(chainData.content);
            }

            string json =
                @"{
                    ""jsonrpc"": ""2.0"",
                    ""id"": 0,
                    ""method"": """ + method.compose_chain + @""",
                    ""params"": {
                            ""chain"": {
                                    ""firstentry"": {
                                            ""extids"": " + ext_ids + @",
                                            ""content"": """ + chainData.content + @"""
                                        }
                                },
                            ""ecpub"": """ + address.entryCE_address + @"""
                        }
                  }";

            var request  = http.createRequest(con.walletd_address, json);
            var response = http.getResponse(request);

            return(response);
        }//function