Documentation
¶
Index ¶
- Constants
- Variables
- func CodeToDefaultMsg(code sdk.CodeType) string
- func ErrDuplicateAddress() sdk.Error
- func ErrDuplicateOrder(orderID string) sdk.Error
- func ErrInavlidAssetAmount() sdk.Error
- func ErrUnknownOrder(orderID string) sdk.Error
- func GetOrderKey(uid []byte) []byte
- func NewHandler(k Keeper) sdk.Handler
- func RegisterWire(cdc *wire.Codec)
- type CancelOrderMsg
- func (msg CancelOrderMsg) Get(key interface{}) (value interface{})
- func (msg CancelOrderMsg) GetSignBytes() []byte
- func (msg CancelOrderMsg) GetSigners() []sdk.Address
- func (msg CancelOrderMsg) String() string
- func (msg CancelOrderMsg) Type() string
- func (msg CancelOrderMsg) ValidateBasic() sdk.Error
- type CompleteOrderMsg
- func (msg CompleteOrderMsg) Get(key interface{}) (value interface{})
- func (msg CompleteOrderMsg) GetSignBytes() []byte
- func (msg CompleteOrderMsg) GetSigners() []sdk.Address
- func (msg CompleteOrderMsg) String() string
- func (msg CompleteOrderMsg) Type() string
- func (msg CompleteOrderMsg) ValidateBasic() sdk.Error
- type ConfirmOrderMsg
- func (msg ConfirmOrderMsg) Get(key interface{}) (value interface{})
- func (msg ConfirmOrderMsg) GetSignBytes() []byte
- func (msg ConfirmOrderMsg) GetSigners() []sdk.Address
- func (msg ConfirmOrderMsg) String() string
- func (msg ConfirmOrderMsg) Type() string
- func (msg ConfirmOrderMsg) ValidateBasic() sdk.Error
- type CreateOrderMsg
- func (msg CreateOrderMsg) Get(key interface{}) (value interface{})
- func (msg CreateOrderMsg) GetSignBytes() []byte
- func (msg CreateOrderMsg) GetSigners() []sdk.Address
- func (msg CreateOrderMsg) String() string
- func (msg CreateOrderMsg) Type() string
- func (msg CreateOrderMsg) ValidateBasic() sdk.Error
- type Keeper
- func (k Keeper) CancelOrder(ctx sdk.Context, msg CancelOrderMsg) (sdk.Tags, sdk.Error)
- func (k Keeper) CompleteOrder(ctx sdk.Context, msg CompleteOrderMsg) (sdk.Tags, sdk.Error)
- func (k Keeper) ConfirmOrder(ctx sdk.Context, msg ConfirmOrderMsg) (sdk.Tags, sdk.Error)
- func (k Keeper) CreateOrder(ctx sdk.Context, msg CreateOrderMsg) (sdk.Tags, sdk.Error)
- type Order
- type OrderStatus
- type TransportedAsset
Constants ¶
const ( CodeDuplicateOrderID sdk.CodeType = iota + 600 CodeUnknownOrder CodeDuplicateAddress CodeInvalidAssetAmount DefaultCodespace sdk.CodespaceType = 10 )
ABCI Response Codes Base SDK reserves 500 - 599.
Variables ¶
var ( // Keys for store prefixes OrderKey = []byte{0x06} // prefix for each key to a candidate )
nolint
Functions ¶
func CodeToDefaultMsg ¶
CodeToDefaultMsg NOTE: Don't stringer this, we'll put better messages in later.
func GetOrderKey ¶
GetOrderKey get the key for the record with address
func RegisterWire ¶
RegisterWire registers concrete types on wire codec
Types ¶
type CancelOrderMsg ¶
type CancelOrderMsg struct { OrderID string `json:"order_id"` // ID of the order to be cancelled Issuer sdk.Address `json:"issuer_id"` // the issuer }
CompleteOrderMsg is sent by the receiver to confirm that the receiver has received the asset from the carrier
func (CancelOrderMsg) Get ¶
func (msg CancelOrderMsg) Get(key interface{}) (value interface{})
func (CancelOrderMsg) GetSignBytes ¶
func (msg CancelOrderMsg) GetSignBytes() []byte
GetSignBytes ...
func (CancelOrderMsg) GetSigners ¶
func (msg CancelOrderMsg) GetSigners() []sdk.Address
func (CancelOrderMsg) String ¶
func (msg CancelOrderMsg) String() string
func (CancelOrderMsg) ValidateBasic ¶
func (msg CancelOrderMsg) ValidateBasic() sdk.Error
ValidateBasic ...
type CompleteOrderMsg ¶
type CompleteOrderMsg struct { OrderID string `json:"order_id"` // ID of the order completed Receiver sdk.Address `json:"receiver_id"` // the receiver, who confirm the completion of the order }
CompleteOrderMsg is sent by the receiver to confirm that the receiver has received the asset from the carrier
func (CompleteOrderMsg) Get ¶
func (msg CompleteOrderMsg) Get(key interface{}) (value interface{})
func (CompleteOrderMsg) GetSignBytes ¶
func (msg CompleteOrderMsg) GetSignBytes() []byte
GetSignBytes ...
func (CompleteOrderMsg) GetSigners ¶
func (msg CompleteOrderMsg) GetSigners() []sdk.Address
func (CompleteOrderMsg) String ¶
func (msg CompleteOrderMsg) String() string
func (CompleteOrderMsg) ValidateBasic ¶
func (msg CompleteOrderMsg) ValidateBasic() sdk.Error
ValidateBasic ...
type ConfirmOrderMsg ¶
type ConfirmOrderMsg struct { OrderID string `json:"order_id"` // ID of the order received Carrier sdk.Address `json:"carrier_id"` // the carrier, who confirms the order }
ReceiveOrderMsg is sent by the carrier to confirm that the carrier has received the asset from the issuer
func (ConfirmOrderMsg) Get ¶
func (msg ConfirmOrderMsg) Get(key interface{}) (value interface{})
func (ConfirmOrderMsg) GetSignBytes ¶
func (msg ConfirmOrderMsg) GetSignBytes() []byte
GetSignBytes ...
func (ConfirmOrderMsg) GetSigners ¶
func (msg ConfirmOrderMsg) GetSigners() []sdk.Address
func (ConfirmOrderMsg) String ¶
func (msg ConfirmOrderMsg) String() string
func (ConfirmOrderMsg) ValidateBasic ¶
func (msg ConfirmOrderMsg) ValidateBasic() sdk.Error
ValidateBasic ...
type CreateOrderMsg ¶
type CreateOrderMsg struct { ID string `json:"id"` // ID of the order, provided by the client TransportedAssets []TransportedAsset `json:"transported_assets"` // The assets to be transported Issuer sdk.Address `json:"issuer"` // The issuer of the order, must also be the owner of the asset (coin) Carrier sdk.Address `json:"carrier"` // The carrier Receiver sdk.Address `json:"receiver"` // The receiver, often a buyer }
CreateOrderMsg is sent by the issuer to construct a new order, all fields are required
func (CreateOrderMsg) Get ¶
func (msg CreateOrderMsg) Get(key interface{}) (value interface{})
func (CreateOrderMsg) GetSignBytes ¶
func (msg CreateOrderMsg) GetSignBytes() []byte
GetSignBytes ...
func (CreateOrderMsg) GetSigners ¶
func (msg CreateOrderMsg) GetSigners() []sdk.Address
func (CreateOrderMsg) String ¶
func (msg CreateOrderMsg) String() string
func (CreateOrderMsg) ValidateBasic ¶
func (msg CreateOrderMsg) ValidateBasic() sdk.Error
ValidateBasic ...
type Keeper ¶
type Keeper struct {
// contains filtered or unexported fields
}
Keeper manages shipping orders
func (Keeper) CancelOrder ¶
CancelOrder vakudates the message and set the status of the target order to Cancelled
Only the issuer can cancel the order
func (Keeper) CompleteOrder ¶
CompleteOrder vakudates the message and set the status of the target order to Completed
Only the receiver can complete the order, and only when the order is confirmed
func (Keeper) ConfirmOrder ¶
ConfirmOrder validate the message and set the status of the target order to Completed
Only the carrier can confirm the order, and only when the order is pending
func (Keeper) CreateOrder ¶
CreateOrder validates and creates a new order
type Order ¶
type Order struct { ID string `json:"id"` // ID of the order, provided by the client TransportedAssets []TransportedAsset `json:"transported_assets"` // The assets to be transported Issuer sdk.Address `json:"issuer"` // The issuer of the order, must also be the owner of the asset (coin) Carrier sdk.Address `json:"carrier"` // The carrier Receiver sdk.Address `json:"receiver"` // The receiver, often a buyer Status OrderStatus `json:"status"` // The status of the order }
Order is a shipping order
type OrderStatus ¶
type OrderStatus int
OrderStatus represents the order's status
const ( OrderStatusPending OrderStatus = iota // Order has been created OrderStatusConfirmed // The carrier received the asset from the issuer OrderStatusCompleted // The receiver received the asset from the carrier OrderStatusCancelled // Order is cancelled )
Valid status of an order
type TransportedAsset ¶
type TransportedAsset struct { ID string `json:"id"` // ID of the asset (coin) to be transported Quantity int64 `json:"quantity"` // Quanity to be transported }
TransportedAsset contains the id of the asset and the quantity to be transported