Documentation
¶
Index ¶
- func ValidateXRPAmount(amount int64) error
- func ValidateXRPDestinationTag(destinationTag uint64) error
- func ValidateXRPFee(fee int64) error
- func ValidateXRPFlags(flags uint64) error
- func ValidateXRPLastLedgerSequence(lastLedgerSequence uint32) error
- func ValidateXRPSequence(sequence uint32) error
- func ValidateXRPSourceTag(sourceTag uint64) error
- type XRPChain
- func (c *XRPChain) BuildSigningInput(account string, sequence uint32, fee int64, lastLedgerSequence uint32, ...) (*ripple.SigningInput, error)
- func (c *XRPChain) BuildSigningInputFromRequest(request *XRPTransferRequest) (*ripple.SigningInput, error)
- func (c *XRPChain) CompileTransaction(txInput *chain_abstraction.TransactionInput, signatures [][]byte, ...) ([]byte, error)
- func (c *XRPChain) CreateAndSignTransaction(input interface{}, privateKey []byte) ([]byte, error)
- func (c *XRPChain) GetPreimageHash(txInput *chain_abstraction.TransactionInput) ([]byte, []byte, error)
- func (c *XRPChain) GetPublicKeyFromPrivateKey(privateKey []byte) ([]byte, error)
- func (c *XRPChain) GetTransactionHash(encodedTx []byte) (string, error)
- func (c *XRPChain) PrepareTransaction(input interface{}) (*chain_abstraction.TransactionInput, error)
- func (c *XRPChain) Sign(data []byte, privateKey []byte) ([]byte, error)
- func (c *XRPChain) ValidateTransactionInput(input interface{}) error
- type XRPTransferRequest
- func (r *XRPTransferRequest) SetAccount(account string) *XRPTransferRequest
- func (r *XRPTransferRequest) SetAmount(amount int64) *XRPTransferRequest
- func (r *XRPTransferRequest) SetDestination(destination string) *XRPTransferRequest
- func (r *XRPTransferRequest) SetDestinationTag(destinationTag uint64) *XRPTransferRequest
- func (r *XRPTransferRequest) SetFee(fee int64) *XRPTransferRequest
- func (r *XRPTransferRequest) SetFlags(flags uint64) *XRPTransferRequest
- func (r *XRPTransferRequest) SetLastLedgerSequence(lastLedgerSequence uint32) *XRPTransferRequest
- func (r *XRPTransferRequest) SetSequence(sequence uint32) *XRPTransferRequest
- func (r *XRPTransferRequest) SetSourceTag(sourceTag uint64) *XRPTransferRequest
- func (r *XRPTransferRequest) Validate() error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ValidateXRPAmount ¶
ValidateXRPAmount validates an XRP amount
func ValidateXRPDestinationTag ¶
ValidateXRPDestinationTag validates a destination tag
func ValidateXRPFlags ¶
ValidateXRPFlags validates XRP transaction flags
func ValidateXRPLastLedgerSequence ¶
ValidateXRPLastLedgerSequence validates a last ledger sequence
func ValidateXRPSequence ¶
ValidateXRPSequence validates an XRP sequence number
func ValidateXRPSourceTag ¶
ValidateXRPSourceTag validates a source tag
Types ¶
type XRPChain ¶
type XRPChain struct {
*chain_abstraction.BaseChain
}
XRPChain implements the Chain interface for XRP (Ripple) blockchain
func (*XRPChain) BuildSigningInput ¶
func (c *XRPChain) BuildSigningInput( account string, sequence uint32, fee int64, lastLedgerSequence uint32, destination string, amount int64, destinationTag *uint64, sourceTag *uint64, flags *uint64, ) (*ripple.SigningInput, error)
BuildSigningInput builds a signing input from individual parameters
func (*XRPChain) BuildSigningInputFromRequest ¶
func (c *XRPChain) BuildSigningInputFromRequest(request *XRPTransferRequest) (*ripple.SigningInput, error)
BuildSigningInputFromRequest builds a signing input from a transfer request
func (*XRPChain) CompileTransaction ¶
func (c *XRPChain) CompileTransaction(txInput *chain_abstraction.TransactionInput, signatures [][]byte, publicKeys [][]byte) ([]byte, error)
CompileTransaction compiles a transaction with external signatures
func (*XRPChain) CreateAndSignTransaction ¶
CreateAndSignTransaction creates and signs a transaction directly
func (*XRPChain) GetPreimageHash ¶
func (c *XRPChain) GetPreimageHash(txInput *chain_abstraction.TransactionInput) ([]byte, []byte, error)
GetPreimageHash gets the preimage hash for external signing
func (*XRPChain) GetPublicKeyFromPrivateKey ¶
GetPublicKeyFromPrivateKey derives a public key from a private key
func (*XRPChain) GetTransactionHash ¶
GetTransactionHash calculates the transaction hash
func (*XRPChain) PrepareTransaction ¶
func (c *XRPChain) PrepareTransaction(input interface{}) (*chain_abstraction.TransactionInput, error)
PrepareTransaction prepares a transaction for external signing
func (*XRPChain) ValidateTransactionInput ¶
ValidateTransactionInput validates XRP transaction input
type XRPTransferRequest ¶
type XRPTransferRequest struct { Account string `json:"account" validate:"required"` Sequence uint32 `json:"sequence" validate:"required"` Fee int64 `json:"fee" validate:"required,min=1"` LastLedgerSequence uint32 `json:"last_ledger_sequence" validate:"required"` Destination string `json:"destination" validate:"required"` Amount int64 `json:"amount" validate:"required,min=1"` DestinationTag *uint64 `json:"destination_tag,omitempty"` SourceTag *uint64 `json:"source_tag,omitempty"` Flags *uint64 `json:"flags,omitempty"` }
XRPTransferRequest represents a request to transfer XRP
func NewXRPTransferRequest ¶
func NewXRPTransferRequest() *XRPTransferRequest
NewXRPTransferRequest creates a new XRP transfer request
func (*XRPTransferRequest) SetAccount ¶
func (r *XRPTransferRequest) SetAccount(account string) *XRPTransferRequest
SetAccount sets the account field
func (*XRPTransferRequest) SetAmount ¶
func (r *XRPTransferRequest) SetAmount(amount int64) *XRPTransferRequest
SetAmount sets the amount field
func (*XRPTransferRequest) SetDestination ¶
func (r *XRPTransferRequest) SetDestination(destination string) *XRPTransferRequest
SetDestination sets the destination field
func (*XRPTransferRequest) SetDestinationTag ¶
func (r *XRPTransferRequest) SetDestinationTag(destinationTag uint64) *XRPTransferRequest
SetDestinationTag sets the destination tag field
func (*XRPTransferRequest) SetFee ¶
func (r *XRPTransferRequest) SetFee(fee int64) *XRPTransferRequest
SetFee sets the fee field
func (*XRPTransferRequest) SetFlags ¶
func (r *XRPTransferRequest) SetFlags(flags uint64) *XRPTransferRequest
SetFlags sets the flags field
func (*XRPTransferRequest) SetLastLedgerSequence ¶
func (r *XRPTransferRequest) SetLastLedgerSequence(lastLedgerSequence uint32) *XRPTransferRequest
SetLastLedgerSequence sets the last ledger sequence field
func (*XRPTransferRequest) SetSequence ¶
func (r *XRPTransferRequest) SetSequence(sequence uint32) *XRPTransferRequest
SetSequence sets the sequence field
func (*XRPTransferRequest) SetSourceTag ¶
func (r *XRPTransferRequest) SetSourceTag(sourceTag uint64) *XRPTransferRequest
SetSourceTag sets the source tag field
func (*XRPTransferRequest) Validate ¶
func (r *XRPTransferRequest) Validate() error
Validate validates the XRP transfer request