add support for streaming requests. cleanup watcher initilisation
This commit is contained in:
@@ -13,7 +13,24 @@ type Example struct{}
|
||||
|
||||
func (e *Example) Call(ctx context.Context, req *example.Request, rsp *example.Response) error {
|
||||
md, _ := c.GetMetadata(ctx)
|
||||
log.Info("Received Example.Call request with metadata: %v", md)
|
||||
log.Infof("Received Example.Call request with metadata: %v", md)
|
||||
rsp.Msg = server.Config().Id() + ": Hello " + req.Name
|
||||
return nil
|
||||
}
|
||||
|
||||
func (e *Example) Stream(ctx context.Context, req *example.StreamingRequest, response func(interface{}) error) error {
|
||||
log.Infof("Received Example.Stream request with count: %d", req.Count)
|
||||
for i := 0; i < int(req.Count); i++ {
|
||||
log.Infof("Responding: %d", i)
|
||||
|
||||
r := &example.StreamingResponse{
|
||||
Count: int64(i),
|
||||
}
|
||||
|
||||
if err := response(r); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
@@ -11,6 +11,8 @@ It is generated from these files:
|
||||
It has these top-level messages:
|
||||
Request
|
||||
Response
|
||||
StreamingRequest
|
||||
StreamingResponse
|
||||
*/
|
||||
package example
|
||||
|
||||
@@ -35,5 +37,21 @@ func (m *Response) Reset() { *m = Response{} }
|
||||
func (m *Response) String() string { return proto.CompactTextString(m) }
|
||||
func (*Response) ProtoMessage() {}
|
||||
|
||||
type StreamingRequest struct {
|
||||
Count int64 `protobuf:"varint,1,opt,name=count" json:"count,omitempty"`
|
||||
}
|
||||
|
||||
func (m *StreamingRequest) Reset() { *m = StreamingRequest{} }
|
||||
func (m *StreamingRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*StreamingRequest) ProtoMessage() {}
|
||||
|
||||
type StreamingResponse struct {
|
||||
Count int64 `protobuf:"varint,1,opt,name=count" json:"count,omitempty"`
|
||||
}
|
||||
|
||||
func (m *StreamingResponse) Reset() { *m = StreamingResponse{} }
|
||||
func (m *StreamingResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*StreamingResponse) ProtoMessage() {}
|
||||
|
||||
func init() {
|
||||
}
|
||||
|
@@ -7,3 +7,11 @@ message Request {
|
||||
message Response {
|
||||
string msg = 1;
|
||||
}
|
||||
|
||||
message StreamingRequest {
|
||||
int64 count = 1;
|
||||
}
|
||||
|
||||
message StreamingResponse {
|
||||
int64 count = 1;
|
||||
}
|
||||
|
Reference in New Issue
Block a user