Skip to content

senzing-garage/go-grpcing

Repository files navigation

go-grpcing

If you are beginning your journey with Senzing, please start with Senzing Quick Start guides.

You are in the Senzing Garage where projects are "tinkered" on. Although this GitHub repository may help you understand an approach to using Senzing, it's not considered to be "production ready" and is not considered to be part of the Senzing product. Heck, it may not even be appropriate for your application of Senzing!

Synopsis

Helpers for working with gRPC.

Go Reference Go Report Card License

gosec.yaml go-test-linux.yaml go-test-darwin.yaml go-test-windows.yaml

Overview

Examples of using go-grpcing can be seen in main.go

Use

package main

import (
    "context"
    "fmt"
    "reflect"

    "github.com/senzing-garage/go-grpcing/grpcurl"
    "google.golang.org/grpc"
)

func main() {
    ctx := context.TODO()
    grpcUrl := "grpc://localhost:8258"

    grpcTarget, grpcDialOptions, err := grpcurl.Parse(ctx, grpcUrl)
    if err != nil {
        panic(err)
    }

    grpcConnection, err := grpc.Dial(grpcTarget, grpcDialOptions...)
    if err != nil {
        panic(err)
    }

    fmt.Printf("grpcTarget: %s\n", grpcTarget)
    fmt.Printf("grpcDialOptions: %s\n", reflect.TypeOf(grpcDialOptions))
    fmt.Printf("grpcConnection: %s\n", reflect.TypeOf(grpcConnection))
}

References

  1. API documentation
  2. Development
  3. Errors
  4. Examples