package repo import ( "time" "github.com/meshplus/bitxhub-kit/types" ) type Mode struct { Type string `toml:"type" json:"type"` Relay Relay `toml:"relay" json:"relay"` // TODO 连接节点 Peers []string `toml:"peers" json:"peers"` Connectors []string `toml:"connectors" json:"connectors"` Providers uint64 `toml:"providers" json:"providers"` } // Relay are configs about bitxhub type Relay struct { Addrs []string `toml:"addrs" json:"addrs"` TimeoutLimit time.Duration `mapstructure:"timeout_limit" json:"timeout_limit"` Quorum uint64 `toml:"quorum" json:"quorum"` Validators []string `toml:"validators" json:"validators"` } type Direct struct { Peers []string `toml:"peers" json:"peers"` } type Union struct { Addrs []string `toml:"addrs" json:"addrs"` Connectors []string `toml:"connectors" json:"connectors"` Providers uint64 `toml:"providers" json:"providers"` } // GetValidators gets validator address of bitxhub func (relay *Relay) GetValidators() []*types.Address { validators := make([]*types.Address, 0) for _, v := range relay.Validators { validators = append(validators, types.NewAddressByStr(v)) } return validators }