-
Notifications
You must be signed in to change notification settings - Fork 4
/
config_api.go
57 lines (50 loc) · 1.47 KB
/
config_api.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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package node
import "context"
// ConfigAPI -
type ConfigAPI interface {
HistoryMode(ctx context.Context) (HistoryMode, error)
UserActivatedProtocols(ctx context.Context) ([]ActivatedProtocol, error)
UserActivatedUpgrades(ctx context.Context) ([]ActivatedUpgrades, error)
}
// Config -
type Config struct {
baseURL string
client *client
}
// NewConfig -
func NewConfig(baseURL string) *Config {
return &Config{
baseURL: baseURL,
client: newClient(),
}
}
// HistoryMode -
func (api *Config) HistoryMode(ctx context.Context) (HistoryMode, error) {
req, err := newGetRequest(api.baseURL, "config/history_mode", nil)
if err != nil {
return HistoryMode{}, err
}
var result HistoryMode
err = req.doWithJSONResponse(ctx, api.client, &result)
return result, err
}
// UserActivatedProtocols -
func (api *Config) UserActivatedProtocols(ctx context.Context) ([]ActivatedProtocol, error) {
req, err := newGetRequest(api.baseURL, "config/network/user_activated_protocol_overrides", nil)
if err != nil {
return nil, err
}
var result []ActivatedProtocol
err = req.doWithJSONResponse(ctx, api.client, &result)
return result, err
}
// UserActivatedUpgrades -
func (api *Config) UserActivatedUpgrades(ctx context.Context) ([]ActivatedUpgrades, error) {
req, err := newGetRequest(api.baseURL, "config/network/user_activated_upgrades", nil)
if err != nil {
return nil, err
}
var result []ActivatedUpgrades
err = req.doWithJSONResponse(ctx, api.client, &result)
return result, err
}