github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/juju/sockets/sockets_windows.go (about)

     1  package sockets
     2  
     3  import (
     4  	"net"
     5  	"net/rpc"
     6  
     7  	"gopkg.in/natefinch/npipe.v2"
     8  )
     9  
    10  func Dial(socketPath string) (*rpc.Client, error) {
    11  	conn, err := npipe.Dial(socketPath)
    12  	if err != nil {
    13  		return nil, err
    14  	}
    15  	return rpc.NewClient(conn), nil
    16  }
    17  
    18  func Listen(socketPath string) (net.Listener, error) {
    19  	listener, err := npipe.Listen(socketPath)
    20  	if err != nil {
    21  		logger.Errorf("failed to listen on:%s: %v", socketPath, err)
    22  		return nil, err
    23  	}
    24  	return listener, err
    25  }