walletrpc

package
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2019 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DisableLog

func DisableLog()

DisableLog disables all library log output. Logging output is disabled by by default until UseLogger is called.

func RegisterWalletKitServer

func RegisterWalletKitServer(s *grpc.Server, srv WalletKitServer)

func UseLogger

func UseLogger(logger btclog.Logger)

UseLogger uses a specified Logger to output package logging info. This should be used in preference to SetLogWriter if the caller is also using btclog.

Types

type AddrRequest

type AddrRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*AddrRequest) Descriptor

func (*AddrRequest) Descriptor() ([]byte, []int)

func (*AddrRequest) ProtoMessage

func (*AddrRequest) ProtoMessage()

func (*AddrRequest) Reset

func (m *AddrRequest) Reset()

func (*AddrRequest) String

func (m *AddrRequest) String() string

func (*AddrRequest) XXX_DiscardUnknown

func (m *AddrRequest) XXX_DiscardUnknown()

func (*AddrRequest) XXX_Marshal

func (m *AddrRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AddrRequest) XXX_Merge

func (dst *AddrRequest) XXX_Merge(src proto.Message)

func (*AddrRequest) XXX_Size

func (m *AddrRequest) XXX_Size() int

func (*AddrRequest) XXX_Unmarshal

func (m *AddrRequest) XXX_Unmarshal(b []byte) error

type AddrResponse

type AddrResponse struct {
	// *
	// The address encoded using a bech32 format.
	Addr                 string   `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*AddrResponse) Descriptor

func (*AddrResponse) Descriptor() ([]byte, []int)

func (*AddrResponse) GetAddr

func (m *AddrResponse) GetAddr() string

func (*AddrResponse) ProtoMessage

func (*AddrResponse) ProtoMessage()

func (*AddrResponse) Reset

func (m *AddrResponse) Reset()

func (*AddrResponse) String

func (m *AddrResponse) String() string

func (*AddrResponse) XXX_DiscardUnknown

func (m *AddrResponse) XXX_DiscardUnknown()

func (*AddrResponse) XXX_Marshal

func (m *AddrResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AddrResponse) XXX_Merge

func (dst *AddrResponse) XXX_Merge(src proto.Message)

func (*AddrResponse) XXX_Size

func (m *AddrResponse) XXX_Size() int

func (*AddrResponse) XXX_Unmarshal

func (m *AddrResponse) XXX_Unmarshal(b []byte) error

type Config

type Config struct{}

Config is the primary configuration struct for the WalletKit RPC server. When the server isn't active (via the build flag), callers outside this package will see this shell of a config file.

type EstimateFeeRequest

type EstimateFeeRequest struct {
	// *
	// The number of confirmations to shoot for when estimating the fee.
	ConfTarget           int32    `protobuf:"varint,1,opt,name=conf_target,json=confTarget,proto3" json:"conf_target,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*EstimateFeeRequest) Descriptor

func (*EstimateFeeRequest) Descriptor() ([]byte, []int)

func (*EstimateFeeRequest) GetConfTarget

func (m *EstimateFeeRequest) GetConfTarget() int32

func (*EstimateFeeRequest) ProtoMessage

func (*EstimateFeeRequest) ProtoMessage()

func (*EstimateFeeRequest) Reset

func (m *EstimateFeeRequest) Reset()

func (*EstimateFeeRequest) String

func (m *EstimateFeeRequest) String() string

func (*EstimateFeeRequest) XXX_DiscardUnknown

func (m *EstimateFeeRequest) XXX_DiscardUnknown()

func (*EstimateFeeRequest) XXX_Marshal

func (m *EstimateFeeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EstimateFeeRequest) XXX_Merge

func (dst *EstimateFeeRequest) XXX_Merge(src proto.Message)

func (*EstimateFeeRequest) XXX_Size

func (m *EstimateFeeRequest) XXX_Size() int

func (*EstimateFeeRequest) XXX_Unmarshal

func (m *EstimateFeeRequest) XXX_Unmarshal(b []byte) error

type EstimateFeeResponse

type EstimateFeeResponse struct {
	// *
	// The amount of satoshis per kw that should be used in order to reach the
	// confirmation target in the request.
	SatPerKw             int64    `protobuf:"varint,1,opt,name=sat_per_kw,json=satPerKw,proto3" json:"sat_per_kw,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*EstimateFeeResponse) Descriptor

func (*EstimateFeeResponse) Descriptor() ([]byte, []int)

func (*EstimateFeeResponse) GetSatPerKw

func (m *EstimateFeeResponse) GetSatPerKw() int64

func (*EstimateFeeResponse) ProtoMessage

func (*EstimateFeeResponse) ProtoMessage()

func (*EstimateFeeResponse) Reset

func (m *EstimateFeeResponse) Reset()

func (*EstimateFeeResponse) String

func (m *EstimateFeeResponse) String() string

func (*EstimateFeeResponse) XXX_DiscardUnknown

func (m *EstimateFeeResponse) XXX_DiscardUnknown()

func (*EstimateFeeResponse) XXX_Marshal

func (m *EstimateFeeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EstimateFeeResponse) XXX_Merge

func (dst *EstimateFeeResponse) XXX_Merge(src proto.Message)

func (*EstimateFeeResponse) XXX_Size

func (m *EstimateFeeResponse) XXX_Size() int

func (*EstimateFeeResponse) XXX_Unmarshal

func (m *EstimateFeeResponse) XXX_Unmarshal(b []byte) error

type KeyReq

type KeyReq struct {
	// *
	// Is the key finger print of the root pubkey that this request is targeting.
	// This allows the WalletKit to possibly serve out keys for multiple HD chains
	// via public derivation.
	KeyFingerPrint int32 `protobuf:"varint,1,opt,name=key_finger_print,json=keyFingerPrint,proto3" json:"key_finger_print,omitempty"`
	// *
	// The target key family to derive a key from. In other contexts, this is
	// known as the "account".
	KeyFamily            int32    `protobuf:"varint,2,opt,name=key_family,json=keyFamily,proto3" json:"key_family,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*KeyReq) Descriptor

func (*KeyReq) Descriptor() ([]byte, []int)

func (*KeyReq) GetKeyFamily

func (m *KeyReq) GetKeyFamily() int32

func (*KeyReq) GetKeyFingerPrint

func (m *KeyReq) GetKeyFingerPrint() int32

func (*KeyReq) ProtoMessage

func (*KeyReq) ProtoMessage()

func (*KeyReq) Reset

func (m *KeyReq) Reset()

func (*KeyReq) String

func (m *KeyReq) String() string

func (*KeyReq) XXX_DiscardUnknown

func (m *KeyReq) XXX_DiscardUnknown()

func (*KeyReq) XXX_Marshal

func (m *KeyReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*KeyReq) XXX_Merge

func (dst *KeyReq) XXX_Merge(src proto.Message)

func (*KeyReq) XXX_Size

func (m *KeyReq) XXX_Size() int

func (*KeyReq) XXX_Unmarshal

func (m *KeyReq) XXX_Unmarshal(b []byte) error

type PublishResponse

type PublishResponse struct {
	// *
	// If blank, then no error occurred and the transaction was successfully
	// published. If not the empty string, then a string representation of the
	// broadcast error.
	//
	// TODO(roasbeef): map to a proper enum type
	PublishError         string   `protobuf:"bytes,1,opt,name=publish_error,json=publishError,proto3" json:"publish_error,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*PublishResponse) Descriptor

func (*PublishResponse) Descriptor() ([]byte, []int)

func (*PublishResponse) GetPublishError

func (m *PublishResponse) GetPublishError() string

func (*PublishResponse) ProtoMessage

func (*PublishResponse) ProtoMessage()

func (*PublishResponse) Reset

func (m *PublishResponse) Reset()

func (*PublishResponse) String

func (m *PublishResponse) String() string

func (*PublishResponse) XXX_DiscardUnknown

func (m *PublishResponse) XXX_DiscardUnknown()

func (*PublishResponse) XXX_Marshal

func (m *PublishResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*PublishResponse) XXX_Merge

func (dst *PublishResponse) XXX_Merge(src proto.Message)

func (*PublishResponse) XXX_Size

func (m *PublishResponse) XXX_Size() int

func (*PublishResponse) XXX_Unmarshal

func (m *PublishResponse) XXX_Unmarshal(b []byte) error

type SendOutputsRequest

type SendOutputsRequest struct {
	// *
	// The number of satoshis per kilo weight that should be used when crafting
	// this transaction.
	SatPerKw int64 `protobuf:"varint,1,opt,name=sat_per_kw,json=satPerKw,proto3" json:"sat_per_kw,omitempty"`
	// *
	// A slice of the outputs that should be created in the transaction produced.
	Outputs              []*signrpc.TxOut `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*SendOutputsRequest) Descriptor

func (*SendOutputsRequest) Descriptor() ([]byte, []int)

func (*SendOutputsRequest) GetOutputs

func (m *SendOutputsRequest) GetOutputs() []*signrpc.TxOut

func (*SendOutputsRequest) GetSatPerKw

func (m *SendOutputsRequest) GetSatPerKw() int64

func (*SendOutputsRequest) ProtoMessage

func (*SendOutputsRequest) ProtoMessage()

func (*SendOutputsRequest) Reset

func (m *SendOutputsRequest) Reset()

func (*SendOutputsRequest) String

func (m *SendOutputsRequest) String() string

func (*SendOutputsRequest) XXX_DiscardUnknown

func (m *SendOutputsRequest) XXX_DiscardUnknown()

func (*SendOutputsRequest) XXX_Marshal

func (m *SendOutputsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SendOutputsRequest) XXX_Merge

func (dst *SendOutputsRequest) XXX_Merge(src proto.Message)

func (*SendOutputsRequest) XXX_Size

func (m *SendOutputsRequest) XXX_Size() int

func (*SendOutputsRequest) XXX_Unmarshal

func (m *SendOutputsRequest) XXX_Unmarshal(b []byte) error

type SendOutputsResponse

type SendOutputsResponse struct {
	// *
	// The serialized transaction sent out on the network.
	RawTx                []byte   `protobuf:"bytes,1,opt,name=raw_tx,json=rawTx,proto3" json:"raw_tx,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*SendOutputsResponse) Descriptor

func (*SendOutputsResponse) Descriptor() ([]byte, []int)

func (*SendOutputsResponse) GetRawTx

func (m *SendOutputsResponse) GetRawTx() []byte

func (*SendOutputsResponse) ProtoMessage

func (*SendOutputsResponse) ProtoMessage()

func (*SendOutputsResponse) Reset

func (m *SendOutputsResponse) Reset()

func (*SendOutputsResponse) String

func (m *SendOutputsResponse) String() string

func (*SendOutputsResponse) XXX_DiscardUnknown

func (m *SendOutputsResponse) XXX_DiscardUnknown()

func (*SendOutputsResponse) XXX_Marshal

func (m *SendOutputsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SendOutputsResponse) XXX_Merge

func (dst *SendOutputsResponse) XXX_Merge(src proto.Message)

func (*SendOutputsResponse) XXX_Size

func (m *SendOutputsResponse) XXX_Size() int

func (*SendOutputsResponse) XXX_Unmarshal

func (m *SendOutputsResponse) XXX_Unmarshal(b []byte) error

type Transaction

type Transaction struct {
	// *
	// The raw serialized transaction.
	TxHex                []byte   `protobuf:"bytes,1,opt,name=tx_hex,json=txHex,proto3" json:"tx_hex,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*Transaction) Descriptor

func (*Transaction) Descriptor() ([]byte, []int)

func (*Transaction) GetTxHex

func (m *Transaction) GetTxHex() []byte

func (*Transaction) ProtoMessage

func (*Transaction) ProtoMessage()

func (*Transaction) Reset

func (m *Transaction) Reset()

func (*Transaction) String

func (m *Transaction) String() string

func (*Transaction) XXX_DiscardUnknown

func (m *Transaction) XXX_DiscardUnknown()

func (*Transaction) XXX_Marshal

func (m *Transaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Transaction) XXX_Merge

func (dst *Transaction) XXX_Merge(src proto.Message)

func (*Transaction) XXX_Size

func (m *Transaction) XXX_Size() int

func (*Transaction) XXX_Unmarshal

func (m *Transaction) XXX_Unmarshal(b []byte) error

type WalletKitClient

type WalletKitClient interface {
	// *
	// DeriveNextKey attempts to derive the *next* key within the key family
	// (account in BIP43) specified. This method should return the next external
	// child within this branch.
	DeriveNextKey(ctx context.Context, in *KeyReq, opts ...grpc.CallOption) (*signrpc.KeyDescriptor, error)
	// *
	// DeriveKey attempts to derive an arbitrary key specified by the passed
	// KeyLocator.
	DeriveKey(ctx context.Context, in *signrpc.KeyLocator, opts ...grpc.CallOption) (*signrpc.KeyDescriptor, error)
	// *
	// NextAddr returns the next unused address within the wallet.
	NextAddr(ctx context.Context, in *AddrRequest, opts ...grpc.CallOption) (*AddrResponse, error)
	// *
	// PublishTransaction attempts to publish the passed transaction to the
	// network. Once this returns without an error, the wallet will continually
	// attempt to re-broadcast the transaction on start up, until it enters the
	// chain.
	PublishTransaction(ctx context.Context, in *Transaction, opts ...grpc.CallOption) (*PublishResponse, error)
	// *
	// SendOutputs is similar to the existing sendmany call in Bitcoind, and
	// allows the caller to create a transaction that sends to several outputs at
	// once. This is ideal when wanting to batch create a set of transactions.
	SendOutputs(ctx context.Context, in *SendOutputsRequest, opts ...grpc.CallOption) (*SendOutputsResponse, error)
	// *
	// EstimateFee attempts to query the internal fee estimator of the wallet to
	// determine the fee (in sat/kw) to attach to a transaction in order to
	// achieve the confirmation target.
	EstimateFee(ctx context.Context, in *EstimateFeeRequest, opts ...grpc.CallOption) (*EstimateFeeResponse, error)
}

WalletKitClient is the client API for WalletKit service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewWalletKitClient

func NewWalletKitClient(cc *grpc.ClientConn) WalletKitClient

type WalletKitServer

type WalletKitServer interface {
	// *
	// DeriveNextKey attempts to derive the *next* key within the key family
	// (account in BIP43) specified. This method should return the next external
	// child within this branch.
	DeriveNextKey(context.Context, *KeyReq) (*signrpc.KeyDescriptor, error)
	// *
	// DeriveKey attempts to derive an arbitrary key specified by the passed
	// KeyLocator.
	DeriveKey(context.Context, *signrpc.KeyLocator) (*signrpc.KeyDescriptor, error)
	// *
	// NextAddr returns the next unused address within the wallet.
	NextAddr(context.Context, *AddrRequest) (*AddrResponse, error)
	// *
	// PublishTransaction attempts to publish the passed transaction to the
	// network. Once this returns without an error, the wallet will continually
	// attempt to re-broadcast the transaction on start up, until it enters the
	// chain.
	PublishTransaction(context.Context, *Transaction) (*PublishResponse, error)
	// *
	// SendOutputs is similar to the existing sendmany call in Bitcoind, and
	// allows the caller to create a transaction that sends to several outputs at
	// once. This is ideal when wanting to batch create a set of transactions.
	SendOutputs(context.Context, *SendOutputsRequest) (*SendOutputsResponse, error)
	// *
	// EstimateFee attempts to query the internal fee estimator of the wallet to
	// determine the fee (in sat/kw) to attach to a transaction in order to
	// achieve the confirmation target.
	EstimateFee(context.Context, *EstimateFeeRequest) (*EstimateFeeResponse, error)
}

WalletKitServer is the server API for WalletKit service.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL