/
rollupclient.go
43 lines (34 loc) · 1.17 KB
/
rollupclient.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package sources
import (
"context"
"github.com/ethereum/go-ethereum/common/hexutil"
"github.com/patex-ecosystem/patex-network/pt-node/client"
"github.com/patex-ecosystem/patex-network/pt-node/eth"
"github.com/patex-ecosystem/patex-network/pt-node/rollup"
)
type RollupClient struct {
rpc client.RPC
}
func NewRollupClient(rpc client.RPC) *RollupClient {
return &RollupClient{rpc}
}
func (r *RollupClient) OutputAtBlock(ctx context.Context, blockNum uint64) (*eth.OutputResponse, error) {
var output *eth.OutputResponse
err := r.rpc.CallContext(ctx, &output, "patex_outputAtBlock", hexutil.Uint64(blockNum))
return output, err
}
func (r *RollupClient) SyncStatus(ctx context.Context) (*eth.SyncStatus, error) {
var output *eth.SyncStatus
err := r.rpc.CallContext(ctx, &output, "patex_syncStatus")
return output, err
}
func (r *RollupClient) RollupConfig(ctx context.Context) (*rollup.Config, error) {
var output *rollup.Config
err := r.rpc.CallContext(ctx, &output, "patex_rollupConfig")
return output, err
}
func (r *RollupClient) Version(ctx context.Context) (string, error) {
var output string
err := r.rpc.CallContext(ctx, &output, "patex_version")
return output, err
}