Group (code,data,log) return values into types.Result

This commit is contained in:
Jae Kwon
2016-03-20 17:10:13 -07:00
parent 29a6d511b4
commit 55e2ce9de2
6 changed files with 74 additions and 29 deletions
+16 -8
View File
@@ -29,29 +29,37 @@ func (app *CounterApplication) SetOption(key string, value string) (log string)
return ""
}
func (app *CounterApplication) AppendTx(tx []byte) (code types.CodeType, result []byte, log string) {
func (app *CounterApplication) AppendTx(tx []byte) types.Result {
if app.serial {
tx8 := make([]byte, 8)
copy(tx8[len(tx8)-len(tx):], tx)
txValue := binary.BigEndian.Uint64(tx8)
if txValue != uint64(app.txCount) {
return types.CodeType_BadNonce, nil, fmt.Sprintf("Invalid nonce. Expected %v, got %v", app.txCount, txValue)
return types.Result{
Code: types.CodeType_BadNonce,
Data: nil,
Log: fmt.Sprintf("Invalid nonce. Expected %v, got %v", app.txCount, txValue),
}
}
}
app.txCount += 1
return types.CodeType_OK, nil, ""
return types.NewResultOK(nil, "")
}
func (app *CounterApplication) CheckTx(tx []byte) (code types.CodeType, result []byte, log string) {
func (app *CounterApplication) CheckTx(tx []byte) types.Result {
if app.serial {
tx8 := make([]byte, 8)
copy(tx8[len(tx8)-len(tx):], tx)
txValue := binary.BigEndian.Uint64(tx8)
if txValue < uint64(app.txCount) {
return types.CodeType_BadNonce, nil, fmt.Sprintf("Invalid nonce. Expected >= %v, got %v", app.txCount, txValue)
return types.Result{
Code: types.CodeType_BadNonce,
Data: nil,
Log: fmt.Sprintf("Invalid nonce. Expected >= %v, got %v", app.txCount, txValue),
}
}
}
return types.CodeType_OK, nil, ""
return types.NewResultOK(nil, "")
}
func (app *CounterApplication) Commit() (hash []byte, log string) {
@@ -66,6 +74,6 @@ func (app *CounterApplication) Commit() (hash []byte, log string) {
}
}
func (app *CounterApplication) Query(query []byte) (code types.CodeType, result []byte, log string) {
return types.CodeType_OK, nil, fmt.Sprintf("Query is not supported")
func (app *CounterApplication) Query(query []byte) types.Result {
return types.NewResultOK(nil, fmt.Sprintf("Query is not supported"))
}