Documentation ¶
Overview ¶
Package routeguide is a reverse proxy.
It translates gRPC into RESTful JSON APIs.
Index ¶
- func RegisterRouteGuideHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error
- func RegisterRouteGuideHandlerClient(ctx context.Context, mux *runtime.ServeMux, client RouteGuideClient) error
- func RegisterRouteGuideHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, ...) (err error)
- func RegisterRouteGuideServer(s *grpc.Server, srv RouteGuideServer)
- type Feature
- func (*Feature) Descriptor() ([]byte, []int)
- func (m *Feature) GetLocation() *Point
- func (m *Feature) GetName() string
- func (*Feature) ProtoMessage()
- func (m *Feature) Reset()
- func (m *Feature) String() string
- func (m *Feature) XXX_DiscardUnknown()
- func (m *Feature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Feature) XXX_Merge(src proto.Message)
- func (m *Feature) XXX_Size() int
- func (m *Feature) XXX_Unmarshal(b []byte) error
- type Point
- func (*Point) Descriptor() ([]byte, []int)
- func (m *Point) GetLatitude() int32
- func (m *Point) GetLongitude() int32
- func (*Point) ProtoMessage()
- func (m *Point) Reset()
- func (m *Point) String() string
- func (m *Point) XXX_DiscardUnknown()
- func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Point) XXX_Merge(src proto.Message)
- func (m *Point) XXX_Size() int
- func (m *Point) XXX_Unmarshal(b []byte) error
- type Rectangle
- func (*Rectangle) Descriptor() ([]byte, []int)
- func (m *Rectangle) GetHi() *Point
- func (m *Rectangle) GetLo() *Point
- func (*Rectangle) ProtoMessage()
- func (m *Rectangle) Reset()
- func (m *Rectangle) String() string
- func (m *Rectangle) XXX_DiscardUnknown()
- func (m *Rectangle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Rectangle) XXX_Merge(src proto.Message)
- func (m *Rectangle) XXX_Size() int
- func (m *Rectangle) XXX_Unmarshal(b []byte) error
- type RouteGuideClient
- type RouteGuideServer
- type RouteGuide_ListFeaturesClient
- type RouteGuide_ListFeaturesServer
- type RouteGuide_RecordRouteClient
- type RouteGuide_RecordRouteServer
- type RouteGuide_RouteChatClient
- type RouteGuide_RouteChatServer
- type RouteNote
- func (*RouteNote) Descriptor() ([]byte, []int)
- func (m *RouteNote) GetLocation() *Point
- func (m *RouteNote) GetMessage() string
- func (*RouteNote) ProtoMessage()
- func (m *RouteNote) Reset()
- func (m *RouteNote) String() string
- func (m *RouteNote) XXX_DiscardUnknown()
- func (m *RouteNote) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *RouteNote) XXX_Merge(src proto.Message)
- func (m *RouteNote) XXX_Size() int
- func (m *RouteNote) XXX_Unmarshal(b []byte) error
- type RouteSummary
- func (*RouteSummary) Descriptor() ([]byte, []int)
- func (m *RouteSummary) GetDistance() int32
- func (m *RouteSummary) GetElapsedTime() int32
- func (m *RouteSummary) GetFeatureCount() int32
- func (m *RouteSummary) GetPointCount() int32
- func (*RouteSummary) ProtoMessage()
- func (m *RouteSummary) Reset()
- func (m *RouteSummary) String() string
- func (m *RouteSummary) XXX_DiscardUnknown()
- func (m *RouteSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *RouteSummary) XXX_Merge(src proto.Message)
- func (m *RouteSummary) XXX_Size() int
- func (m *RouteSummary) XXX_Unmarshal(b []byte) error
- type UnimplementedRouteGuideServer
- func (*UnimplementedRouteGuideServer) GetFeature(ctx context.Context, req *Point) (*Feature, error)
- func (*UnimplementedRouteGuideServer) ListFeatures(req *Rectangle, srv RouteGuide_ListFeaturesServer) error
- func (*UnimplementedRouteGuideServer) RecordRoute(srv RouteGuide_RecordRouteServer) error
- func (*UnimplementedRouteGuideServer) RouteChat(srv RouteGuide_RouteChatServer) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterRouteGuideHandler ¶
func RegisterRouteGuideHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error
RegisterRouteGuideHandler registers the http handlers for service RouteGuide to "mux". The handlers forward requests to the grpc endpoint over "conn".
func RegisterRouteGuideHandlerClient ¶
func RegisterRouteGuideHandlerClient(ctx context.Context, mux *runtime.ServeMux, client RouteGuideClient) error
RegisterRouteGuideHandlerClient registers the http handlers for service RouteGuide to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "RouteGuideClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "RouteGuideClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "RouteGuideClient" to call the correct interceptors.
func RegisterRouteGuideHandlerFromEndpoint ¶
func RegisterRouteGuideHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)
RegisterRouteGuideHandlerFromEndpoint is same as RegisterRouteGuideHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.
func RegisterRouteGuideServer ¶
func RegisterRouteGuideServer(s *grpc.Server, srv RouteGuideServer)
Types ¶
type Feature ¶
type Feature struct { // The name of the feature. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // The point where the feature is detected. Location *Point `protobuf:"bytes,2,opt,name=location,proto3" json:"location,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
A feature names something at a given point.
If a feature could not be named, the name is empty.
func (*Feature) Descriptor ¶
func (*Feature) GetLocation ¶
func (*Feature) ProtoMessage ¶
func (*Feature) ProtoMessage()
func (*Feature) XXX_DiscardUnknown ¶
func (m *Feature) XXX_DiscardUnknown()
func (*Feature) XXX_Marshal ¶
func (*Feature) XXX_Unmarshal ¶
type Point ¶
type Point struct { Latitude int32 `protobuf:"varint,1,opt,name=latitude,proto3" json:"latitude,omitempty"` Longitude int32 `protobuf:"varint,2,opt,name=longitude,proto3" json:"longitude,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Points are represented as latitude-longitude pairs in the E7 representation (degrees multiplied by 10**7 and rounded to the nearest integer). Latitudes should be in the range +/- 90 degrees and longitude should be in the range +/- 180 degrees (inclusive).
func (*Point) Descriptor ¶
func (*Point) GetLatitude ¶
func (*Point) GetLongitude ¶
func (*Point) ProtoMessage ¶
func (*Point) ProtoMessage()
func (*Point) XXX_DiscardUnknown ¶
func (m *Point) XXX_DiscardUnknown()
func (*Point) XXX_Marshal ¶
func (*Point) XXX_Unmarshal ¶
type Rectangle ¶
type Rectangle struct { // One corner of the rectangle. Lo *Point `protobuf:"bytes,1,opt,name=lo,proto3" json:"lo,omitempty"` // The other corner of the rectangle. Hi *Point `protobuf:"bytes,2,opt,name=hi,proto3" json:"hi,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
A latitude-longitude rectangle, represented as two diagonally opposite points "lo" and "hi".
func (*Rectangle) Descriptor ¶
func (*Rectangle) ProtoMessage ¶
func (*Rectangle) ProtoMessage()
func (*Rectangle) XXX_DiscardUnknown ¶
func (m *Rectangle) XXX_DiscardUnknown()
func (*Rectangle) XXX_Marshal ¶
func (*Rectangle) XXX_Unmarshal ¶
type RouteGuideClient ¶
type RouteGuideClient interface { // A simple RPC. // // Obtains the feature at a given position. // // A feature with an empty name is returned if there's no feature at the given // position. GetFeature(ctx context.Context, in *Point, opts ...grpc.CallOption) (*Feature, error) // A server-to-client streaming RPC. // // Obtains the Features available within the given Rectangle. Results are // streamed rather than returned at once (e.g. in a response message with a // repeated field), as the rectangle may cover a large area and contain a // huge number of features. ListFeatures(ctx context.Context, in *Rectangle, opts ...grpc.CallOption) (RouteGuide_ListFeaturesClient, error) // A client-to-server streaming RPC. // // Accepts a stream of Points on a route being traversed, returning a // RouteSummary when traversal is completed. RecordRoute(ctx context.Context, opts ...grpc.CallOption) (RouteGuide_RecordRouteClient, error) // A Bidirectional streaming RPC. // // Accepts a stream of RouteNotes sent while a route is being traversed, // while receiving other RouteNotes (e.g. from other users). RouteChat(ctx context.Context, opts ...grpc.CallOption) (RouteGuide_RouteChatClient, error) }
RouteGuideClient is the client API for RouteGuide service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewRouteGuideClient ¶
func NewRouteGuideClient(cc *grpc.ClientConn) RouteGuideClient
type RouteGuideServer ¶
type RouteGuideServer interface { // A simple RPC. // // Obtains the feature at a given position. // // A feature with an empty name is returned if there's no feature at the given // position. GetFeature(context.Context, *Point) (*Feature, error) // A server-to-client streaming RPC. // // Obtains the Features available within the given Rectangle. Results are // streamed rather than returned at once (e.g. in a response message with a // repeated field), as the rectangle may cover a large area and contain a // huge number of features. ListFeatures(*Rectangle, RouteGuide_ListFeaturesServer) error // A client-to-server streaming RPC. // // Accepts a stream of Points on a route being traversed, returning a // RouteSummary when traversal is completed. RecordRoute(RouteGuide_RecordRouteServer) error // A Bidirectional streaming RPC. // // Accepts a stream of RouteNotes sent while a route is being traversed, // while receiving other RouteNotes (e.g. from other users). RouteChat(RouteGuide_RouteChatServer) error }
RouteGuideServer is the server API for RouteGuide service.
type RouteGuide_ListFeaturesClient ¶
type RouteGuide_ListFeaturesClient interface { Recv() (*Feature, error) grpc.ClientStream }
type RouteGuide_ListFeaturesServer ¶
type RouteGuide_ListFeaturesServer interface { Send(*Feature) error grpc.ServerStream }
type RouteGuide_RecordRouteClient ¶
type RouteGuide_RecordRouteClient interface { Send(*Point) error CloseAndRecv() (*RouteSummary, error) grpc.ClientStream }
type RouteGuide_RecordRouteServer ¶
type RouteGuide_RecordRouteServer interface { SendAndClose(*RouteSummary) error Recv() (*Point, error) grpc.ServerStream }
type RouteNote ¶
type RouteNote struct { // The location from which the message is sent. Location *Point `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"` // The message to be sent. Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
A RouteNote is a message sent while at a given point.
func (*RouteNote) Descriptor ¶
func (*RouteNote) GetLocation ¶
func (*RouteNote) GetMessage ¶
func (*RouteNote) ProtoMessage ¶
func (*RouteNote) ProtoMessage()
func (*RouteNote) XXX_DiscardUnknown ¶
func (m *RouteNote) XXX_DiscardUnknown()
func (*RouteNote) XXX_Marshal ¶
func (*RouteNote) XXX_Unmarshal ¶
type RouteSummary ¶
type RouteSummary struct { // The number of points received. PointCount int32 `protobuf:"varint,1,opt,name=point_count,json=pointCount,proto3" json:"point_count,omitempty"` // The number of known features passed while traversing the route. FeatureCount int32 `protobuf:"varint,2,opt,name=feature_count,json=featureCount,proto3" json:"feature_count,omitempty"` // The distance covered in metres. Distance int32 `protobuf:"varint,3,opt,name=distance,proto3" json:"distance,omitempty"` // The duration of the traversal in seconds. ElapsedTime int32 `protobuf:"varint,4,opt,name=elapsed_time,json=elapsedTime,proto3" json:"elapsed_time,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
A RouteSummary is received in response to a RecordRoute rpc.
It contains the number of individual points received, the number of detected features, and the total distance covered as the cumulative sum of the distance between each point.
func (*RouteSummary) Descriptor ¶
func (*RouteSummary) Descriptor() ([]byte, []int)
func (*RouteSummary) GetDistance ¶
func (m *RouteSummary) GetDistance() int32
func (*RouteSummary) GetElapsedTime ¶
func (m *RouteSummary) GetElapsedTime() int32
func (*RouteSummary) GetFeatureCount ¶
func (m *RouteSummary) GetFeatureCount() int32
func (*RouteSummary) GetPointCount ¶
func (m *RouteSummary) GetPointCount() int32
func (*RouteSummary) ProtoMessage ¶
func (*RouteSummary) ProtoMessage()
func (*RouteSummary) Reset ¶
func (m *RouteSummary) Reset()
func (*RouteSummary) String ¶
func (m *RouteSummary) String() string
func (*RouteSummary) XXX_DiscardUnknown ¶
func (m *RouteSummary) XXX_DiscardUnknown()
func (*RouteSummary) XXX_Marshal ¶
func (m *RouteSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*RouteSummary) XXX_Merge ¶
func (m *RouteSummary) XXX_Merge(src proto.Message)
func (*RouteSummary) XXX_Size ¶
func (m *RouteSummary) XXX_Size() int
func (*RouteSummary) XXX_Unmarshal ¶
func (m *RouteSummary) XXX_Unmarshal(b []byte) error
type UnimplementedRouteGuideServer ¶
type UnimplementedRouteGuideServer struct { }
UnimplementedRouteGuideServer can be embedded to have forward compatible implementations.
func (*UnimplementedRouteGuideServer) GetFeature ¶
func (*UnimplementedRouteGuideServer) ListFeatures ¶
func (*UnimplementedRouteGuideServer) ListFeatures(req *Rectangle, srv RouteGuide_ListFeaturesServer) error
func (*UnimplementedRouteGuideServer) RecordRoute ¶
func (*UnimplementedRouteGuideServer) RecordRoute(srv RouteGuide_RecordRouteServer) error
func (*UnimplementedRouteGuideServer) RouteChat ¶
func (*UnimplementedRouteGuideServer) RouteChat(srv RouteGuide_RouteChatServer) error