Sergiusz Bazanski | e5a956a | 2019-11-17 22:38:40 +0100 | [diff] [blame] | 1 | // Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. |
| 2 | // source: opencensus/proto/agent/metrics/v1/metrics_service.proto |
| 3 | |
| 4 | /* |
| 5 | Package v1 is a reverse proxy. |
| 6 | |
| 7 | It translates gRPC into RESTful JSON APIs. |
| 8 | */ |
| 9 | package v1 |
| 10 | |
| 11 | import ( |
| 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 | |
| 25 | var _ codes.Code |
| 26 | var _ io.Reader |
| 27 | var _ status.Status |
| 28 | var _ = runtime.String |
| 29 | var _ = utilities.NewDoubleArray |
| 30 | |
| 31 | func request_MetricsService_Export_0(ctx context.Context, marshaler runtime.Marshaler, client MetricsServiceClient, req *http.Request, pathParams map[string]string) (MetricsService_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 ExportMetricsServiceRequest |
| 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 | // RegisterMetricsServiceHandlerFromEndpoint is same as RegisterMetricsServiceHandler but |
| 84 | // automatically dials to "endpoint" and closes the connection when "ctx" gets done. |
| 85 | func RegisterMetricsServiceHandlerFromEndpoint(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 RegisterMetricsServiceHandler(ctx, mux, conn) |
| 106 | } |
| 107 | |
| 108 | // RegisterMetricsServiceHandler registers the http handlers for service MetricsService to "mux". |
| 109 | // The handlers forward requests to the grpc endpoint over "conn". |
| 110 | func RegisterMetricsServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { |
| 111 | return RegisterMetricsServiceHandlerClient(ctx, mux, NewMetricsServiceClient(conn)) |
| 112 | } |
| 113 | |
| 114 | // RegisterMetricsServiceHandlerClient registers the http handlers for service MetricsService |
| 115 | // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "MetricsServiceClient". |
| 116 | // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "MetricsServiceClient" |
| 117 | // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in |
| 118 | // "MetricsServiceClient" to call the correct interceptors. |
| 119 | func RegisterMetricsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client MetricsServiceClient) error { |
| 120 | |
| 121 | mux.Handle("POST", pattern_MetricsService_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_MetricsService_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_MetricsService_Export_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) |
| 138 | |
| 139 | }) |
| 140 | |
| 141 | return nil |
| 142 | } |
| 143 | |
| 144 | var ( |
| 145 | pattern_MetricsService_Export_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "metrics"}, "")) |
| 146 | ) |
| 147 | |
| 148 | var ( |
| 149 | forward_MetricsService_Export_0 = runtime.ForwardResponseStream |
| 150 | ) |