36 lines
556 B
Go
36 lines
556 B
Go
package model
|
|
|
|
type TunnelPair struct {
|
|
pair []*Tunnel
|
|
}
|
|
|
|
func NewTunnelPair(a *Tunnel, b *Tunnel) *TunnelPair {
|
|
r := new(TunnelPair)
|
|
r.pair = make([]*Tunnel, 2)
|
|
p := r.pair
|
|
p[0] = a
|
|
p[1] = b
|
|
return r
|
|
}
|
|
|
|
func (this *TunnelPair) Run() {
|
|
p := this.pair
|
|
for _, v := range p {
|
|
go v.Run()
|
|
}
|
|
}
|
|
|
|
func (this *TunnelPair) SetRegChan(reg chan interface{}) {
|
|
p := this.pair
|
|
for _, v := range p {
|
|
v.SetRegChan(reg)
|
|
}
|
|
}
|
|
|
|
func (this *TunnelPair) SetUnRegChan(unreg chan interface{}) {
|
|
p := this.pair
|
|
for _, v := range p {
|
|
v.SetUnRegChan(unreg)
|
|
}
|
|
}
|