gitee.com/ks-custle/core-gm@v0.0.0-20230922171213-b83bdd97b62c/go-control-plane/envoy/service/trace/v2/trace_service.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.25.0
     4  // 	protoc        v3.16.0
     5  // source: envoy/service/trace/v2/trace_service.proto
     6  
     7  package envoy_service_trace_v2
     8  
     9  import (
    10  	context "context"
    11  	v1 "github.com/census-instrumentation/opencensus-proto/gen-go/trace/v1"
    12  	_ "github.com/cncf/xds/go/udpa/annotations"
    13  	core "gitee.com/ks-custle/core-gm/go-control-plane/envoy/api/v2/core"
    14  	_ "github.com/envoyproxy/protoc-gen-validate/validate"
    15  	proto "github.com/golang/protobuf/proto"
    16  	grpc "gitee.com/ks-custle/core-gm/grpc"
    17  	codes "gitee.com/ks-custle/core-gm/grpc/codes"
    18  	status "gitee.com/ks-custle/core-gm/grpc/status"
    19  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    20  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    21  	reflect "reflect"
    22  	sync "sync"
    23  )
    24  
    25  const (
    26  	// Verify that this generated code is sufficiently up-to-date.
    27  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    28  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    29  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    30  )
    31  
    32  // This is a compile-time assertion that a sufficiently up-to-date version
    33  // of the legacy proto package is being used.
    34  const _ = proto.ProtoPackageIsVersion4
    35  
    36  type StreamTracesResponse struct {
    37  	state         protoimpl.MessageState
    38  	sizeCache     protoimpl.SizeCache
    39  	unknownFields protoimpl.UnknownFields
    40  }
    41  
    42  func (x *StreamTracesResponse) Reset() {
    43  	*x = StreamTracesResponse{}
    44  	if protoimpl.UnsafeEnabled {
    45  		mi := &file_envoy_service_trace_v2_trace_service_proto_msgTypes[0]
    46  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    47  		ms.StoreMessageInfo(mi)
    48  	}
    49  }
    50  
    51  func (x *StreamTracesResponse) String() string {
    52  	return protoimpl.X.MessageStringOf(x)
    53  }
    54  
    55  func (*StreamTracesResponse) ProtoMessage() {}
    56  
    57  func (x *StreamTracesResponse) ProtoReflect() protoreflect.Message {
    58  	mi := &file_envoy_service_trace_v2_trace_service_proto_msgTypes[0]
    59  	if protoimpl.UnsafeEnabled && x != nil {
    60  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    61  		if ms.LoadMessageInfo() == nil {
    62  			ms.StoreMessageInfo(mi)
    63  		}
    64  		return ms
    65  	}
    66  	return mi.MessageOf(x)
    67  }
    68  
    69  // Deprecated: Use StreamTracesResponse.ProtoReflect.Descriptor instead.
    70  func (*StreamTracesResponse) Descriptor() ([]byte, []int) {
    71  	return file_envoy_service_trace_v2_trace_service_proto_rawDescGZIP(), []int{0}
    72  }
    73  
    74  type StreamTracesMessage struct {
    75  	state         protoimpl.MessageState
    76  	sizeCache     protoimpl.SizeCache
    77  	unknownFields protoimpl.UnknownFields
    78  
    79  	// Identifier data effectively is a structured metadata.
    80  	// As a performance optimization this will only be sent in the first message
    81  	// on the stream.
    82  	Identifier *StreamTracesMessage_Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
    83  	// A list of Span entries
    84  	Spans []*v1.Span `protobuf:"bytes,2,rep,name=spans,proto3" json:"spans,omitempty"`
    85  }
    86  
    87  func (x *StreamTracesMessage) Reset() {
    88  	*x = StreamTracesMessage{}
    89  	if protoimpl.UnsafeEnabled {
    90  		mi := &file_envoy_service_trace_v2_trace_service_proto_msgTypes[1]
    91  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    92  		ms.StoreMessageInfo(mi)
    93  	}
    94  }
    95  
    96  func (x *StreamTracesMessage) String() string {
    97  	return protoimpl.X.MessageStringOf(x)
    98  }
    99  
   100  func (*StreamTracesMessage) ProtoMessage() {}
   101  
   102  func (x *StreamTracesMessage) ProtoReflect() protoreflect.Message {
   103  	mi := &file_envoy_service_trace_v2_trace_service_proto_msgTypes[1]
   104  	if protoimpl.UnsafeEnabled && x != nil {
   105  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   106  		if ms.LoadMessageInfo() == nil {
   107  			ms.StoreMessageInfo(mi)
   108  		}
   109  		return ms
   110  	}
   111  	return mi.MessageOf(x)
   112  }
   113  
   114  // Deprecated: Use StreamTracesMessage.ProtoReflect.Descriptor instead.
   115  func (*StreamTracesMessage) Descriptor() ([]byte, []int) {
   116  	return file_envoy_service_trace_v2_trace_service_proto_rawDescGZIP(), []int{1}
   117  }
   118  
   119  func (x *StreamTracesMessage) GetIdentifier() *StreamTracesMessage_Identifier {
   120  	if x != nil {
   121  		return x.Identifier
   122  	}
   123  	return nil
   124  }
   125  
   126  func (x *StreamTracesMessage) GetSpans() []*v1.Span {
   127  	if x != nil {
   128  		return x.Spans
   129  	}
   130  	return nil
   131  }
   132  
   133  type StreamTracesMessage_Identifier struct {
   134  	state         protoimpl.MessageState
   135  	sizeCache     protoimpl.SizeCache
   136  	unknownFields protoimpl.UnknownFields
   137  
   138  	// The node sending the access log messages over the stream.
   139  	Node *core.Node `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"`
   140  }
   141  
   142  func (x *StreamTracesMessage_Identifier) Reset() {
   143  	*x = StreamTracesMessage_Identifier{}
   144  	if protoimpl.UnsafeEnabled {
   145  		mi := &file_envoy_service_trace_v2_trace_service_proto_msgTypes[2]
   146  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   147  		ms.StoreMessageInfo(mi)
   148  	}
   149  }
   150  
   151  func (x *StreamTracesMessage_Identifier) String() string {
   152  	return protoimpl.X.MessageStringOf(x)
   153  }
   154  
   155  func (*StreamTracesMessage_Identifier) ProtoMessage() {}
   156  
   157  func (x *StreamTracesMessage_Identifier) ProtoReflect() protoreflect.Message {
   158  	mi := &file_envoy_service_trace_v2_trace_service_proto_msgTypes[2]
   159  	if protoimpl.UnsafeEnabled && x != nil {
   160  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   161  		if ms.LoadMessageInfo() == nil {
   162  			ms.StoreMessageInfo(mi)
   163  		}
   164  		return ms
   165  	}
   166  	return mi.MessageOf(x)
   167  }
   168  
   169  // Deprecated: Use StreamTracesMessage_Identifier.ProtoReflect.Descriptor instead.
   170  func (*StreamTracesMessage_Identifier) Descriptor() ([]byte, []int) {
   171  	return file_envoy_service_trace_v2_trace_service_proto_rawDescGZIP(), []int{1, 0}
   172  }
   173  
   174  func (x *StreamTracesMessage_Identifier) GetNode() *core.Node {
   175  	if x != nil {
   176  		return x.Node
   177  	}
   178  	return nil
   179  }
   180  
   181  var File_envoy_service_trace_v2_trace_service_proto protoreflect.FileDescriptor
   182  
   183  var file_envoy_service_trace_v2_trace_service_proto_rawDesc = []byte{
   184  	0x0a, 0x2a, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f,
   185  	0x74, 0x72, 0x61, 0x63, 0x65, 0x2f, 0x76, 0x32, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x73,
   186  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x16, 0x65, 0x6e,
   187  	0x76, 0x6f, 0x79, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x63,
   188  	0x65, 0x2e, 0x76, 0x32, 0x1a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f,
   189  	0x76, 0x32, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f,
   190  	0x74, 0x6f, 0x1a, 0x25, 0x6f, 0x70, 0x65, 0x6e, 0x63, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2f, 0x70,
   191  	0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72,
   192  	0x61, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f,
   193  	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74,
   194  	0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
   195  	0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   196  	0x6f, 0x22, 0x16, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x65,
   197  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe9, 0x01, 0x0a, 0x13, 0x53, 0x74,
   198  	0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
   199  	0x65, 0x12, 0x56, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18,
   200  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x73, 0x65,
   201  	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x63, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x53,
   202  	0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61,
   203  	0x67, 0x65, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0a, 0x69,
   204  	0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x05, 0x73, 0x70, 0x61,
   205  	0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x63,
   206  	0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x63,
   207  	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x61, 0x6e, 0x52, 0x05, 0x73, 0x70, 0x61, 0x6e, 0x73,
   208  	0x1a, 0x43, 0x0a, 0x0a, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x35,
   209  	0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65,
   210  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65,
   211  	0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52,
   212  	0x04, 0x6e, 0x6f, 0x64, 0x65, 0x32, 0x7d, 0x0a, 0x0c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x53, 0x65,
   213  	0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6d, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54,
   214  	0x72, 0x61, 0x63, 0x65, 0x73, 0x12, 0x2b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x73, 0x65,
   215  	0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x63, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x53,
   216  	0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61,
   217  	0x67, 0x65, 0x1a, 0x2c, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
   218  	0x63, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x63, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x74, 0x72, 0x65,
   219  	0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
   220  	0x22, 0x00, 0x28, 0x01, 0x42, 0x46, 0x0a, 0x24, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
   221  	0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x73, 0x65, 0x72, 0x76,
   222  	0x69, 0x63, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x63, 0x65, 0x2e, 0x76, 0x32, 0x42, 0x11, 0x54, 0x72,
   223  	0x61, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
   224  	0x01, 0x88, 0x01, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72,
   225  	0x6f, 0x74, 0x6f, 0x33,
   226  }
   227  
   228  var (
   229  	file_envoy_service_trace_v2_trace_service_proto_rawDescOnce sync.Once
   230  	file_envoy_service_trace_v2_trace_service_proto_rawDescData = file_envoy_service_trace_v2_trace_service_proto_rawDesc
   231  )
   232  
   233  func file_envoy_service_trace_v2_trace_service_proto_rawDescGZIP() []byte {
   234  	file_envoy_service_trace_v2_trace_service_proto_rawDescOnce.Do(func() {
   235  		file_envoy_service_trace_v2_trace_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_service_trace_v2_trace_service_proto_rawDescData)
   236  	})
   237  	return file_envoy_service_trace_v2_trace_service_proto_rawDescData
   238  }
   239  
   240  var file_envoy_service_trace_v2_trace_service_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
   241  var file_envoy_service_trace_v2_trace_service_proto_goTypes = []interface{}{
   242  	(*StreamTracesResponse)(nil),           // 0: envoy.service.trace.v2.StreamTracesResponse
   243  	(*StreamTracesMessage)(nil),            // 1: envoy.service.trace.v2.StreamTracesMessage
   244  	(*StreamTracesMessage_Identifier)(nil), // 2: envoy.service.trace.v2.StreamTracesMessage.Identifier
   245  	(*v1.Span)(nil),                        // 3: opencensus.proto.trace.v1.Span
   246  	(*core.Node)(nil),                      // 4: envoy.api.v2.core.Node
   247  }
   248  var file_envoy_service_trace_v2_trace_service_proto_depIdxs = []int32{
   249  	2, // 0: envoy.service.trace.v2.StreamTracesMessage.identifier:type_name -> envoy.service.trace.v2.StreamTracesMessage.Identifier
   250  	3, // 1: envoy.service.trace.v2.StreamTracesMessage.spans:type_name -> opencensus.proto.trace.v1.Span
   251  	4, // 2: envoy.service.trace.v2.StreamTracesMessage.Identifier.node:type_name -> envoy.api.v2.core.Node
   252  	1, // 3: envoy.service.trace.v2.TraceService.StreamTraces:input_type -> envoy.service.trace.v2.StreamTracesMessage
   253  	0, // 4: envoy.service.trace.v2.TraceService.StreamTraces:output_type -> envoy.service.trace.v2.StreamTracesResponse
   254  	4, // [4:5] is the sub-list for method output_type
   255  	3, // [3:4] is the sub-list for method input_type
   256  	3, // [3:3] is the sub-list for extension type_name
   257  	3, // [3:3] is the sub-list for extension extendee
   258  	0, // [0:3] is the sub-list for field type_name
   259  }
   260  
   261  func init() { file_envoy_service_trace_v2_trace_service_proto_init() }
   262  func file_envoy_service_trace_v2_trace_service_proto_init() {
   263  	if File_envoy_service_trace_v2_trace_service_proto != nil {
   264  		return
   265  	}
   266  	if !protoimpl.UnsafeEnabled {
   267  		file_envoy_service_trace_v2_trace_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   268  			switch v := v.(*StreamTracesResponse); i {
   269  			case 0:
   270  				return &v.state
   271  			case 1:
   272  				return &v.sizeCache
   273  			case 2:
   274  				return &v.unknownFields
   275  			default:
   276  				return nil
   277  			}
   278  		}
   279  		file_envoy_service_trace_v2_trace_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   280  			switch v := v.(*StreamTracesMessage); i {
   281  			case 0:
   282  				return &v.state
   283  			case 1:
   284  				return &v.sizeCache
   285  			case 2:
   286  				return &v.unknownFields
   287  			default:
   288  				return nil
   289  			}
   290  		}
   291  		file_envoy_service_trace_v2_trace_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   292  			switch v := v.(*StreamTracesMessage_Identifier); i {
   293  			case 0:
   294  				return &v.state
   295  			case 1:
   296  				return &v.sizeCache
   297  			case 2:
   298  				return &v.unknownFields
   299  			default:
   300  				return nil
   301  			}
   302  		}
   303  	}
   304  	type x struct{}
   305  	out := protoimpl.TypeBuilder{
   306  		File: protoimpl.DescBuilder{
   307  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   308  			RawDescriptor: file_envoy_service_trace_v2_trace_service_proto_rawDesc,
   309  			NumEnums:      0,
   310  			NumMessages:   3,
   311  			NumExtensions: 0,
   312  			NumServices:   1,
   313  		},
   314  		GoTypes:           file_envoy_service_trace_v2_trace_service_proto_goTypes,
   315  		DependencyIndexes: file_envoy_service_trace_v2_trace_service_proto_depIdxs,
   316  		MessageInfos:      file_envoy_service_trace_v2_trace_service_proto_msgTypes,
   317  	}.Build()
   318  	File_envoy_service_trace_v2_trace_service_proto = out.File
   319  	file_envoy_service_trace_v2_trace_service_proto_rawDesc = nil
   320  	file_envoy_service_trace_v2_trace_service_proto_goTypes = nil
   321  	file_envoy_service_trace_v2_trace_service_proto_depIdxs = nil
   322  }
   323  
   324  // Reference imports to suppress errors if they are not otherwise used.
   325  var _ context.Context
   326  var _ grpc.ClientConnInterface
   327  
   328  // This is a compile-time assertion to ensure that this generated file
   329  // is compatible with the grpc package it is being compiled against.
   330  const _ = grpc.SupportPackageIsVersion6
   331  
   332  // TraceServiceClient is the client API for TraceService service.
   333  //
   334  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
   335  type TraceServiceClient interface {
   336  	// Envoy will connect and send StreamTracesMessage messages forever. It does
   337  	// not expect any response to be sent as nothing would be done in the case
   338  	// of failure.
   339  	StreamTraces(ctx context.Context, opts ...grpc.CallOption) (TraceService_StreamTracesClient, error)
   340  }
   341  
   342  type traceServiceClient struct {
   343  	cc grpc.ClientConnInterface
   344  }
   345  
   346  func NewTraceServiceClient(cc grpc.ClientConnInterface) TraceServiceClient {
   347  	return &traceServiceClient{cc}
   348  }
   349  
   350  func (c *traceServiceClient) StreamTraces(ctx context.Context, opts ...grpc.CallOption) (TraceService_StreamTracesClient, error) {
   351  	stream, err := c.cc.NewStream(ctx, &_TraceService_serviceDesc.Streams[0], "/envoy.service.trace.v2.TraceService/StreamTraces", opts...)
   352  	if err != nil {
   353  		return nil, err
   354  	}
   355  	x := &traceServiceStreamTracesClient{stream}
   356  	return x, nil
   357  }
   358  
   359  type TraceService_StreamTracesClient interface {
   360  	Send(*StreamTracesMessage) error
   361  	CloseAndRecv() (*StreamTracesResponse, error)
   362  	grpc.ClientStream
   363  }
   364  
   365  type traceServiceStreamTracesClient struct {
   366  	grpc.ClientStream
   367  }
   368  
   369  func (x *traceServiceStreamTracesClient) Send(m *StreamTracesMessage) error {
   370  	return x.ClientStream.SendMsg(m)
   371  }
   372  
   373  func (x *traceServiceStreamTracesClient) CloseAndRecv() (*StreamTracesResponse, error) {
   374  	if err := x.ClientStream.CloseSend(); err != nil {
   375  		return nil, err
   376  	}
   377  	m := new(StreamTracesResponse)
   378  	if err := x.ClientStream.RecvMsg(m); err != nil {
   379  		return nil, err
   380  	}
   381  	return m, nil
   382  }
   383  
   384  // TraceServiceServer is the server API for TraceService service.
   385  type TraceServiceServer interface {
   386  	// Envoy will connect and send StreamTracesMessage messages forever. It does
   387  	// not expect any response to be sent as nothing would be done in the case
   388  	// of failure.
   389  	StreamTraces(TraceService_StreamTracesServer) error
   390  }
   391  
   392  // UnimplementedTraceServiceServer can be embedded to have forward compatible implementations.
   393  type UnimplementedTraceServiceServer struct {
   394  }
   395  
   396  func (*UnimplementedTraceServiceServer) StreamTraces(TraceService_StreamTracesServer) error {
   397  	return status.Errorf(codes.Unimplemented, "method StreamTraces not implemented")
   398  }
   399  
   400  func RegisterTraceServiceServer(s *grpc.Server, srv TraceServiceServer) {
   401  	s.RegisterService(&_TraceService_serviceDesc, srv)
   402  }
   403  
   404  func _TraceService_StreamTraces_Handler(srv interface{}, stream grpc.ServerStream) error {
   405  	return srv.(TraceServiceServer).StreamTraces(&traceServiceStreamTracesServer{stream})
   406  }
   407  
   408  type TraceService_StreamTracesServer interface {
   409  	SendAndClose(*StreamTracesResponse) error
   410  	Recv() (*StreamTracesMessage, error)
   411  	grpc.ServerStream
   412  }
   413  
   414  type traceServiceStreamTracesServer struct {
   415  	grpc.ServerStream
   416  }
   417  
   418  func (x *traceServiceStreamTracesServer) SendAndClose(m *StreamTracesResponse) error {
   419  	return x.ServerStream.SendMsg(m)
   420  }
   421  
   422  func (x *traceServiceStreamTracesServer) Recv() (*StreamTracesMessage, error) {
   423  	m := new(StreamTracesMessage)
   424  	if err := x.ServerStream.RecvMsg(m); err != nil {
   425  		return nil, err
   426  	}
   427  	return m, nil
   428  }
   429  
   430  var _TraceService_serviceDesc = grpc.ServiceDesc{
   431  	ServiceName: "envoy.service.trace.v2.TraceService",
   432  	HandlerType: (*TraceServiceServer)(nil),
   433  	Methods:     []grpc.MethodDesc{},
   434  	Streams: []grpc.StreamDesc{
   435  		{
   436  			StreamName:    "StreamTraces",
   437  			Handler:       _TraceService_StreamTraces_Handler,
   438  			ClientStreams: true,
   439  		},
   440  	},
   441  	Metadata: "envoy/service/trace/v2/trace_service.proto",
   442  }