Documentation ¶
Overview ¶
Package app links together all the various components to construct the bnsd app.
Index ¶
- Variables
- func Application(name string, h weave.Handler, tx weave.TxDecoder, dbPath string, debug bool) (app.BaseApp, error)
- func Authenticator() x.Authenticator
- func Chain(authFn x.Authenticator) app.Decorators
- func CommitKVStore(dbPath string) (weave.CommitKVStore, error)
- func DecorateApp(application app.BaseApp, logger log.Logger) app.BaseApp
- func Examples() []commands.Example
- func GenInitOptions(args []string) (json.RawMessage, error)
- func GenerateApp(home string, logger log.Logger, debug bool) (abci.Application, error)
- func GenerateCoinKey() (weave.Address, string, error)
- func InlineApp(kv weave.CommitKVStore, logger log.Logger, debug bool) abci.Application
- func QueryRouter() weave.QueryRouter
- func RegisterNft()
- func Router(authFn x.Authenticator, issuer weave.Address, nftBuckets map[string]orm.Bucket) app.Router
- func Stack(issuer weave.Address, nftBuckets map[string]orm.Bucket) weave.Handler
- func TxDecoder(bz []byte) (weave.Tx, error)
- type Tx
- func (*Tx) Descriptor() ([]byte, []int)
- func (tx *Tx) Fee(payer weave.Address, fee coin.Coin)
- func (m *Tx) GetAddApprovalMsg() *nft.AddApprovalMsg
- func (m *Tx) GetAddUsernameAddressNftMsg() *username.AddChainAddressMsg
- func (m *Tx) GetCreateContractMsg() *multisig.CreateContractMsg
- func (m *Tx) GetCreateEscrowMsg() *escrow.CreateEscrowMsg
- func (m *Tx) GetDistributeMsg() *distribution.DistributeMsg
- func (m *Tx) GetFees() *cash.FeeInfo
- func (m *Tx) GetIssueUsernameNftMsg() *username.IssueTokenMsg
- func (tx *Tx) GetMsg() (weave.Msg, error)
- func (m *Tx) GetMultisig() [][]byte
- func (m *Tx) GetNewRevenueMsg() *distribution.NewRevenueMsg
- func (m *Tx) GetNewTokenInfoMsg() *currency.NewTokenInfoMsg
- func (m *Tx) GetPreimage() []byte
- func (m *Tx) GetReleaseEscrowMsg() *escrow.ReleaseEscrowMsg
- func (m *Tx) GetRemoveApprovalMsg() *nft.RemoveApprovalMsg
- func (m *Tx) GetRemoveUsernameAddressMsg() *username.RemoveChainAddressMsg
- func (m *Tx) GetResetRevenueMsg() *distribution.ResetRevenueMsg
- func (m *Tx) GetReturnEscrowMsg() *escrow.ReturnEscrowMsg
- func (m *Tx) GetSendMsg() *cash.SendMsg
- func (m *Tx) GetSetValidatorsMsg() *validators.SetValidatorsMsg
- func (tx *Tx) GetSignBytes() ([]byte, error)
- func (m *Tx) GetSignatures() []*sigs.StdSignature
- func (m *Tx) GetSum() isTx_Sum
- func (m *Tx) GetUpdateContractMsg() *multisig.UpdateContractMsg
- func (m *Tx) GetUpdateEscrowMsg() *escrow.UpdateEscrowPartiesMsg
- func (m *Tx) Marshal() (dAtA []byte, err error)
- func (m *Tx) MarshalTo(dAtA []byte) (int, error)
- func (*Tx) ProtoMessage()
- func (m *Tx) Reset()
- func (m *Tx) Size() (n int)
- func (m *Tx) String() string
- func (m *Tx) Unmarshal(dAtA []byte) error
- func (m *Tx) XXX_DiscardUnknown()
- func (m *Tx) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Tx) XXX_Merge(src proto.Message)
- func (*Tx) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- func (m *Tx) XXX_Size() int
- func (m *Tx) XXX_Unmarshal(b []byte) error
- type Tx_AddApprovalMsg
- type Tx_AddUsernameAddressNftMsg
- type Tx_CreateContractMsg
- type Tx_CreateEscrowMsg
- type Tx_DistributeMsg
- type Tx_IssueUsernameNftMsg
- type Tx_NewRevenueMsg
- type Tx_NewTokenInfoMsg
- type Tx_ReleaseEscrowMsg
- type Tx_RemoveApprovalMsg
- type Tx_RemoveUsernameAddressMsg
- type Tx_ResetRevenueMsg
- type Tx_ReturnEscrowMsg
- type Tx_SendMsg
- type Tx_SetValidatorsMsg
- type Tx_UpdateContractMsg
- type Tx_UpdateEscrowMsg
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidLengthCodec = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowCodec = fmt.Errorf("proto: integer overflow") )
Functions ¶
func Application ¶
func Application(name string, h weave.Handler, tx weave.TxDecoder, dbPath string, debug bool) (app.BaseApp, error)
Application constructs a basic ABCI application with the given arguments. If you are not sure what to use for the Handler, just use Stack().
func Authenticator ¶
func Authenticator() x.Authenticator
Authenticator returns the typical authentication, just using public key signatures
func Chain ¶
func Chain(authFn x.Authenticator) app.Decorators
Chain returns a chain of decorators, to handle authentication, fees, logging, and recovery
func CommitKVStore ¶
func CommitKVStore(dbPath string) (weave.CommitKVStore, error)
CommitKVStore returns an initialized KVStore that persists the data to the named path.
func DecorateApp ¶ added in v0.11.2
DecorateApp adds initializers and Logger to an Application
func GenInitOptions ¶
func GenInitOptions(args []string) (json.RawMessage, error)
GenInitOptions will produce some basic options for one rich account, to use for dev mode
You can set
func GenerateApp ¶
GenerateApp is used to create a stub for server/start.go command
func GenerateCoinKey ¶
GenerateCoinKey returns the address of a public key, along with a json representation of the keys. You can give coins to this address and import the keys in the js client to use them
func InlineApp ¶ added in v0.11.2
func InlineApp(kv weave.CommitKVStore, logger log.Logger, debug bool) abci.Application
InlineApp will take a previously prepared CommitStore and return a complete Application
func QueryRouter ¶
func QueryRouter() weave.QueryRouter
QueryRouter returns a default query router, allowing access to "/wallets", "/auth", "/", "/escrows", "/nft/usernames", "/nft/blockchains", "/nft/tickers", "/validators"
func RegisterNft ¶
func RegisterNft()
Register nft types and actions for shared action handling via base handler
func Router ¶
func Router(authFn x.Authenticator, issuer weave.Address, nftBuckets map[string]orm.Bucket) app.Router
Router returns a default router, only dispatching to the cash.SendMsg
Types ¶
type Tx ¶
type Tx struct { Fees *cash.FeeInfo `protobuf:"bytes,1,opt,name=fees,proto3" json:"fees,omitempty"` Signatures []*sigs.StdSignature `protobuf:"bytes,2,rep,name=signatures,proto3" json:"signatures,omitempty"` // Preimage for hashlock. Preimage []byte `protobuf:"bytes,3,opt,name=preimage,proto3" json:"preimage,omitempty"` // ID of a multisig contract. Multisig [][]byte `protobuf:"bytes,4,rep,name=multisig,proto3" json:"multisig,omitempty"` // msg is a sum type over all allowed messages on this chain. // // Types that are valid to be assigned to Sum: // *Tx_SendMsg // *Tx_CreateEscrowMsg // *Tx_ReleaseEscrowMsg // *Tx_ReturnEscrowMsg // *Tx_UpdateEscrowMsg // *Tx_CreateContractMsg // *Tx_UpdateContractMsg // *Tx_SetValidatorsMsg // *Tx_NewTokenInfoMsg // *Tx_AddApprovalMsg // *Tx_RemoveApprovalMsg // *Tx_IssueUsernameNftMsg // *Tx_AddUsernameAddressNftMsg // *Tx_RemoveUsernameAddressMsg // *Tx_NewRevenueMsg // *Tx_DistributeMsg // *Tx_ResetRevenueMsg Sum isTx_Sum `protobuf_oneof:"sum"` }
Tx contains the message.
When extending Tx, follow the rules:
- range 1-50 is reserved for middlewares,
- range 51-inf is reserved for different message types,
- keep the same numbers for the same message types in both bcpd and bnsd applications. For example, FeeInfo field is used by both and indexed at first position. Skip unused fields (leave index unused or comment out for clarity).
func (*Tx) Descriptor ¶
func (*Tx) GetAddApprovalMsg ¶
func (m *Tx) GetAddApprovalMsg() *nft.AddApprovalMsg
func (*Tx) GetAddUsernameAddressNftMsg ¶
func (m *Tx) GetAddUsernameAddressNftMsg() *username.AddChainAddressMsg
func (*Tx) GetCreateContractMsg ¶
func (m *Tx) GetCreateContractMsg() *multisig.CreateContractMsg
func (*Tx) GetCreateEscrowMsg ¶
func (m *Tx) GetCreateEscrowMsg() *escrow.CreateEscrowMsg
func (*Tx) GetDistributeMsg ¶ added in v0.12.0
func (m *Tx) GetDistributeMsg() *distribution.DistributeMsg
func (*Tx) GetIssueUsernameNftMsg ¶
func (m *Tx) GetIssueUsernameNftMsg() *username.IssueTokenMsg
func (*Tx) GetMultisig ¶
func (*Tx) GetNewRevenueMsg ¶ added in v0.12.0
func (m *Tx) GetNewRevenueMsg() *distribution.NewRevenueMsg
func (*Tx) GetNewTokenInfoMsg ¶ added in v0.10.0
func (m *Tx) GetNewTokenInfoMsg() *currency.NewTokenInfoMsg
func (*Tx) GetPreimage ¶
func (*Tx) GetReleaseEscrowMsg ¶
func (m *Tx) GetReleaseEscrowMsg() *escrow.ReleaseEscrowMsg
func (*Tx) GetRemoveApprovalMsg ¶
func (m *Tx) GetRemoveApprovalMsg() *nft.RemoveApprovalMsg
func (*Tx) GetRemoveUsernameAddressMsg ¶
func (m *Tx) GetRemoveUsernameAddressMsg() *username.RemoveChainAddressMsg
func (*Tx) GetResetRevenueMsg ¶ added in v0.12.0
func (m *Tx) GetResetRevenueMsg() *distribution.ResetRevenueMsg
func (*Tx) GetReturnEscrowMsg ¶
func (m *Tx) GetReturnEscrowMsg() *escrow.ReturnEscrowMsg
func (*Tx) GetSendMsg ¶
func (*Tx) GetSetValidatorsMsg ¶
func (m *Tx) GetSetValidatorsMsg() *validators.SetValidatorsMsg
func (*Tx) GetSignBytes ¶
GetSignBytes returns the bytes to sign...
func (*Tx) GetSignatures ¶
func (m *Tx) GetSignatures() []*sigs.StdSignature
func (*Tx) GetUpdateContractMsg ¶
func (m *Tx) GetUpdateContractMsg() *multisig.UpdateContractMsg
func (*Tx) GetUpdateEscrowMsg ¶
func (m *Tx) GetUpdateEscrowMsg() *escrow.UpdateEscrowPartiesMsg
func (*Tx) ProtoMessage ¶
func (*Tx) ProtoMessage()
func (*Tx) XXX_DiscardUnknown ¶ added in v0.12.0
func (m *Tx) XXX_DiscardUnknown()
func (*Tx) XXX_Marshal ¶ added in v0.12.0
func (*Tx) XXX_OneofFuncs ¶
func (*Tx) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
func (*Tx) XXX_Unmarshal ¶ added in v0.12.0
type Tx_AddApprovalMsg ¶
type Tx_AddApprovalMsg struct {
AddApprovalMsg *nft.AddApprovalMsg `protobuf:"bytes,61,opt,name=add_approval_msg,json=addApprovalMsg,proto3,oneof"`
}
func (*Tx_AddApprovalMsg) MarshalTo ¶
func (m *Tx_AddApprovalMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_AddApprovalMsg) Size ¶
func (m *Tx_AddApprovalMsg) Size() (n int)
type Tx_AddUsernameAddressNftMsg ¶
type Tx_AddUsernameAddressNftMsg struct {
AddUsernameAddressNftMsg *username.AddChainAddressMsg `protobuf:"bytes,64,opt,name=add_username_address_nft_msg,json=addUsernameAddressNftMsg,proto3,oneof"`
}
func (*Tx_AddUsernameAddressNftMsg) MarshalTo ¶
func (m *Tx_AddUsernameAddressNftMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_AddUsernameAddressNftMsg) Size ¶
func (m *Tx_AddUsernameAddressNftMsg) Size() (n int)
type Tx_CreateContractMsg ¶
type Tx_CreateContractMsg struct {
CreateContractMsg *multisig.CreateContractMsg `protobuf:"bytes,56,opt,name=create_contract_msg,json=createContractMsg,proto3,oneof"`
}
func (*Tx_CreateContractMsg) MarshalTo ¶
func (m *Tx_CreateContractMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_CreateContractMsg) Size ¶
func (m *Tx_CreateContractMsg) Size() (n int)
type Tx_CreateEscrowMsg ¶
type Tx_CreateEscrowMsg struct {
CreateEscrowMsg *escrow.CreateEscrowMsg `protobuf:"bytes,52,opt,name=create_escrow_msg,json=createEscrowMsg,proto3,oneof"`
}
func (*Tx_CreateEscrowMsg) MarshalTo ¶
func (m *Tx_CreateEscrowMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_CreateEscrowMsg) Size ¶
func (m *Tx_CreateEscrowMsg) Size() (n int)
type Tx_DistributeMsg ¶ added in v0.12.0
type Tx_DistributeMsg struct {
DistributeMsg *distribution.DistributeMsg `protobuf:"bytes,67,opt,name=distribute_msg,json=distributeMsg,proto3,oneof"`
}
func (*Tx_DistributeMsg) MarshalTo ¶ added in v0.12.0
func (m *Tx_DistributeMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_DistributeMsg) Size ¶ added in v0.12.0
func (m *Tx_DistributeMsg) Size() (n int)
type Tx_IssueUsernameNftMsg ¶
type Tx_IssueUsernameNftMsg struct {
IssueUsernameNftMsg *username.IssueTokenMsg `protobuf:"bytes,63,opt,name=issue_username_nft_msg,json=issueUsernameNftMsg,proto3,oneof"`
}
func (*Tx_IssueUsernameNftMsg) MarshalTo ¶
func (m *Tx_IssueUsernameNftMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_IssueUsernameNftMsg) Size ¶
func (m *Tx_IssueUsernameNftMsg) Size() (n int)
type Tx_NewRevenueMsg ¶ added in v0.12.0
type Tx_NewRevenueMsg struct {
NewRevenueMsg *distribution.NewRevenueMsg `protobuf:"bytes,66,opt,name=new_revenue_msg,json=newRevenueMsg,proto3,oneof"`
}
func (*Tx_NewRevenueMsg) MarshalTo ¶ added in v0.12.0
func (m *Tx_NewRevenueMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_NewRevenueMsg) Size ¶ added in v0.12.0
func (m *Tx_NewRevenueMsg) Size() (n int)
type Tx_NewTokenInfoMsg ¶ added in v0.10.0
type Tx_NewTokenInfoMsg struct {
NewTokenInfoMsg *currency.NewTokenInfoMsg `protobuf:"bytes,59,opt,name=new_token_info_msg,json=newTokenInfoMsg,proto3,oneof"`
}
func (*Tx_NewTokenInfoMsg) MarshalTo ¶ added in v0.10.0
func (m *Tx_NewTokenInfoMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_NewTokenInfoMsg) Size ¶ added in v0.10.0
func (m *Tx_NewTokenInfoMsg) Size() (n int)
type Tx_ReleaseEscrowMsg ¶
type Tx_ReleaseEscrowMsg struct {
ReleaseEscrowMsg *escrow.ReleaseEscrowMsg `protobuf:"bytes,53,opt,name=release_escrow_msg,json=releaseEscrowMsg,proto3,oneof"`
}
func (*Tx_ReleaseEscrowMsg) MarshalTo ¶
func (m *Tx_ReleaseEscrowMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_ReleaseEscrowMsg) Size ¶
func (m *Tx_ReleaseEscrowMsg) Size() (n int)
type Tx_RemoveApprovalMsg ¶
type Tx_RemoveApprovalMsg struct {
RemoveApprovalMsg *nft.RemoveApprovalMsg `protobuf:"bytes,62,opt,name=remove_approval_msg,json=removeApprovalMsg,proto3,oneof"`
}
func (*Tx_RemoveApprovalMsg) MarshalTo ¶
func (m *Tx_RemoveApprovalMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_RemoveApprovalMsg) Size ¶
func (m *Tx_RemoveApprovalMsg) Size() (n int)
type Tx_RemoveUsernameAddressMsg ¶
type Tx_RemoveUsernameAddressMsg struct {
RemoveUsernameAddressMsg *username.RemoveChainAddressMsg `protobuf:"bytes,65,opt,name=remove_username_address_msg,json=removeUsernameAddressMsg,proto3,oneof"`
}
func (*Tx_RemoveUsernameAddressMsg) MarshalTo ¶
func (m *Tx_RemoveUsernameAddressMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_RemoveUsernameAddressMsg) Size ¶
func (m *Tx_RemoveUsernameAddressMsg) Size() (n int)
type Tx_ResetRevenueMsg ¶ added in v0.12.0
type Tx_ResetRevenueMsg struct {
ResetRevenueMsg *distribution.ResetRevenueMsg `protobuf:"bytes,68,opt,name=reset_revenue_msg,json=resetRevenueMsg,proto3,oneof"`
}
func (*Tx_ResetRevenueMsg) MarshalTo ¶ added in v0.12.0
func (m *Tx_ResetRevenueMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_ResetRevenueMsg) Size ¶ added in v0.12.0
func (m *Tx_ResetRevenueMsg) Size() (n int)
type Tx_ReturnEscrowMsg ¶
type Tx_ReturnEscrowMsg struct {
ReturnEscrowMsg *escrow.ReturnEscrowMsg `protobuf:"bytes,54,opt,name=return_escrow_msg,json=returnEscrowMsg,proto3,oneof"`
}
func (*Tx_ReturnEscrowMsg) MarshalTo ¶
func (m *Tx_ReturnEscrowMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_ReturnEscrowMsg) Size ¶
func (m *Tx_ReturnEscrowMsg) Size() (n int)
type Tx_SendMsg ¶
type Tx_SendMsg struct {
SendMsg *cash.SendMsg `protobuf:"bytes,51,opt,name=send_msg,json=sendMsg,proto3,oneof"`
}
func (*Tx_SendMsg) Size ¶
func (m *Tx_SendMsg) Size() (n int)
type Tx_SetValidatorsMsg ¶
type Tx_SetValidatorsMsg struct {
SetValidatorsMsg *validators.SetValidatorsMsg `protobuf:"bytes,58,opt,name=set_validators_msg,json=setValidatorsMsg,proto3,oneof"`
}
func (*Tx_SetValidatorsMsg) MarshalTo ¶
func (m *Tx_SetValidatorsMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_SetValidatorsMsg) Size ¶
func (m *Tx_SetValidatorsMsg) Size() (n int)
type Tx_UpdateContractMsg ¶
type Tx_UpdateContractMsg struct {
UpdateContractMsg *multisig.UpdateContractMsg `protobuf:"bytes,57,opt,name=update_contract_msg,json=updateContractMsg,proto3,oneof"`
}
func (*Tx_UpdateContractMsg) MarshalTo ¶
func (m *Tx_UpdateContractMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_UpdateContractMsg) Size ¶
func (m *Tx_UpdateContractMsg) Size() (n int)
type Tx_UpdateEscrowMsg ¶
type Tx_UpdateEscrowMsg struct {
UpdateEscrowMsg *escrow.UpdateEscrowPartiesMsg `protobuf:"bytes,55,opt,name=update_escrow_msg,json=updateEscrowMsg,proto3,oneof"`
}
func (*Tx_UpdateEscrowMsg) MarshalTo ¶
func (m *Tx_UpdateEscrowMsg) MarshalTo(dAtA []byte) (int, error)
func (*Tx_UpdateEscrowMsg) Size ¶
func (m *Tx_UpdateEscrowMsg) Size() (n int)