func RegisterServer()

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
}