Browse Source

fix setter methods

Darien Raymond 7 years ago
parent
commit
955444adc9
4 changed files with 6 additions and 9 deletions
  1. 1 2
      dns.go
  2. 2 3
      network.go
  3. 1 2
      policy.go
  4. 2 2
      router.go

+ 1 - 2
dns.go

@@ -52,10 +52,9 @@ func (d *syncDNSClient) Set(client DNSClient) {
 		return
 	}
 
-	d.Close()
-
 	d.Lock()
 	defer d.Unlock()
 
+	common.Close(d.DNSClient)
 	d.DNSClient = client
 }

+ 2 - 3
network.go

@@ -88,11 +88,10 @@ func (m *syncInboundHandlerManager) Set(manager InboundHandlerManager) {
 		return
 	}
 
-	m.Close()
-
 	m.Lock()
 	defer m.Unlock()
 
+	common.Close(m.InboundHandlerManager)
 	m.InboundHandlerManager = manager
 }
 
@@ -171,9 +170,9 @@ func (m *syncOutboundHandlerManager) Set(manager OutboundHandlerManager) {
 		return
 	}
 
-	m.Close()
 	m.Lock()
 	defer m.Unlock()
 
+	common.Close(m.OutboundHandlerManager)
 	m.OutboundHandlerManager = manager
 }

+ 1 - 2
policy.go

@@ -87,10 +87,9 @@ func (m *syncPolicyManager) Set(manager PolicyManager) {
 		return
 	}
 
-	m.Close()
-
 	m.Lock()
 	defer m.Unlock()
 
+	common.Close(m.PolicyManager)
 	m.PolicyManager = manager
 }

+ 2 - 2
router.go

@@ -58,10 +58,10 @@ func (d *syncDispatcher) Set(disp Dispatcher) {
 		return
 	}
 
-	d.Close()
 	d.Lock()
 	defer d.Unlock()
 
+	common.Close(d.Dispatcher)
 	d.Dispatcher = disp
 }
 
@@ -117,9 +117,9 @@ func (r *syncRouter) Set(router Router) {
 		return
 	}
 
-	r.Close()
 	r.Lock()
 	defer r.Unlock()
 
+	common.Close(r.Router)
 	r.Router = router
 }