Documentation
¶
Overview ¶
Package sample_proto is a generated protocol buffer package.
It is generated from these files:
user_service.proto
It has these top-level messages:
GetUserRequest GetUserResponse
Package sample_proto is a generated twirp stub package. This code was generated with github.com/twitchtv/twirp/protoc-gen-twirp v5.3.0.
It is generated from these files:
user_service.proto
Index ¶
Constants ¶
const UserServicePathPrefix = "/twirp/sample_proto.UserService/"
UserServicePathPrefix is used for all URL paths on a twirp UserService server. Requests are always: POST UserServicePathPrefix/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 GetUserRequest ¶
type GetUserRequest struct {
Id int64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"`
}
func (*GetUserRequest) Descriptor ¶
func (*GetUserRequest) Descriptor() ([]byte, []int)
func (*GetUserRequest) GetId ¶
func (m *GetUserRequest) GetId() int64
func (*GetUserRequest) ProtoMessage ¶
func (*GetUserRequest) ProtoMessage()
func (*GetUserRequest) Reset ¶
func (m *GetUserRequest) Reset()
func (*GetUserRequest) String ¶
func (m *GetUserRequest) String() string
type GetUserResponse ¶
type GetUserResponse struct { Id int64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` Age int32 `protobuf:"varint,3,opt,name=age" json:"age,omitempty"` }
func (*GetUserResponse) Descriptor ¶
func (*GetUserResponse) Descriptor() ([]byte, []int)
func (*GetUserResponse) GetAge ¶
func (m *GetUserResponse) GetAge() int32
func (*GetUserResponse) GetId ¶
func (m *GetUserResponse) GetId() int64
func (*GetUserResponse) GetName ¶
func (m *GetUserResponse) GetName() string
func (*GetUserResponse) ProtoMessage ¶
func (*GetUserResponse) ProtoMessage()
func (*GetUserResponse) Reset ¶
func (m *GetUserResponse) Reset()
func (*GetUserResponse) String ¶
func (m *GetUserResponse) String() string
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 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 NewUserServiceServer ¶
func NewUserServiceServer(svc UserService, hooks *twirp.ServerHooks) TwirpServer
type UserService ¶
type UserService interface {
GetUser(context.Context, *GetUserRequest) (*GetUserResponse, error)
}
func NewUserServiceJSONClient ¶
func NewUserServiceJSONClient(addr string, client HTTPClient) UserService
NewUserServiceJSONClient creates a JSON client that implements the UserService interface. It communicates using JSON and can be configured with a custom HTTPClient.
func NewUserServiceProtobufClient ¶
func NewUserServiceProtobufClient(addr string, client HTTPClient) UserService
NewUserServiceProtobufClient creates a Protobuf client that implements the UserService interface. It communicates using Protobuf and can be configured with a custom HTTPClient.