github.com/vipernet-xyz/tm@v0.34.24/abci/server/server.go (about)

     1  /*
     2  Package server is used to start a new ABCI server.
     3  
     4  It contains two server implementation:
     5    - gRPC server
     6    - socket server
     7  */
     8  package server
     9  
    10  import (
    11  	"fmt"
    12  
    13  	"github.com/vipernet-xyz/tm/abci/types"
    14  	"github.com/vipernet-xyz/tm/libs/service"
    15  )
    16  
    17  func NewServer(protoAddr, transport string, app types.Application) (service.Service, error) {
    18  	var s service.Service
    19  	var err error
    20  	switch transport {
    21  	case "socket":
    22  		s = NewSocketServer(protoAddr, app)
    23  	case "grpc":
    24  		s = NewGRPCServer(protoAddr, types.NewGRPCApplication(app))
    25  	default:
    26  		err = fmt.Errorf("unknown server type %s", transport)
    27  	}
    28  	return s, err
    29  }