lotus/api/v0api/v1_wrapper.go

51 lines
1.5 KiB
Go
Raw Normal View History

2021-03-23 15:40:22 +00:00
package v0api
import (
"context"
"github.com/filecoin-project/lotus/chain/types"
"github.com/ipfs/go-cid"
"github.com/filecoin-project/go-state-types/abi"
"github.com/filecoin-project/lotus/api"
2021-03-23 15:40:22 +00:00
"github.com/filecoin-project/lotus/api/v1api"
"github.com/filecoin-project/lotus/chain/stmgr"
2021-03-23 15:40:22 +00:00
)
2021-03-23 16:20:56 +00:00
type WrapperV1Full struct {
2021-03-23 15:40:22 +00:00
v1api.FullNode
}
func (w *WrapperV1Full) StateSearchMsg(ctx context.Context, msg cid.Cid) (*api.MsgLookup, error) {
return w.FullNode.StateSearchMsg(ctx, types.EmptyTSK, msg, stmgr.LookbackNoLimit, true)
}
func (w *WrapperV1Full) StateSearchMsgLimited(ctx context.Context, msg cid.Cid, limit abi.ChainEpoch) (*api.MsgLookup, error) {
return w.FullNode.StateSearchMsg(ctx, types.EmptyTSK, msg, limit, true)
}
2021-03-23 15:40:22 +00:00
func (w *WrapperV1Full) StateWaitMsg(ctx context.Context, msg cid.Cid, confidence uint64) (*api.MsgLookup, error) {
return w.FullNode.StateWaitMsg(ctx, msg, confidence, stmgr.LookbackNoLimit, true)
2021-03-23 15:40:22 +00:00
}
func (w *WrapperV1Full) StateWaitMsgLimited(ctx context.Context, msg cid.Cid, confidence uint64, limit abi.ChainEpoch) (*api.MsgLookup, error) {
return w.FullNode.StateWaitMsg(ctx, msg, confidence, limit, true)
}
func (w *WrapperV1Full) StateGetReceipt(ctx context.Context, msg cid.Cid, from types.TipSetKey) (*types.MessageReceipt, error) {
ml, err := w.FullNode.StateSearchMsg(ctx, from, msg, stmgr.LookbackNoLimit, true)
2021-03-23 15:40:22 +00:00
if err != nil {
return nil, err
}
if ml == nil {
2021-03-23 15:40:22 +00:00
return nil, nil
}
return &ml.Receipt, nil
}
2021-03-23 15:40:22 +00:00
2021-03-23 16:20:56 +00:00
var _ FullNode = &WrapperV1Full{}