Documentation
¶
Overview ¶
Package config_service is a generated twirp stub package. This code was generated with github.com/twitchtv/twirp/protoc-gen-twirp v5.5.0.
It is generated from these files:
config/service/service.proto
Index ¶
Constants ¶
const HaberdasherPathPrefix = "/twirp/config.service.Haberdasher/"
HaberdasherPathPrefix is used for all URL paths on a twirp Haberdasher server. Requests are always: POST HaberdasherPathPrefix/method It can be used in an HTTP mux to route twirp requests along with non-twirp requests on other routes.
Variables ¶
This section is empty.
Functions ¶
func WriteError ¶
func WriteError(resp http.ResponseWriter, err error)
WriteError writes an HTTP response with a valid Twirp error format. If err is not a twirp.Error, it will get wrapped with twirp.InternalErrorWith(err)
Types ¶
type HTTPClient ¶
HTTPClient is the interface used by generated clients to send HTTP requests. It is fulfilled by *(net/http).Client, which is sufficient for most users. Users can provide their own implementation for special retry policies.
HTTPClient implementations should not follow redirects. Redirects are automatically disabled if *(net/http).Client is passed to client constructors. See the withoutRedirects function in this file for more details.
type Haberdasher ¶
type Haberdasher interface {
// MakeHat produces a hat of mysterious, randomly-selected color!
MakeHat(context.Context, *config_model.Size) (*config_model.Hat, error)
BuyHat(context.Context, *config_model.Hat) (*config_model.Hat, error)
}
A Haberdasher makes hats for clients.
func NewHaberdasherJSONClient ¶
func NewHaberdasherJSONClient(addr string, client HTTPClient) Haberdasher
NewHaberdasherJSONClient creates a JSON client that implements the Haberdasher interface. It communicates using JSON and can be configured with a custom HTTPClient.
func NewHaberdasherProtobufClient ¶
func NewHaberdasherProtobufClient(addr string, client HTTPClient) Haberdasher
NewHaberdasherProtobufClient creates a Protobuf client that implements the Haberdasher interface. It communicates using Protobuf and can be configured with a custom HTTPClient.
type TwirpServer ¶
type TwirpServer interface {
http.Handler
// ServiceDescriptor returns gzipped bytes describing the .proto file that
// this service was generated from. Once unzipped, the bytes can be
// unmarshalled as a
// github.com/golang/protobuf/protoc-gen-go/descriptor.FileDescriptorProto.
//
// The returned integer is the index of this particular service within that
// FileDescriptorProto's 'Service' slice of ServiceDescriptorProtos. This is a
// low-level field, expected to be used for reflection.
ServiceDescriptor() ([]byte, int)
// ProtocGenTwirpVersion is the semantic version string of the version of
// twirp used to generate this file.
ProtocGenTwirpVersion() string
}
TwirpServer is the interface generated server structs will support: they're HTTP handlers with additional methods for accessing metadata about the service. Those accessors are a low-level API for building reflection tools. Most people can think of TwirpServers as just http.Handlers.
func NewHaberdasherServer ¶
func NewHaberdasherServer(svc Haberdasher, hooks *twirp.ServerHooks) TwirpServer