-
Notifications
You must be signed in to change notification settings - Fork 119
/
pmtp_epoch.go
37 lines (31 loc) · 956 Bytes
/
pmtp_epoch.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
package keeper
import (
"github.com/Sifchain/sifnode/x/clp/types"
sdk "github.com/cosmos/cosmos-sdk/types"
)
func (k Keeper) SetPmtpEpoch(ctx sdk.Context, params types.PmtpEpoch) {
store := ctx.KVStore(k.storeKey)
store.Set(types.PmtpEpochPrefix, k.cdc.MustMarshal(¶ms))
}
func (k Keeper) GetPmtpEpoch(ctx sdk.Context) types.PmtpEpoch {
epoch := types.PmtpEpoch{}
store := ctx.KVStore(k.storeKey)
bz := store.Get(types.PmtpEpochPrefix)
k.cdc.MustUnmarshal(bz, &epoch)
return epoch
}
func (k Keeper) DecrementPmtpEpochCounter(ctx sdk.Context) {
epoch := k.GetPmtpEpoch(ctx)
epoch.EpochCounter--
k.SetPmtpEpoch(ctx, epoch)
}
func (k Keeper) DecrementPmtpBlockCounter(ctx sdk.Context) {
epoch := k.GetPmtpEpoch(ctx)
epoch.BlockCounter--
k.SetPmtpEpoch(ctx, epoch)
}
func (k Keeper) SetPmtpBlockCounter(ctx sdk.Context, epochLength int64) {
epoch := k.GetPmtpEpoch(ctx)
epoch.BlockCounter = epochLength
k.SetPmtpEpoch(ctx, epoch)
}