// makeRawTransaction generates the cmd structure for // getrawtransaction commands. func makeGetRawTransaction(args []interface{}) (btcjson.Cmd, error) { opt := make([]int, 0, 1) if len(args) > 1 { opt = append(opt, args[1].(int)) } return btcjson.NewGetRawTransactionCmd("btcctl", args[0].(string), opt...) }
// VerboseGetRawTransaction sends the verbose version of a getrawtransaction // request to receive details about a transaction. func VerboseGetRawTransaction(rpc ServerConn, txsha *btcwire.ShaHash) (*btcjson.TxRawResult, *btcjson.Error) { // NewGetRawTransactionCmd cannot fail with a single optarg. cmd, _ := btcjson.NewGetRawTransactionCmd(<-NewJSONID, txsha.String(), 1) response := <-rpc.SendRequest(NewServerRequest(cmd)) var resultData btcjson.TxRawResult _, jsonErr := response.FinishUnmarshal(&resultData) if jsonErr != nil { return nil, jsonErr } return &resultData, nil }
// GetRawTransactionAsync returns an instance of a type that can be used to get // the result of the RPC at some future time by invoking the Receive function on // the returned instance. // // See GetRawTransaction for the blocking version and more details. func (c *Client) GetRawTransactionAsync(txHash *btcwire.ShaHash) FutureGetRawTransactionResult { hash := "" if txHash != nil { hash = txHash.String() } id := c.NextID() cmd, err := btcjson.NewGetRawTransactionCmd(id, hash, 0) if err != nil { return newFutureError(err) } return c.sendCmd(cmd) }
func getRawTx(tx string) (interface{}, error) { cmd, err := btcjson.NewGetRawTransactionCmd("blocksafari", tx, 1) if err != nil { return nil, err } msg, err := json.Marshal(cmd) if err != nil { return nil, err } reply, err := btcjson.TlsRpcCommand(cfg.RPCUser, cfg.RPCPassword, cfg.RPCServer, msg, pem, false) if err != nil { return nil, err } if reply.Error != nil { return nil, reply.Error } return reply.Result, nil }
// makeRawTransaction generates the cmd structure for // getrawtransaction comands. func makeGetRawTransaction(args []interface{}) (btcjson.Cmd, error) { i := args[1].(int) bi := i != 0 return btcjson.NewGetRawTransactionCmd("btcctl", args[0].(string), bi) }
// GetRawTransaction returns a future representing a pending GetRawTransaction // command for txsha.. When the result of the request is required it may be // collected with GetRawTRansactionAsyncResult. func GetRawTransactionAsync(rpc ServerConn, txsha *btcwire.ShaHash) chan RawRPCResponse { // NewGetRawTransactionCmd cannot fail with no optargs. cmd, _ := btcjson.NewGetRawTransactionCmd(<-NewJSONID, txsha.String()) return rpc.SendRequest(NewServerRequest(cmd)) }