Explorar o código

beam: replace SendPair() with the simpler SendConn()

Docker-DCO-1.1-Signed-off-by: Solomon Hykes <solomon@docker.com> (github: shykes)
Solomon Hykes %!s(int64=11) %!d(string=hai) anos
pai
achega
4f92ffb500
Modificáronse 2 ficheiros con 12 adicións e 12 borrados
  1. 10 10
      pkg/beam/beam.go
  2. 2 2
      pkg/beam/service.go

+ 10 - 10
pkg/beam/beam.go

@@ -36,10 +36,10 @@ func SendPipe(dst Sender, data []byte) (*os.File, error) {
 	return w, nil
 }
 
-func SendPair(dst Sender, data []byte) (in ReceiveCloser, out SendCloser, err error) {
+func SendConn(dst Sender, data []byte) (conn *UnixConn, err error) {
 	local, remote, err := SocketPair()
 	if err != nil {
-		return nil, nil, err
+		return nil, err
 	}
 	defer func() {
 		if err != nil {
@@ -47,22 +47,22 @@ func SendPair(dst Sender, data []byte) (in ReceiveCloser, out SendCloser, err er
 			remote.Close()
 		}
 	}()
-	endpoint, err := FileConn(local)
+	conn, err = FileConn(local)
 	if err != nil {
-		return nil, nil, err
+		return nil, err
 	}
 	local.Close()
 	if err := dst.Send(data, remote); err != nil {
-		return nil, nil, err
+		return nil, err
 	}
-	return ReceiveCloser(endpoint), SendCloser(endpoint), nil
+	return conn, nil
 }
 
-func ReceivePair(src Receiver) ([]byte, Receiver, Sender, error) {
+func ReceiveConn(src Receiver) ([]byte, *UnixConn, error) {
 	for {
 		data, f, err := src.Receive()
 		if err != nil {
-			return nil, nil, nil, err
+			return nil, nil, err
 		}
 		if f == nil {
 			// Skip empty attachments
@@ -74,10 +74,10 @@ func ReceivePair(src Receiver) ([]byte, Receiver, Sender, error) {
 			// (for example might be a regular file, directory etc)
 			continue
 		}
-		return data, Receiver(conn), Sender(conn), nil
+		return data, conn, nil
 	}
 	panic("impossibru!")
-	return nil, nil, nil, nil
+	return nil, nil, nil
 }
 
 func Copy(dst Sender, src Receiver) (int, error) {

+ 2 - 2
pkg/beam/service.go

@@ -17,13 +17,13 @@ import (
 // not point to a connection, that message will be skipped.
 //
 func Listen(conn Sender, name string) (net.Listener, error) {
-	in, _, err := SendPair(conn, []byte(name))
+	endpoint, err := SendConn(conn, []byte(name))
 	if err != nil {
 		return nil, err
 	}
 	return &listener{
 		name:     name,
-		endpoint: in,
+		endpoint: endpoint,
 	}, nil
 }