Skip to content
Snippets Groups Projects
gosdn-cli.go 849 B
Newer Older
  • Learn to ignore specific revisions
  • package main
    
    import (
    	"context"
    	"google.golang.org/grpc"
    	"log"
    	"os"
    	pb "project-beachhead/grpc_interface"
    	"time"
    )
    
    const (
    	address     = "localhost:55055"
    	defaultName = "gosdn-cli"
    )
    
    // Based on the helloworld example of grpc.io
    
    func main() {
    	// Set up a connection to the server.
    	conn, err := grpc.Dial(address, grpc.WithInsecure(), grpc.WithBlock())
    	if err != nil {
    		log.Fatalf("did not connect: %v", err)
    	}
    	defer conn.Close()
    	c := pb.NewGreeterClient(conn)
    
    	// Contact the server and print out its response.
    	name := defaultName
    	if len(os.Args) > 1 {
    		name = os.Args[1]
    	}
    	ctx, cancel := context.WithTimeout(context.Background(), time.Second)
    	defer cancel()
    	r, err := c.SayHello(ctx, &pb.HelloRequest{Name: name})
    	if err != nil {
    		log.Fatalf("could not greet: %v", err)
    	}
    	log.Printf("Greeting: %s", r.GetMessage())
    }