add new funcs for NodeGroup

This commit is contained in:
ginuerzh
2022-08-25 21:33:41 +08:00
parent 81bf7b985a
commit 04b4a79b80
2 changed files with 6 additions and 2 deletions

View File

@ -34,7 +34,7 @@ func (c *Chain) Route(network, address string) (r *Route) {
break
}
node := group.filter(address).Next()
node := group.FilterAddr(address).Next()
if node == nil {
return
}

View File

@ -41,6 +41,10 @@ func (g *NodeGroup) AddNode(node *Node) {
g.nodes = append(g.nodes, node)
}
func (g *NodeGroup) Nodes() []*Node {
return g.nodes
}
func (g *NodeGroup) WithSelector(selector Selector) *NodeGroup {
g.selector = selector
return g
@ -51,7 +55,7 @@ func (g *NodeGroup) WithBypass(bypass bypass.Bypass) *NodeGroup {
return g
}
func (g *NodeGroup) filter(addr string) *NodeGroup {
func (g *NodeGroup) FilterAddr(addr string) *NodeGroup {
var nodes []*Node
for _, node := range g.nodes {
if node.Bypass == nil || !node.Bypass.Contains(addr) {