/
module.go
42 lines (36 loc) · 946 Bytes
/
module.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
package staking
import (
"github.com/cosmos/cosmos-sdk/codec"
"github.com/forbole/juno/v3/modules"
"github.com/forbole/bdjuno/v3/database"
stakingsource "github.com/forbole/bdjuno/v3/modules/staking/source"
)
var (
_ modules.Module = &Module{}
_ modules.GenesisModule = &Module{}
_ modules.BlockModule = &Module{}
_ modules.MessageModule = &Module{}
)
// Module represents the x/staking module
type Module struct {
cdc codec.Codec
db *database.Db
source stakingsource.Source
slashingModule SlashingModule
}
// NewModule returns a new Module instance
func NewModule(
source stakingsource.Source, slashingModule SlashingModule,
cdc codec.Codec, db *database.Db,
) *Module {
return &Module{
cdc: cdc,
db: db,
source: source,
slashingModule: slashingModule,
}
}
// Name implements modules.Module
func (m *Module) Name() string {
return "staking"
}