forked from cosmos/cosmos-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge PR cosmos#5795: Proto Transaction Migration
- Loading branch information
Showing
23 changed files
with
4,425 additions
and
880 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
package tx | ||
|
||
import ( | ||
"github.com/cosmos/cosmos-sdk/codec" | ||
sdk "github.com/cosmos/cosmos-sdk/types" | ||
) | ||
|
||
type ( | ||
// Generator defines an interface a client can utilize to generate an | ||
// application-defined concrete transaction type. The type returned must | ||
// implement ClientTx. | ||
Generator interface { | ||
NewTx() ClientTx | ||
} | ||
|
||
// ClientTx defines an interface which an application-defined concrete transaction | ||
// type must implement. Namely, it must be able to set messages, generate | ||
// signatures, and provide canonical bytes to sign over. The transaction must | ||
// also know how to encode itself. | ||
ClientTx interface { | ||
sdk.Tx | ||
codec.ProtoMarshaler | ||
|
||
SetMsgs(...sdk.Msg) error | ||
GetSignatures() []sdk.Signature | ||
SetSignatures(...sdk.Signature) | ||
GetFee() sdk.Fee | ||
SetFee(sdk.Fee) | ||
GetMemo() string | ||
SetMemo(string) | ||
|
||
// CanonicalSignBytes returns the canonical JSON bytes to sign over, given a | ||
// chain ID, along with an account and sequence number. The JSON encoding | ||
// ensures all field names adhere to their proto definition, default values | ||
// are omitted, and follows the JSON Canonical Form. | ||
CanonicalSignBytes(cid string, num, seq uint64) ([]byte, error) | ||
} | ||
) |
Oops, something went wrong.