in grpc-xds/greeter-go/pkg/greeter/register.go [27:42]
func RegisterServer(ctx context.Context, logger logr.Logger, greeterName string, nextHop string, server grpc.ServiceRegistrar) error {
var greeterService helloworldpb.GreeterServer
if nextHop == "" {
logger.V(1).Info("Adding leaf Greeter service, as NEXT_HOP is not provided")
greeterService = NewLeafService(ctx, greeterName)
} else {
logger.V(1).Info("Adding intermediary Greeter service", "NEXT_HOP", nextHop)
greeterClient, err := NewClient(ctx, nextHop)
if err != nil {
return fmt.Errorf("could not create greeter client %w", err)
}
greeterService = NewIntermediaryService(ctx, greeterName, greeterClient)
}
helloworldpb.RegisterGreeterServer(server, greeterService)
return nil
}