Commit c7c714c5 authored by linj's avatar linj Committed by linj

impl rpc, rename create tx

parent 87b25a1e
......@@ -70,6 +70,7 @@ func TestUnfreeze(t *testing.T) {
2,
1539918074,
}
ty := pty.UnfreezeType{}
// 创建
opt := &pty.FixAmount{Period: 10, Amount: 2}
......@@ -82,13 +83,13 @@ func TestUnfreeze(t *testing.T) {
Means: "FixAmount",
MeansOpt: &pty.UnfreezeCreate_FixAmount{FixAmount: opt},
}
createTx, err := pty.CreateUnfreezeCreateTx(p1)
createTx, err := ty.RPC_UnfreezeCreateTx(p1)
if err != nil {
t.Error("CreateUnfreezeCreateTx", "err", err)
t.Error("RPC_UnfreezeCreateTx", "err", err)
}
createTx, err = signTx(createTx, PrivKeyA)
if err != nil {
t.Error("CreateUnfreezeCreateTx sign", "err", err)
t.Error("RPC_UnfreezeCreateTx sign", "err", err)
}
exec := newUnfreeze()
exec.SetStateDB(stateDB)
......@@ -105,13 +106,13 @@ func TestUnfreeze(t *testing.T) {
p2 := &pty.UnfreezeWithdraw{
UnfreezeID: string(unfreezeID(string(createTx.Hash()))),
}
withdrawTx, err := pty.CreateUnfreezeWithdrawTx(p2)
withdrawTx, err := ty.RPC_UnfreezeWithdrawTx(p2)
if err != nil {
t.Error("CreateUnfreezeWithdrawTx", "err", err)
t.Error("RPC_UnfreezeWithdrawTx", "err", err)
}
withdrawTx, err = signTx(withdrawTx, PrivKeyB)
if err != nil {
t.Error("CreateUnfreezeWithdrawTx sign", "err", err)
t.Error("RPC_UnfreezeWithdrawTx sign", "err", err)
}
blockTime := int64(10)
exec.SetEnv(env.blockHeight+1, env.blockTime+blockTime, env.difficulty)
......@@ -134,13 +135,13 @@ func TestUnfreeze(t *testing.T) {
p2 := &pty.UnfreezeWithdraw{
UnfreezeID: string(unfreezeID(string(createTx.Hash()))),
}
withdrawTx, err := pty.CreateUnfreezeWithdrawTx(p2)
withdrawTx, err := ty.RPC_UnfreezeWithdrawTx(p2)
if err != nil {
t.Error("CreateUnfreezeWithdrawTx", "err", err)
t.Error("RPC_UnfreezeWithdrawTx", "err", err)
}
withdrawTx, err = signTx(withdrawTx, PrivKeyC)
if err != nil {
t.Error("CreateUnfreezeWithdrawTx sign", "err", err)
t.Error("RPC_UnfreezeWithdrawTx sign", "err", err)
}
blockTime := int64(10)
exec.SetEnv(env.blockHeight+1, env.blockTime+blockTime, env.difficulty)
......@@ -154,13 +155,13 @@ func TestUnfreeze(t *testing.T) {
p3 := &pty.UnfreezeTerminate{
UnfreezeID: string(unfreezeID(string(createTx.Hash()))),
}
terminateTx, err := pty.CreateUnfreezeTerminateTx(p3)
terminateTx, err := ty.RPC_UnfreezeTerminateTx(p3)
if err != nil {
t.Error("CreateUnfreezeTerminateTx", "err", err)
t.Error("RPC_UnfreezeTerminateTx", "err", err)
}
terminateTx, err = signTx(terminateTx, PrivKeyC)
if err != nil {
t.Error("CreateUnfreezeTerminateTx sign", "err", err)
t.Error("RPC_UnfreezeTerminateTx sign", "err", err)
}
receipt, err = exec.Exec(terminateTx, 1)
assert.Equal(t, pty.ErrNoPrivilege, err)
......@@ -171,13 +172,13 @@ func TestUnfreeze(t *testing.T) {
p3 := &pty.UnfreezeTerminate{
UnfreezeID: string(unfreezeID(string(createTx.Hash()))),
}
terminateTx, err := pty.CreateUnfreezeTerminateTx(p3)
terminateTx, err := ty.RPC_UnfreezeTerminateTx(p3)
if err != nil {
t.Error("CreateUnfreezeTerminateTx", "err", err)
t.Error("RPC_UnfreezeTerminateTx", "err", err)
}
terminateTx, err = signTx(terminateTx, PrivKeyA)
if err != nil {
t.Error("CreateUnfreezeTerminateTx sign", "err", err)
t.Error("RPC_UnfreezeTerminateTx sign", "err", err)
}
receipt, err = exec.Exec(terminateTx, 1)
assert.Nil(t, err)
......@@ -192,13 +193,13 @@ func TestUnfreeze(t *testing.T) {
p2 := &pty.UnfreezeWithdraw{
UnfreezeID: string(unfreezeID(string(createTx.Hash()))),
}
withdrawTx, err := pty.CreateUnfreezeWithdrawTx(p2)
withdrawTx, err := ty.RPC_UnfreezeWithdrawTx(p2)
if err != nil {
t.Error("CreateUnfreezeWithdrawTx", "err", err)
t.Error("RPC_UnfreezeWithdrawTx", "err", err)
}
withdrawTx, err = signTx(withdrawTx, PrivKeyB)
if err != nil {
t.Error("CreateUnfreezeWithdrawTx sign", "err", err)
t.Error("RPC_UnfreezeWithdrawTx sign", "err", err)
}
blockTime := int64(10)
exec.SetEnv(env.blockHeight+1, env.blockTime+blockTime+blockTime, env.difficulty)
......
package rpc
import (
"context"
"encoding/hex"
pty "gitlab.33.cn/chain33/chain33/plugin/dapp/unfreeze/types"
"gitlab.33.cn/chain33/chain33/types"
)
func (c *channelClient) GetUnfreeze(ctx context.Context, in *types.ReqString) (*pty.Unfreeze, error) {
v, err := c.Query(pty.UnfreezeX, "GetUnfreeze", in)
if err != nil {
return nil, err
}
if resp, ok := v.(*pty.Unfreeze); ok {
return resp, nil
}
return nil, types.ErrDecode
}
func (c *channelClient) GetUnfreezeWithdraw(ctx context.Context, in *types.ReqString) (*pty.ReplyQueryUnfreezeWithdraw, error) {
v, err := c.Query(pty.UnfreezeX, "GetUnfreezeWithdraw", in)
if err != nil {
return nil, err
}
if resp, ok := v.(*pty.ReplyQueryUnfreezeWithdraw); ok {
return resp, nil
}
return nil, types.ErrDecode
}
func (c *Jrpc) GetUnfreeze(in *types.ReqString, result *interface{}) error {
v, err := c.cli.GetUnfreeze(context.Background(), in)
if err != nil {
return err
}
*result = v
return nil
}
func (c *Jrpc) GetUnfreezeWithdraw(in *types.ReqString, result *interface{}) error {
v, err := c.cli.GetUnfreezeWithdraw(context.Background(), in)
if err != nil {
return err
}
*result = v
return nil
}
func (c *Jrpc) CreateRawUnfreezeCreate(param *pty.UnfreezeCreate, result *interface{}) error {
if param == nil {
return types.ErrInvalidParam
}
data, err := types.CallCreateTx(types.ExecName(pty.UnfreezeX), "UnfreezeCreateTX", param)
if err != nil {
return err
}
*result = hex.EncodeToString(data)
return nil
}
func (c *Jrpc) CreateRawUnfreezeWithdraw(param *pty.UnfreezeWithdraw, result *interface{}) error {
if param == nil {
return types.ErrInvalidParam
}
data, err := types.CallCreateTx(types.ExecName(pty.UnfreezeX), "UnfreezeWithdrawTx", param)
if err != nil {
return err
}
*result = hex.EncodeToString(data)
return nil
}
func (c *Jrpc) CreateRawUnfreezeTerminate(param *pty.UnfreezeTerminate, result *interface{}) error {
if param == nil {
return types.ErrInvalidParam
}
data, err := types.CallCreateTx(types.ExecName(pty.UnfreezeX), "UnfreezeTerminateTx", param)
if err != nil {
return err
}
*result = hex.EncodeToString(data)
return nil
}
......@@ -68,7 +68,7 @@ func (u UnfreezeType) CreateTx(action string, message json.RawMessage) (*types.T
tlog.Error("CreateTx", "Error", err)
return nil, types.ErrInvalidParam
}
return CreateUnfreezeCreateTx(&param)
return u.RPC_UnfreezeCreateTx(&param)
} else if action == Action_WithdrawUnfreeze {
var param UnfreezeWithdraw
err := json.Unmarshal(message, &param)
......@@ -76,7 +76,7 @@ func (u UnfreezeType) CreateTx(action string, message json.RawMessage) (*types.T
tlog.Error("CreateTx", "Error", err)
return nil, types.ErrInvalidParam
}
return CreateUnfreezeWithdrawTx(&param)
return u.RPC_UnfreezeWithdrawTx(&param)
} else if action == Action_TerminateUnfreeze {
var param UnfreezeTerminate
err := json.Unmarshal(message, &param)
......@@ -84,24 +84,24 @@ func (u UnfreezeType) CreateTx(action string, message json.RawMessage) (*types.T
tlog.Error("CreateTx", "Error", err)
return nil, types.ErrInvalidParam
}
return CreateUnfreezeTerminateTx(&param)
return u.RPC_UnfreezeTerminateTx(&param)
} else {
return nil, types.ErrNotSupport
}
return nil, nil
}
func CreateUnfreezeCreateTx(parm *UnfreezeCreate) (*types.Transaction, error) {
func (u UnfreezeType) RPC_UnfreezeCreateTx(parm *UnfreezeCreate) (*types.Transaction, error) {
if parm == nil {
tlog.Error("CreateUnfreezeCreateTx", "parm", parm)
tlog.Error("RPC_UnfreezeCreateTx", "parm", parm)
return nil, types.ErrInvalidParam
}
if parm.AssetExec == "" || parm.AssetSymbol == "" || parm.TotalCount <= 0 || parm.Means == "" {
tlog.Error("CreateUnfreezeCreateTx", "parm", parm)
tlog.Error("RPC_UnfreezeCreateTx", "parm", parm)
return nil, types.ErrInvalidParam
}
if !supportMeans(parm.Means) {
tlog.Error("CreateUnfreezeCreateTx not support means", "parm", parm)
tlog.Error("RPC_UnfreezeCreateTx not support means", "parm", parm)
return nil, types.ErrInvalidParam
}
create := &UnfreezeAction{
......@@ -118,9 +118,9 @@ func CreateUnfreezeCreateTx(parm *UnfreezeCreate) (*types.Transaction, error) {
return tx, nil
}
func CreateUnfreezeWithdrawTx(parm *UnfreezeWithdraw) (*types.Transaction, error) {
func (u UnfreezeType) RPC_UnfreezeWithdrawTx(parm *UnfreezeWithdraw) (*types.Transaction, error) {
if parm == nil {
tlog.Error("CreateUnfreezeWithdrawTx", "parm", parm)
tlog.Error("RPC_UnfreezeWithdrawTx", "parm", parm)
return nil, types.ErrInvalidParam
}
v := &UnfreezeWithdraw{
......@@ -140,9 +140,9 @@ func CreateUnfreezeWithdrawTx(parm *UnfreezeWithdraw) (*types.Transaction, error
return tx, nil
}
func CreateUnfreezeTerminateTx(parm *UnfreezeTerminate) (*types.Transaction, error) {
func (u UnfreezeType) RPC_UnfreezeTerminateTx(parm *UnfreezeTerminate) (*types.Transaction, error) {
if parm == nil {
tlog.Error("CreateUnfreezeTerminateTx", "parm", parm)
tlog.Error("RPC_UnfreezeTerminateTx", "parm", parm)
return nil, types.ErrInvalidParam
}
v := &UnfreezeTerminate{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment