transport local: named listeners + struct renaming

This commit is contained in:
Christian Schwarz
2018-10-11 13:06:47 +02:00
parent 976c1f3929
commit 01668a989e
4 changed files with 49 additions and 21 deletions
+7 -3
View File
@@ -9,6 +9,7 @@ import (
)
type LocalConnecter struct {
listenerName string
clientIdentity string
}
@@ -16,11 +17,14 @@ func LocalConnecterFromConfig(in *config.LocalConnect) (*LocalConnecter, error)
if in.ClientIdentity == "" {
return nil, fmt.Errorf("ClientIdentity must not be empty")
}
return &LocalConnecter{in.ClientIdentity}, nil
if in.ListenerName == "" {
return nil, fmt.Errorf("ListenerName must not be empty")
}
return &LocalConnecter{listenerName: in.ListenerName, clientIdentity: in.ClientIdentity}, nil
}
func (c *LocalConnecter) Connect(dialCtx context.Context) (conn net.Conn, err error) {
switchboard := serve.GetLocalListenerSwitchboard()
return switchboard.DialContext(dialCtx, c.clientIdentity)
l := serve.GetLocalListener(c.listenerName)
return l.Connect(dialCtx, c.clientIdentity)
}