rpc: separate out golang API into rpc/core

This commit is contained in:
Ethan Buchman
2015-03-26 21:30:42 -07:00
parent d2724c9731
commit 1fb1163721
8 changed files with 264 additions and 0 deletions

26
rpc/core/validators.go Normal file
View File

@ -0,0 +1,26 @@
package core
import (
sm "github.com/tendermint/tendermint/state"
)
//-----------------------------------------------------------------------------
func ListValidators() (uint, []*sm.Validator, []*sm.Validator) {
var blockHeight uint
var bondedValidators []*sm.Validator
var unbondingValidators []*sm.Validator
state := consensusState.GetState()
blockHeight = state.LastBlockHeight
state.BondedValidators.Iterate(func(index uint, val *sm.Validator) bool {
bondedValidators = append(bondedValidators, val)
return false
})
state.UnbondingValidators.Iterate(func(index uint, val *sm.Validator) bool {
unbondingValidators = append(unbondingValidators, val)
return false
})
return blockHeight, bondedValidators, unbondingValidators
}