github.com/evdatsion/aphelion-dpos-bft@v0.32.1/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  */
     9  
    10  package server
    11  
    12  import (
    13  	"fmt"
    14  
    15  	"github.com/evdatsion/aphelion-dpos-bft/abci/types"
    16  	cmn "github.com/evdatsion/aphelion-dpos-bft/libs/common"
    17  )
    18  
    19  func NewServer(protoAddr, transport string, app types.Application) (cmn.Service, error) {
    20  	var s cmn.Service
    21  	var err error
    22  	switch transport {
    23  	case "socket":
    24  		s = NewSocketServer(protoAddr, app)
    25  	case "grpc":
    26  		s = NewGRPCServer(protoAddr, types.NewGRPCApplication(app))
    27  	default:
    28  		err = fmt.Errorf("Unknown server type %s", transport)
    29  	}
    30  	return s, err
    31  }