Browse Source

remove config from outbound.Handler

Darien Raymond 7 years ago
parent
commit
ab9ae703fc
1 changed files with 5 additions and 3 deletions
  1. 5 3
      app/proxyman/outbound/handler.go

+ 5 - 3
app/proxyman/outbound/handler.go

@@ -16,8 +16,9 @@ import (
 	"v2ray.com/core/transport/pipe"
 	"v2ray.com/core/transport/pipe"
 )
 )
 
 
+// Handler is an implements of outbound.Handler.
 type Handler struct {
 type Handler struct {
-	config          *core.OutboundHandlerConfig
+	tag             string
 	senderSettings  *proxyman.SenderConfig
 	senderSettings  *proxyman.SenderConfig
 	streamSettings  *internet.MemoryStreamConfig
 	streamSettings  *internet.MemoryStreamConfig
 	proxy           proxy.Outbound
 	proxy           proxy.Outbound
@@ -25,10 +26,11 @@ type Handler struct {
 	mux             *mux.ClientManager
 	mux             *mux.ClientManager
 }
 }
 
 
+// NewHandler create a new Handler based on the given configuration.
 func NewHandler(ctx context.Context, config *core.OutboundHandlerConfig) (outbound.Handler, error) {
 func NewHandler(ctx context.Context, config *core.OutboundHandlerConfig) (outbound.Handler, error) {
 	v := core.MustFromContext(ctx)
 	v := core.MustFromContext(ctx)
 	h := &Handler{
 	h := &Handler{
-		config:          config,
+		tag:             config.Tag,
 		outboundManager: v.GetFeature(outbound.ManagerType()).(outbound.Manager),
 		outboundManager: v.GetFeature(outbound.ManagerType()).(outbound.Manager),
 	}
 	}
 
 
@@ -79,7 +81,7 @@ func NewHandler(ctx context.Context, config *core.OutboundHandlerConfig) (outbou
 
 
 // Tag implements outbound.Handler.
 // Tag implements outbound.Handler.
 func (h *Handler) Tag() string {
 func (h *Handler) Tag() string {
-	return h.config.Tag
+	return h.tag
 }
 }
 
 
 // Dispatch implements proxy.Outbound.Dispatch.
 // Dispatch implements proxy.Outbound.Dispatch.