svc

package
v0.0.0-...-087ad6b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 2, 2018 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DecodeGRPCGetLocationRequest

func DecodeGRPCGetLocationRequest(_ context.Context, grpcReq interface{}) (interface{}, error)

DecodeGRPCGetLocationRequest is a transport/grpc.DecodeRequestFunc that converts a gRPC getlocation request to a user-domain getlocation request. Primarily useful in a server.

func DecodeGRPCPostLocationBigBrotherRequest

func DecodeGRPCPostLocationBigBrotherRequest(_ context.Context, grpcReq interface{}) (interface{}, error)

DecodeGRPCPostLocationBigBrotherRequest is a transport/grpc.DecodeRequestFunc that converts a gRPC postlocationbigbrother request to a user-domain postlocationbigbrother request. Primarily useful in a server.

func DecodeGRPCPostLocationTaskerRequest

func DecodeGRPCPostLocationTaskerRequest(_ context.Context, grpcReq interface{}) (interface{}, error)

DecodeGRPCPostLocationTaskerRequest is a transport/grpc.DecodeRequestFunc that converts a gRPC postlocationtasker request to a user-domain postlocationtasker request. Primarily useful in a server.

func DecodeHTTPGetLocationZeroRequest

func DecodeHTTPGetLocationZeroRequest(_ context.Context, r *http.Request) (interface{}, error)

DecodeHTTPGetLocationZeroRequest is a transport/http.DecodeRequestFunc that decodes a JSON-encoded getlocation request from the HTTP request body. Primarily useful in a server.

func DecodeHTTPPostLocationBigBrotherZeroRequest

func DecodeHTTPPostLocationBigBrotherZeroRequest(_ context.Context, r *http.Request) (interface{}, error)

DecodeHTTPPostLocationBigBrotherZeroRequest is a transport/http.DecodeRequestFunc that decodes a JSON-encoded postlocationbigbrother request from the HTTP request body. Primarily useful in a server.

func DecodeHTTPPostLocationTaskerZeroRequest

func DecodeHTTPPostLocationTaskerZeroRequest(_ context.Context, r *http.Request) (interface{}, error)

DecodeHTTPPostLocationTaskerZeroRequest is a transport/http.DecodeRequestFunc that decodes a JSON-encoded postlocationtasker request from the HTTP request body. Primarily useful in a server.

func EncodeGRPCGetLocationResponse

func EncodeGRPCGetLocationResponse(_ context.Context, response interface{}) (interface{}, error)

EncodeGRPCGetLocationResponse is a transport/grpc.EncodeResponseFunc that converts a user-domain getlocation response to a gRPC getlocation reply. Primarily useful in a server.

func EncodeGRPCPostLocationBigBrotherResponse

func EncodeGRPCPostLocationBigBrotherResponse(_ context.Context, response interface{}) (interface{}, error)

EncodeGRPCPostLocationBigBrotherResponse is a transport/grpc.EncodeResponseFunc that converts a user-domain postlocationbigbrother response to a gRPC postlocationbigbrother reply. Primarily useful in a server.

func EncodeGRPCPostLocationTaskerResponse

func EncodeGRPCPostLocationTaskerResponse(_ context.Context, response interface{}) (interface{}, error)

EncodeGRPCPostLocationTaskerResponse is a transport/grpc.EncodeResponseFunc that converts a user-domain postlocationtasker response to a gRPC postlocationtasker reply. Primarily useful in a server.

func EncodeHTTPGenericResponse

func EncodeHTTPGenericResponse(_ context.Context, w http.ResponseWriter, response interface{}) error

EncodeHTTPGenericResponse is a transport/http.EncodeResponseFunc that encodes the response as JSON to the response writer. Primarily useful in a server.

func MakeGRPCServer

func MakeGRPCServer(ctx context.Context, endpoints Endpoints) pb.CurrentServer

MakeGRPCServer makes a set of endpoints available as a gRPC CurrentServer.

func MakeGetLocationEndpoint

func MakeGetLocationEndpoint(s pb.CurrentServer) endpoint.Endpoint

func MakeHTTPHandler

func MakeHTTPHandler(ctx context.Context, endpoints Endpoints, logger log.Logger) http.Handler

MakeHTTPHandler returns a handler that makes a set of endpoints available on predefined paths.

func MakePostLocationBigBrotherEndpoint

func MakePostLocationBigBrotherEndpoint(s pb.CurrentServer) endpoint.Endpoint

func MakePostLocationTaskerEndpoint

func MakePostLocationTaskerEndpoint(s pb.CurrentServer) endpoint.Endpoint

Types

type Endpoints

type Endpoints struct {
	PostLocationBigBrotherEndpoint endpoint.Endpoint
	PostLocationTaskerEndpoint     endpoint.Endpoint
	GetLocationEndpoint            endpoint.Endpoint
}

Endpoints collects all of the endpoints that compose an add service. It's meant to be used as a helper struct, to collect all of the endpoints into a single parameter.

In a server, it's useful for functions that need to operate on a per-endpoint basis. For example, you might pass an Endpoints to a function that produces an http.Handler, with each method (endpoint) wired up to a specific path. (It is probably a mistake in design to invoke the Service methods on the Endpoints struct in a server.)

In a client, it's useful to collect individually constructed endpoints into a single type that implements the Service interface. For example, you might construct individual endpoints using transport/http.NewClient, combine them into an Endpoints, and return it to the caller as a Service.

func (Endpoints) GetLocation

func (e Endpoints) GetLocation(ctx context.Context, in *pb.GetLocationRequest) (*pb.Location, error)

func (Endpoints) PostLocationBigBrother

func (e Endpoints) PostLocationBigBrother(ctx context.Context, in *pb.PostLocationBigBrotherRequest) (*pb.Empty, error)

func (Endpoints) PostLocationTasker

func (e Endpoints) PostLocationTasker(ctx context.Context, in *pb.PostLocationTaskerRequest) (*pb.Empty, error)

func (*Endpoints) WrapAllExcept

func (e *Endpoints) WrapAllExcept(middleware endpoint.Middleware, excluded ...string)

WrapAllExcept wraps each Endpoint field of struct Endpoints with a go-kit/kit/endpoint.Middleware. Use this for applying a set of middlewares to every endpoint in the service. Optionally, endpoints can be passed in by name to be excluded from being wrapped. WrapAllExcept(middleware, "Status", "Ping")

func (*Endpoints) WrapAllLabeledExcept

func (e *Endpoints) WrapAllLabeledExcept(middleware func(string, endpoint.Endpoint) endpoint.Endpoint, excluded ...string)

WrapAllLabeledExcept wraps each Endpoint field of struct Endpoints with a LabeledMiddleware, which will receive the name of the endpoint. See LabeldMiddleware. See method WrapAllExept for details on excluded functionality.

type LabeledMiddleware

type LabeledMiddleware func(string, endpoint.Endpoint) endpoint.Endpoint

LabeledMiddleware will get passed the endpoint name when passed to WrapAllLabeledExcept, this can be used to write a generic metrics middleware which can send the endpoint name to the metrics collector.

Directories

Path Synopsis
client
grpc
Package grpc provides a gRPC client for the Current service.
Package grpc provides a gRPC client for the Current service.
http
Package http provides an HTTP client for the Current service.
Package http provides an HTTP client for the Current service.
cli

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL