1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-10-01 16:26:02 -04:00
v2fly/app/space.go

37 lines
690 B
Go
Raw Normal View History

2015-12-05 16:55:45 -05:00
package app
type Space struct {
packetDispatcher PacketDispatcher
2015-12-06 05:00:10 -05:00
dnsCache DnsCache
2015-12-05 16:55:45 -05:00
}
func NewSpace() *Space {
return new(Space)
}
2015-12-06 05:00:10 -05:00
func (this *Space) Bind(object interface{}) {
if packetDispatcher, ok := object.(PacketDispatcher); ok {
this.packetDispatcher = packetDispatcher
}
if dnsCache, ok := object.(DnsCache); ok {
this.dnsCache = dnsCache
}
}
2015-12-05 16:55:45 -05:00
func (this *Space) HasPacketDispatcher() bool {
return this.packetDispatcher != nil
}
func (this *Space) PacketDispatcher() PacketDispatcher {
return this.packetDispatcher
}
2015-12-06 05:00:10 -05:00
func (this *Space) HasDnsCache() bool {
return this.dnsCache != nil
}
func (this *Space) DnsCache() DnsCache {
return this.dnsCache
2015-12-05 16:55:45 -05:00
}