github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/tm-db/remotedb/grpcdb/client.go (about)

     1  package grpcdb
     2  
     3  import (
     4  	"google.golang.org/grpc"
     5  	"google.golang.org/grpc/credentials"
     6  
     7  	protodb "github.com/fibonacci-chain/fbc/libs/tm-db/remotedb/proto"
     8  )
     9  
    10  // NewClient creates a gRPC client connected to the bound gRPC server at serverAddr.
    11  // Use kind to set the level of security to either Secure or Insecure.
    12  func NewClient(serverAddr, serverCert string) (protodb.DBClient, error) {
    13  	creds, err := credentials.NewClientTLSFromFile(serverCert, "")
    14  	if err != nil {
    15  		return nil, err
    16  	}
    17  	cc, err := grpc.Dial(serverAddr, grpc.WithTransportCredentials(creds))
    18  	if err != nil {
    19  		return nil, err
    20  	}
    21  	return protodb.NewDBClient(cc), nil
    22  }