Documentation ¶
Index ¶
- Variables
- func FetchRandomXKCD() ([]byte, error)
- func FetchXKCD(num int) ([]byte, error)
- func GRPCServer() *grpc.Server
- func RegisterXKCDServiceServer(s grpc.ServiceRegistrar, srv XKCDServiceServer)
- func XkcdHandler(w http.ResponseWriter, r *http.Request)
- type Message
- func (*Message) Descriptor() ([]byte, []int)deprecated
- func (x *Message) GetAlt() string
- func (x *Message) GetDate() string
- func (x *Message) GetImg() string
- func (x *Message) GetNumber() int64
- func (x *Message) GetTitle() string
- func (*Message) ProtoMessage()
- func (x *Message) ProtoReflect() protoreflect.Message
- func (x *Message) Reset()
- func (x *Message) String() string
- type MessageNumber
- type UnimplementedXKCDServiceServer
- type UnsafeXKCDServiceServer
- type XKCD
- type XKCDService
- type XKCDServiceClient
- type XKCDServiceServer
Constants ¶
This section is empty.
Variables ¶
var File_grpcpass_proto_grpcpass_proto protoreflect.FileDescriptor
var XKCDService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "grpcpass.XKCDService", HandlerType: (*XKCDServiceServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "GetXKCD", Handler: _XKCDService_GetXKCD_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "grpcpass/proto/grpcpass.proto", }
XKCDService_ServiceDesc is the grpc.ServiceDesc for XKCDService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func FetchRandomXKCD ¶
FetchRandomXKCD fetch info for a comic for a day from xkcd
func RegisterXKCDServiceServer ¶
func RegisterXKCDServiceServer(s grpc.ServiceRegistrar, srv XKCDServiceServer)
func XkcdHandler ¶
func XkcdHandler(w http.ResponseWriter, r *http.Request)
XkcdHandler handler for XKCD data
Types ¶
type Message ¶
type Message struct { Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"` Date string `protobuf:"bytes,2,opt,name=date,proto3" json:"date,omitempty"` Img string `protobuf:"bytes,3,opt,name=img,proto3" json:"img,omitempty"` Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title,omitempty"` Alt string `protobuf:"bytes,5,opt,name=alt,proto3" json:"alt,omitempty"` // contains filtered or unexported fields }
func (*Message) Descriptor
deprecated
func (*Message) ProtoMessage ¶
func (*Message) ProtoMessage()
func (*Message) ProtoReflect ¶
func (x *Message) ProtoReflect() protoreflect.Message
type MessageNumber ¶
type MessageNumber struct { Number int64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"` // contains filtered or unexported fields }
func (*MessageNumber) Descriptor
deprecated
func (*MessageNumber) Descriptor() ([]byte, []int)
Deprecated: Use MessageNumber.ProtoReflect.Descriptor instead.
func (*MessageNumber) GetNumber ¶
func (x *MessageNumber) GetNumber() int64
func (*MessageNumber) ProtoMessage ¶
func (*MessageNumber) ProtoMessage()
func (*MessageNumber) ProtoReflect ¶
func (x *MessageNumber) ProtoReflect() protoreflect.Message
func (*MessageNumber) Reset ¶
func (x *MessageNumber) Reset()
func (*MessageNumber) String ¶
func (x *MessageNumber) String() string
type UnimplementedXKCDServiceServer ¶
type UnimplementedXKCDServiceServer struct { }
UnimplementedXKCDServiceServer must be embedded to have forward compatible implementations.
func (UnimplementedXKCDServiceServer) GetXKCD ¶
func (UnimplementedXKCDServiceServer) GetXKCD(context.Context, *MessageNumber) (*Message, error)
type UnsafeXKCDServiceServer ¶
type UnsafeXKCDServiceServer interface {
// contains filtered or unexported methods
}
UnsafeXKCDServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to XKCDServiceServer will result in compilation errors.
type XKCD ¶
type XKCD struct { Number int `json:"number"` Date string `json:"date"` Title string `json:"title"` AltText string `json:"alt"` Img string `json:"img"` NextLoadMS int `json:"nextloadms"` // random next load time }
XKCD a struct to contain the elements of an xkcd image to be used by the app
func ParseXKCDJSON ¶
ParseXKCDJSON rather than use a map[string]interface{} use a library that handles JSON Path and type conversion.
type XKCDService ¶
type XKCDService struct {
UnimplementedXKCDServiceServer
}
XKCDService a server
func (*XKCDService) GetXKCD ¶
func (s *XKCDService) GetXKCD(ctx context.Context, in *MessageNumber) (*Message, error)
GetXKCD get an xkcd url and description Presumably this will be used by the GRPC infrastructure func (s *XKCDService) GetXKCD(ctx context.Context, in *MessageNumber, opts ...grpc.CallOption) (*Message, error) {
type XKCDServiceClient ¶
type XKCDServiceClient interface {
GetXKCD(ctx context.Context, in *MessageNumber, opts ...grpc.CallOption) (*Message, error)
}
XKCDServiceClient is the client API for XKCDService service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
func NewXKCDServiceClient ¶
func NewXKCDServiceClient(cc grpc.ClientConnInterface) XKCDServiceClient
type XKCDServiceServer ¶
type XKCDServiceServer interface { GetXKCD(context.Context, *MessageNumber) (*Message, error) // contains filtered or unexported methods }
XKCDServiceServer is the server API for XKCDService service. All implementations must embed UnimplementedXKCDServiceServer for forward compatibility