package keeper import ( "context" "mukan/x/poj/types" ) // SetMinerState sets a specific minerState in the store func (k Keeper) SetMinerState(ctx context.Context, state types.MinerState) { k.MinerStates.Set(ctx, state.Address, state) } // GetMinerState returns a minerState from its address func (k Keeper) GetMinerState(ctx context.Context, address string) (val types.MinerState, found bool) { state, err := k.MinerStates.Get(ctx, address) if err != nil { return types.MinerState{Address: address}, false } return state, true } // RemoveMinerState removes a minerState from the store func (k Keeper) RemoveMinerState(ctx context.Context, address string) { k.MinerStates.Remove(ctx, address) } // GetAllMinerState returns all minerState func (k Keeper) GetAllMinerState(ctx context.Context) (list []types.MinerState) { iter, err := k.MinerStates.Iterate(ctx, nil) if err != nil { return } defer iter.Close() for ; iter.Valid(); iter.Next() { val, err := iter.Value() if err != nil { continue } list = append(list, val) } return }