@@ -22,9 +22,8 @@ type Server struct {
2222
2323// GrpcServerSettings holds the gRPC server settings.
2424type ServerSettings struct {
25- IPAddress string
26- Port uint16
27- SocketPath string
25+ IPAddress string
26+ Port uint16
2827}
2928
3029// NewServer initializes a new gRPC server instance.
@@ -44,46 +43,24 @@ func NewServer(settings ServerSettings, cnsService pb.CNSServer, logger *zap.Log
4443}
4544
4645// Start starts the gRPC server.
47- // Now this has the capability of listening over both TCP and Unix Domain Sockets.
48- // If both IPAddress and DomainSocketPath are provided, it will prioritize TCP.
4946func (s * Server ) Start () error {
50- if s .Settings .IPAddress != "" || s .Settings .Port != 0 {
51- address := net .JoinHostPort (s .Settings .IPAddress , strconv .FormatUint (uint64 (s .Settings .Port ), 10 ))
52- lis , err := net .Listen ("tcp" , address )
53- if err != nil {
54- log .Printf ("[Listener] Failed to listen on gRPC endpoint: %+v" , err )
55- return fmt .Errorf ("failed to listen on address %s: %w" , address , err )
56- }
57- log .Printf ("[Listener] Started listening on gRPC endpoint %s." , address )
58-
59- grpcServer := grpc .NewServer ()
60- pb .RegisterCNSServer (grpcServer , s .CnsService )
61-
62- // Register reflection service on gRPC server.
63- reflection .Register (grpcServer )
64-
65- if err := grpcServer .Serve (lis ); err != nil {
66- return fmt .Errorf ("failed to serve gRPC server: %w" , err )
67- }
68- } else if s .Settings .SocketPath != "" {
69- lis , err := net .Listen ("unix" , s .Settings .SocketPath )
70- if err != nil {
71- log .Printf ("[Listener] Failed to listen on gRPC Unix Domain Socket: %+v" , err )
72- return fmt .Errorf ("failed to listen on Unix Domain Socket %s: %w" , s .Settings .SocketPath , err )
73- }
74- log .Printf ("[Listener] Started listening on gRPC Unix Domain Socket %s." , s .Settings .SocketPath )
47+ address := net .JoinHostPort (s .Settings .IPAddress , strconv .FormatUint (uint64 (s .Settings .Port ), 10 ))
48+ lis , err := net .Listen ("tcp" , address )
49+ if err != nil {
50+ log .Printf ("[Listener] Failed to listen on gRPC endpoint: %+v" , err )
51+ return fmt .Errorf ("failed to listen on address %s: %w" , address , err )
52+ }
53+ log .Printf ("[Listener] Started listening on gRPC endpoint %s." , address )
7554
76- grpcServer := grpc .NewServer ()
77- pb .RegisterCNSServer (grpcServer , s .CnsService )
55+ grpcServer := grpc .NewServer ()
56+ pb .RegisterCNSServer (grpcServer , s .CnsService )
7857
79- // Register reflection service on gRPC server.
80- reflection .Register (grpcServer )
58+ // Register reflection service on gRPC server.
59+ reflection .Register (grpcServer )
8160
82- if err := grpcServer .Serve (lis ); err != nil {
83- return fmt .Errorf ("failed to serve gRPC server: %w" , err )
84- }
85- } else {
86- return fmt .Errorf ("no valid gRPC server settings provided: IP address or domain socket path must be specified" )
61+ if err := grpcServer .Serve (lis ); err != nil {
62+ return fmt .Errorf ("failed to serve gRPC server: %w" , err )
8763 }
64+
8865 return nil
8966}
0 commit comments