blob: 334331b0dd11188abc70c014dc403c08eea3b6d3 [file] [log] [blame]
Sergiusz Bazanskie5a956a2019-11-17 22:38:40 +01001// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT.
2// source: opencensus/proto/agent/trace/v1/trace_service.proto
3
4/*
5Package v1 is a reverse proxy.
6
7It translates gRPC into RESTful JSON APIs.
8*/
9package v1
10
11import (
12 "context"
13 "io"
14 "net/http"
15
16 "github.com/golang/protobuf/proto"
17 "github.com/grpc-ecosystem/grpc-gateway/runtime"
18 "github.com/grpc-ecosystem/grpc-gateway/utilities"
19 "google.golang.org/grpc"
20 "google.golang.org/grpc/codes"
21 "google.golang.org/grpc/grpclog"
22 "google.golang.org/grpc/status"
23)
24
25var _ codes.Code
26var _ io.Reader
27var _ status.Status
28var _ = runtime.String
29var _ = utilities.NewDoubleArray
30
31func request_TraceService_Export_0(ctx context.Context, marshaler runtime.Marshaler, client TraceServiceClient, req *http.Request, pathParams map[string]string) (TraceService_ExportClient, runtime.ServerMetadata, error) {
32 var metadata runtime.ServerMetadata
33 stream, err := client.Export(ctx)
34 if err != nil {
35 grpclog.Infof("Failed to start streaming: %v", err)
36 return nil, metadata, err
37 }
38 dec := marshaler.NewDecoder(req.Body)
39 handleSend := func() error {
40 var protoReq ExportTraceServiceRequest
41 err := dec.Decode(&protoReq)
42 if err == io.EOF {
43 return err
44 }
45 if err != nil {
46 grpclog.Infof("Failed to decode request: %v", err)
47 return err
48 }
49 if err := stream.Send(&protoReq); err != nil {
50 grpclog.Infof("Failed to send request: %v", err)
51 return err
52 }
53 return nil
54 }
55 if err := handleSend(); err != nil {
56 if cerr := stream.CloseSend(); cerr != nil {
57 grpclog.Infof("Failed to terminate client stream: %v", cerr)
58 }
59 if err == io.EOF {
60 return stream, metadata, nil
61 }
62 return nil, metadata, err
63 }
64 go func() {
65 for {
66 if err := handleSend(); err != nil {
67 break
68 }
69 }
70 if err := stream.CloseSend(); err != nil {
71 grpclog.Infof("Failed to terminate client stream: %v", err)
72 }
73 }()
74 header, err := stream.Header()
75 if err != nil {
76 grpclog.Infof("Failed to get header from client: %v", err)
77 return nil, metadata, err
78 }
79 metadata.HeaderMD = header
80 return stream, metadata, nil
81}
82
83// RegisterTraceServiceHandlerFromEndpoint is same as RegisterTraceServiceHandler but
84// automatically dials to "endpoint" and closes the connection when "ctx" gets done.
85func RegisterTraceServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) {
86 conn, err := grpc.Dial(endpoint, opts...)
87 if err != nil {
88 return err
89 }
90 defer func() {
91 if err != nil {
92 if cerr := conn.Close(); cerr != nil {
93 grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr)
94 }
95 return
96 }
97 go func() {
98 <-ctx.Done()
99 if cerr := conn.Close(); cerr != nil {
100 grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr)
101 }
102 }()
103 }()
104
105 return RegisterTraceServiceHandler(ctx, mux, conn)
106}
107
108// RegisterTraceServiceHandler registers the http handlers for service TraceService to "mux".
109// The handlers forward requests to the grpc endpoint over "conn".
110func RegisterTraceServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error {
111 return RegisterTraceServiceHandlerClient(ctx, mux, NewTraceServiceClient(conn))
112}
113
114// RegisterTraceServiceHandlerClient registers the http handlers for service TraceService
115// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "TraceServiceClient".
116// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "TraceServiceClient"
117// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in
118// "TraceServiceClient" to call the correct interceptors.
119func RegisterTraceServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client TraceServiceClient) error {
120
121 mux.Handle("POST", pattern_TraceService_Export_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
122 ctx, cancel := context.WithCancel(req.Context())
123 defer cancel()
124 inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
125 rctx, err := runtime.AnnotateContext(ctx, mux, req)
126 if err != nil {
127 runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
128 return
129 }
130 resp, md, err := request_TraceService_Export_0(rctx, inboundMarshaler, client, req, pathParams)
131 ctx = runtime.NewServerMetadataContext(ctx, md)
132 if err != nil {
133 runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
134 return
135 }
136
137 forward_TraceService_Export_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...)
138
139 })
140
141 return nil
142}
143
144var (
145 pattern_TraceService_Export_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "trace"}, ""))
146)
147
148var (
149 forward_TraceService_Export_0 = runtime.ForwardResponseStream
150)