-
Notifications
You must be signed in to change notification settings - Fork 18
/
dumper.go
29 lines (24 loc) · 1015 Bytes
/
dumper.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
package model
import (
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/lino-network/lino/testutils"
)
func NewDeveloperDumper(store DeveloperStorage) *testutils.Dumper {
dumper := testutils.NewDumper(store.key, store.cdc)
dumper.RegisterType(&Developer{}, "lino/developer", DeveloperSubstore)
dumper.RegisterType(&AppIDA{}, "lino/appida", IdaSubstore)
dumper.RegisterType(&Role{}, "lino/role", UserRoleSubstore)
dumper.RegisterType(&IDABank{}, "lino/bank", IdaBalanceSubstore)
dumper.RegisterType(&ReservePool{}, "lino/reservepool", ReservePoolSubstore)
dumper.RegisterType(&AppIDAStats{}, "lino/appidastats", IdaStatsSubstore)
dumper.RegisterRawString(AffiliatedAccSubstore)
return dumper
}
func DumpToFile(ctx sdk.Context, store DeveloperStorage, filepath string) {
dumper := NewDeveloperDumper(store)
dumper.DumpToFile(ctx, filepath)
}
func LoadFromFile(ctx sdk.Context, store DeveloperStorage, filepath string) {
dumper := NewDeveloperDumper(store)
dumper.LoadFromFile(ctx, filepath)
}