Documentation
¶
Index ¶
- Constants
- Variables
- func RegisterHandlerRuntimeServiceServer(s grpc.ServiceRegistrar, srv HandlerRuntimeServiceServer)
- type Ack
- type BatchResult
- func (*BatchResult) Descriptor() ([]byte, []int)deprecated
- func (x *BatchResult) GetFailures() []*RecordFailure
- func (x *BatchResult) GetSuccess() bool
- func (*BatchResult) ProtoMessage()
- func (x *BatchResult) ProtoReflect() protoreflect.Message
- func (x *BatchResult) Reset()
- func (x *BatchResult) String() string
- type Cancel
- type Cancel_Reason
- func (Cancel_Reason) Descriptor() protoreflect.EnumDescriptor
- func (x Cancel_Reason) Enum() *Cancel_Reason
- func (Cancel_Reason) EnumDescriptor() ([]byte, []int)deprecated
- func (x Cancel_Reason) Number() protoreflect.EnumNumber
- func (x Cancel_Reason) String() string
- func (Cancel_Reason) Type() protoreflect.EnumType
- type ConsumerBatch
- func (*ConsumerBatch) Descriptor() ([]byte, []int)deprecated
- func (x *ConsumerBatch) GetRecords() []*ConsumerRecord
- func (x *ConsumerBatch) GetSourceId() string
- func (x *ConsumerBatch) GetSourceType() string
- func (x *ConsumerBatch) GetVendor() []byte
- func (*ConsumerBatch) ProtoMessage()
- func (x *ConsumerBatch) ProtoReflect() protoreflect.Message
- func (x *ConsumerBatch) Reset()
- func (x *ConsumerBatch) String() string
- type ConsumerRecord
- func (*ConsumerRecord) Descriptor() ([]byte, []int)deprecated
- func (x *ConsumerRecord) GetAttributes() []byte
- func (x *ConsumerRecord) GetBody() []byte
- func (x *ConsumerRecord) GetEventType() string
- func (x *ConsumerRecord) GetMessageId() string
- func (x *ConsumerRecord) GetSource() string
- func (x *ConsumerRecord) GetVendor() []byte
- func (*ConsumerRecord) ProtoMessage()
- func (x *ConsumerRecord) ProtoReflect() protoreflect.Message
- func (x *ConsumerRecord) Reset()
- func (x *ConsumerRecord) String() string
- type CreditGrant
- type CustomInvoke
- func (*CustomInvoke) Descriptor() ([]byte, []int)deprecated
- func (x *CustomInvoke) GetHandlerName() string
- func (x *CustomInvoke) GetInput() []byte
- func (*CustomInvoke) ProtoMessage()
- func (x *CustomInvoke) ProtoReflect() protoreflect.Message
- func (x *CustomInvoke) Reset()
- func (x *CustomInvoke) String() string
- type CustomInvokeResult
- func (*CustomInvokeResult) Descriptor() ([]byte, []int)deprecated
- func (x *CustomInvokeResult) GetErrorMessage() string
- func (x *CustomInvokeResult) GetOutput() []byte
- func (*CustomInvokeResult) ProtoMessage()
- func (x *CustomInvokeResult) ProtoReflect() protoreflect.Message
- func (x *CustomInvokeResult) Reset()
- func (x *CustomInvokeResult) String() string
- type Dispatch
- func (*Dispatch) Descriptor() ([]byte, []int)deprecated
- func (x *Dispatch) GetConsumer() *ConsumerBatch
- func (x *Dispatch) GetCustom() *CustomInvoke
- func (x *Dispatch) GetDeadlineUnixMs() int64
- func (x *Dispatch) GetHandlerTag() string
- func (x *Dispatch) GetHttp() *HttpRequest
- func (x *Dispatch) GetId() string
- func (x *Dispatch) GetSchedule() *ScheduleTrigger
- func (x *Dispatch) GetSource() isDispatch_Source
- func (x *Dispatch) GetTimestampMs() uint64
- func (x *Dispatch) GetTraceContext() map[string]string
- func (x *Dispatch) GetWebsocket() *WebSocketMessage
- func (*Dispatch) ProtoMessage()
- func (x *Dispatch) ProtoReflect() protoreflect.Message
- func (x *Dispatch) Reset()
- func (x *Dispatch) String() string
- type Dispatch_Consumer
- type Dispatch_Custom
- type Dispatch_Http
- type Dispatch_Schedule
- type Dispatch_Websocket
- type Drain
- type Draining
- type HandlerConfig
- func (*HandlerConfig) Descriptor() ([]byte, []int)deprecated
- func (x *HandlerConfig) GetHandlerName() string
- func (x *HandlerConfig) GetHandlerTag() string
- func (x *HandlerConfig) GetPublishedName() string
- func (x *HandlerConfig) GetTimeoutMs() int64
- func (x *HandlerConfig) GetTracingEnabled() bool
- func (*HandlerConfig) ProtoMessage()
- func (x *HandlerConfig) ProtoReflect() protoreflect.Message
- func (x *HandlerConfig) Reset()
- func (x *HandlerConfig) String() string
- type HandlerError
- func (*HandlerError) Descriptor() ([]byte, []int)deprecated
- func (x *HandlerError) GetMessage() string
- func (x *HandlerError) GetStack() string
- func (x *HandlerError) GetType() string
- func (*HandlerError) ProtoMessage()
- func (x *HandlerError) ProtoReflect() protoreflect.Message
- func (x *HandlerError) Reset()
- func (x *HandlerError) String() string
- type HandlerLimit
- func (*HandlerLimit) Descriptor() ([]byte, []int)deprecated
- func (x *HandlerLimit) GetHandlerTag() string
- func (x *HandlerLimit) GetMaxConcurrent() uint32
- func (*HandlerLimit) ProtoMessage()
- func (x *HandlerLimit) ProtoReflect() protoreflect.Message
- func (x *HandlerLimit) Reset()
- func (x *HandlerLimit) String() string
- type HandlerMessage
- func (*HandlerMessage) Descriptor() ([]byte, []int)deprecated
- func (x *HandlerMessage) GetCredit() *CreditGrant
- func (x *HandlerMessage) GetDraining() *Draining
- func (x *HandlerMessage) GetFrame() isHandlerMessage_Frame
- func (x *HandlerMessage) GetReady() *Ready
- func (x *HandlerMessage) GetResult() *Result
- func (x *HandlerMessage) GetWsSend() *WsSend
- func (*HandlerMessage) ProtoMessage()
- func (x *HandlerMessage) ProtoReflect() protoreflect.Message
- func (x *HandlerMessage) Reset()
- func (x *HandlerMessage) String() string
- type HandlerMessage_Credit
- type HandlerMessage_Draining
- type HandlerMessage_Ready
- type HandlerMessage_Result
- type HandlerMessage_WsSend
- type HandlerRuntimeServiceClient
- type HandlerRuntimeServiceServer
- type HandlerRuntimeService_EventStreamClient
- type HandlerRuntimeService_EventStreamServer
- type HttpRequest
- func (*HttpRequest) Descriptor() ([]byte, []int)deprecated
- func (x *HttpRequest) GetBody() []byte
- func (x *HttpRequest) GetHeaders() map[string]*Values
- func (x *HttpRequest) GetMethod() string
- func (x *HttpRequest) GetPath() string
- func (x *HttpRequest) GetPathParams() map[string]*Values
- func (x *HttpRequest) GetQueryParams() map[string]*Values
- func (x *HttpRequest) GetRequestId() string
- func (x *HttpRequest) GetRoute() string
- func (x *HttpRequest) GetSourceIp() string
- func (*HttpRequest) ProtoMessage()
- func (x *HttpRequest) ProtoReflect() protoreflect.Message
- func (x *HttpRequest) Reset()
- func (x *HttpRequest) String() string
- type HttpResponse
- func (*HttpResponse) Descriptor() ([]byte, []int)deprecated
- func (x *HttpResponse) GetBody() []byte
- func (x *HttpResponse) GetHeaders() map[string]*Values
- func (x *HttpResponse) GetStatus() uint32
- func (*HttpResponse) ProtoMessage()
- func (x *HttpResponse) ProtoReflect() protoreflect.Message
- func (x *HttpResponse) Reset()
- func (x *HttpResponse) String() string
- type ProtocolVersion
- func (*ProtocolVersion) Descriptor() ([]byte, []int)deprecated
- func (x *ProtocolVersion) GetMajor() uint32
- func (x *ProtocolVersion) GetMinor() uint32
- func (*ProtocolVersion) ProtoMessage()
- func (x *ProtocolVersion) ProtoReflect() protoreflect.Message
- func (x *ProtocolVersion) Reset()
- func (x *ProtocolVersion) String() string
- type Ready
- func (*Ready) Descriptor() ([]byte, []int)deprecated
- func (x *Ready) GetHandlerTags() []string
- func (x *Ready) GetInitialCredit() uint32
- func (x *Ready) GetLimits() []*HandlerLimit
- func (x *Ready) GetProtocolVersion() *ProtocolVersion
- func (x *Ready) GetSdkVersion() string
- func (*Ready) ProtoMessage()
- func (x *Ready) ProtoReflect() protoreflect.Message
- func (x *Ready) Reset()
- func (x *Ready) String() string
- type ReadyAck
- func (*ReadyAck) Descriptor() ([]byte, []int)deprecated
- func (x *ReadyAck) GetAccepted() bool
- func (x *ReadyAck) GetRefusedReason() ReadyAck_RefusedReason
- func (x *ReadyAck) GetUnhandledTags() []string
- func (x *ReadyAck) GetUnknownTags() []string
- func (*ReadyAck) ProtoMessage()
- func (x *ReadyAck) ProtoReflect() protoreflect.Message
- func (x *ReadyAck) Reset()
- func (x *ReadyAck) String() string
- type ReadyAck_RefusedReason
- func (ReadyAck_RefusedReason) Descriptor() protoreflect.EnumDescriptor
- func (x ReadyAck_RefusedReason) Enum() *ReadyAck_RefusedReason
- func (ReadyAck_RefusedReason) EnumDescriptor() ([]byte, []int)deprecated
- func (x ReadyAck_RefusedReason) Number() protoreflect.EnumNumber
- func (x ReadyAck_RefusedReason) String() string
- func (ReadyAck_RefusedReason) Type() protoreflect.EnumType
- type RecordFailure
- func (*RecordFailure) Descriptor() ([]byte, []int)deprecated
- func (x *RecordFailure) GetErrorMessage() string
- func (x *RecordFailure) GetMessageId() string
- func (*RecordFailure) ProtoMessage()
- func (x *RecordFailure) ProtoReflect() protoreflect.Message
- func (x *RecordFailure) Reset()
- func (x *RecordFailure) String() string
- type Result
- func (*Result) Descriptor() ([]byte, []int)deprecated
- func (x *Result) GetConsumer() *BatchResult
- func (x *Result) GetCreditGrant() uint32
- func (x *Result) GetCustom() *CustomInvokeResult
- func (x *Result) GetError() *HandlerError
- func (x *Result) GetHttp() *HttpResponse
- func (x *Result) GetId() string
- func (x *Result) GetOutcome() isResult_Outcome
- func (x *Result) GetSchedule() *Ack
- func (x *Result) GetWebsocket() *Ack
- func (*Result) ProtoMessage()
- func (x *Result) ProtoReflect() protoreflect.Message
- func (x *Result) Reset()
- func (x *Result) String() string
- type Result_Consumer
- type Result_Custom
- type Result_Error
- type Result_Http
- type Result_Schedule
- type Result_Websocket
- type RuntimeConfig
- func (*RuntimeConfig) Descriptor() ([]byte, []int)deprecated
- func (x *RuntimeConfig) GetHandlers() []*HandlerConfig
- func (x *RuntimeConfig) GetMetricsEnabled() bool
- func (x *RuntimeConfig) GetProtocolVersion() *ProtocolVersion
- func (x *RuntimeConfig) GetTracingEnabled() bool
- func (*RuntimeConfig) ProtoMessage()
- func (x *RuntimeConfig) ProtoReflect() protoreflect.Message
- func (x *RuntimeConfig) Reset()
- func (x *RuntimeConfig) String() string
- type RuntimeMessage
- func (*RuntimeMessage) Descriptor() ([]byte, []int)deprecated
- func (x *RuntimeMessage) GetCancel() *Cancel
- func (x *RuntimeMessage) GetConfig() *RuntimeConfig
- func (x *RuntimeMessage) GetDispatch() *Dispatch
- func (x *RuntimeMessage) GetDrain() *Drain
- func (x *RuntimeMessage) GetFrame() isRuntimeMessage_Frame
- func (x *RuntimeMessage) GetReadyAck() *ReadyAck
- func (x *RuntimeMessage) GetWsAck() *WsSendAck
- func (*RuntimeMessage) ProtoMessage()
- func (x *RuntimeMessage) ProtoReflect() protoreflect.Message
- func (x *RuntimeMessage) Reset()
- func (x *RuntimeMessage) String() string
- type RuntimeMessage_Cancel
- type RuntimeMessage_Config
- type RuntimeMessage_Dispatch
- type RuntimeMessage_Drain
- type RuntimeMessage_ReadyAck
- type RuntimeMessage_WsAck
- type ScheduleTrigger
- func (*ScheduleTrigger) Descriptor() ([]byte, []int)deprecated
- func (x *ScheduleTrigger) GetInput() []byte
- func (x *ScheduleTrigger) GetMessageId() string
- func (x *ScheduleTrigger) GetSchedule() string
- func (x *ScheduleTrigger) GetScheduleId() string
- func (x *ScheduleTrigger) GetVendor() []byte
- func (*ScheduleTrigger) ProtoMessage()
- func (x *ScheduleTrigger) ProtoReflect() protoreflect.Message
- func (x *ScheduleTrigger) Reset()
- func (x *ScheduleTrigger) String() string
- type UnimplementedHandlerRuntimeServiceServer
- type UnsafeHandlerRuntimeServiceServer
- type Values
- type WebSocketMessage
- func (*WebSocketMessage) Descriptor() ([]byte, []int)deprecated
- func (x *WebSocketMessage) GetConnectionId() string
- func (x *WebSocketMessage) GetIsBinary() bool
- func (x *WebSocketMessage) GetMessage() []byte
- func (x *WebSocketMessage) GetMessageId() string
- func (x *WebSocketMessage) GetRequestId() string
- func (x *WebSocketMessage) GetRoute() string
- func (x *WebSocketMessage) GetSourceIp() string
- func (*WebSocketMessage) ProtoMessage()
- func (x *WebSocketMessage) ProtoReflect() protoreflect.Message
- func (x *WebSocketMessage) Reset()
- func (x *WebSocketMessage) String() string
- type WsOutbound
- func (*WsOutbound) Descriptor() ([]byte, []int)deprecated
- func (x *WsOutbound) GetCaller() string
- func (x *WsOutbound) GetConnectionId() string
- func (x *WsOutbound) GetInformClientsOnLoss() []string
- func (x *WsOutbound) GetIsBinary() bool
- func (x *WsOutbound) GetMessage() []byte
- func (x *WsOutbound) GetMessageId() string
- func (x *WsOutbound) GetWaitForAck() bool
- func (*WsOutbound) ProtoMessage()
- func (x *WsOutbound) ProtoReflect() protoreflect.Message
- func (x *WsOutbound) Reset()
- func (x *WsOutbound) String() string
- type WsSend
- type WsSendAck
- func (*WsSendAck) Descriptor() ([]byte, []int)deprecated
- func (x *WsSendAck) GetCorrelationId() string
- func (x *WsSendAck) GetFailures() []*WsSendFailure
- func (x *WsSendAck) GetSuccess() bool
- func (*WsSendAck) ProtoMessage()
- func (x *WsSendAck) ProtoReflect() protoreflect.Message
- func (x *WsSendAck) Reset()
- func (x *WsSendAck) String() string
- type WsSendFailure
- func (*WsSendFailure) Descriptor() ([]byte, []int)deprecated
- func (x *WsSendFailure) GetConnectionId() string
- func (x *WsSendFailure) GetErrorMessage() string
- func (x *WsSendFailure) GetIndex() uint32
- func (*WsSendFailure) ProtoMessage()
- func (x *WsSendFailure) ProtoReflect() protoreflect.Message
- func (x *WsSendFailure) Reset()
- func (x *WsSendFailure) String() string
Constants ¶
const (
HandlerRuntimeService_EventStream_FullMethodName = "/celerity.runtime.v1.HandlerRuntimeService/EventStream"
)
Variables ¶
var ( ReadyAck_RefusedReason_name = map[int32]string{ 0: "REFUSED_REASON_UNSPECIFIED", 1: "REFUSED_REASON_TAG_MISMATCH", 2: "REFUSED_REASON_PROTOCOL_VERSION", } ReadyAck_RefusedReason_value = map[string]int32{ "REFUSED_REASON_UNSPECIFIED": 0, "REFUSED_REASON_TAG_MISMATCH": 1, "REFUSED_REASON_PROTOCOL_VERSION": 2, } )
Enum value maps for ReadyAck_RefusedReason.
var ( Cancel_Reason_name = map[int32]string{ 0: "REASON_UNSPECIFIED", 1: "REASON_DEADLINE_EXCEEDED", 2: "REASON_CALLER_GONE", 3: "REASON_SHUTDOWN", } Cancel_Reason_value = map[string]int32{ "REASON_UNSPECIFIED": 0, "REASON_DEADLINE_EXCEEDED": 1, "REASON_CALLER_GONE": 2, "REASON_SHUTDOWN": 3, } )
Enum value maps for Cancel_Reason.
var File_celerity_runtime_v1_runtime_proto protoreflect.FileDescriptor
var HandlerRuntimeService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "celerity.runtime.v1.HandlerRuntimeService", HandlerType: (*HandlerRuntimeServiceServer)(nil), Methods: []grpc.MethodDesc{}, Streams: []grpc.StreamDesc{ { StreamName: "EventStream", Handler: _HandlerRuntimeService_EventStream_Handler, ServerStreams: true, ClientStreams: true, }, }, Metadata: "celerity/runtime/v1/runtime.proto", }
HandlerRuntimeService_ServiceDesc is the grpc.ServiceDesc for HandlerRuntimeService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterHandlerRuntimeServiceServer ¶
func RegisterHandlerRuntimeServiceServer(s grpc.ServiceRegistrar, srv HandlerRuntimeServiceServer)
Types ¶
type Ack ¶
type Ack struct {
Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
// contains filtered or unexported fields
}
Whether one message was processed.
For a source that acknowledges, a schedule trigger among them, a failure leaves the message on its source to be delivered again rather than acknowledging it. So this is an answer about the message, not a report for the log, and a handler that reports success for work it did not do will not see that work again.
func (*Ack) Descriptor
deprecated
func (*Ack) GetErrorMessage ¶
func (*Ack) GetSuccess ¶
func (*Ack) ProtoMessage ¶
func (*Ack) ProtoMessage()
func (*Ack) ProtoReflect ¶
func (x *Ack) ProtoReflect() protoreflect.Message
type BatchResult ¶
type BatchResult struct {
Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
Failures []*RecordFailure `protobuf:"bytes,2,rep,name=failures,proto3" json:"failures,omitempty"`
// contains filtered or unexported fields
}
Whether the records in a batch were processed.
Naming a record is how a handler answers for each message separately. The records named are left on their source to be delivered again and the rest are acknowledged, so a handler that processed most of a batch does not have all of it sent back.
Failing with no records named answers for the whole batch, and none of it is acknowledged. A non-empty list is taken as the answer even alongside success, since acknowledging a record the handler named would lose it while leaving one it processed only costs a redelivery.
func (*BatchResult) Descriptor
deprecated
func (*BatchResult) Descriptor() ([]byte, []int)
Deprecated: Use BatchResult.ProtoReflect.Descriptor instead.
func (*BatchResult) GetFailures ¶
func (x *BatchResult) GetFailures() []*RecordFailure
func (*BatchResult) GetSuccess ¶
func (x *BatchResult) GetSuccess() bool
func (*BatchResult) ProtoMessage ¶
func (*BatchResult) ProtoMessage()
func (*BatchResult) ProtoReflect ¶
func (x *BatchResult) ProtoReflect() protoreflect.Message
func (*BatchResult) Reset ¶
func (x *BatchResult) Reset()
func (*BatchResult) String ¶
func (x *BatchResult) String() string
type Cancel ¶
type Cancel struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Reason Cancel_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=celerity.runtime.v1.Cancel_Reason" json:"reason,omitempty"`
// contains filtered or unexported fields
}
Tells the handler to stop work nobody is waiting for.
May arrive for an event that has already completed, which handlers must ignore rather than treat as an error.
A cancelled event should still be answered with a Result, which is what returns the place it holds in the credit window. The runtime waits a short grace period and then takes that place back itself, since a handler that has hung or died would otherwise shrink the window for the life of the process. That is not a claim that the handler stopped, only that the runtime will no longer keep room for an answer it asked to be abandoned, a handler that answers promptly never meets it.
func (*Cancel) Descriptor
deprecated
func (*Cancel) GetReason ¶
func (x *Cancel) GetReason() Cancel_Reason
func (*Cancel) ProtoMessage ¶
func (*Cancel) ProtoMessage()
func (*Cancel) ProtoReflect ¶
func (x *Cancel) ProtoReflect() protoreflect.Message
type Cancel_Reason ¶
type Cancel_Reason int32
const ( Cancel_REASON_UNSPECIFIED Cancel_Reason = 0 Cancel_REASON_DEADLINE_EXCEEDED Cancel_Reason = 1 // The originating caller went away, so nothing is waiting for the result. // Sent when an HTTP client disconnects. Not sent when a WebSocket // connection closes as a message is closer to a queue message than to a // request and response, so the work is still worth finishing. Cancel_REASON_CALLER_GONE Cancel_Reason = 2 Cancel_REASON_SHUTDOWN Cancel_Reason = 3 )
func (Cancel_Reason) Descriptor ¶
func (Cancel_Reason) Descriptor() protoreflect.EnumDescriptor
func (Cancel_Reason) Enum ¶
func (x Cancel_Reason) Enum() *Cancel_Reason
func (Cancel_Reason) EnumDescriptor
deprecated
func (Cancel_Reason) EnumDescriptor() ([]byte, []int)
Deprecated: Use Cancel_Reason.Descriptor instead.
func (Cancel_Reason) Number ¶
func (x Cancel_Reason) Number() protoreflect.EnumNumber
func (Cancel_Reason) String ¶
func (x Cancel_Reason) String() string
func (Cancel_Reason) Type ¶
func (Cancel_Reason) Type() protoreflect.EnumType
type ConsumerBatch ¶
type ConsumerBatch struct {
Records []*ConsumerRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"`
SourceId string `protobuf:"bytes,2,opt,name=source_id,json=sourceId,proto3" json:"source_id,omitempty"`
SourceType string `protobuf:"bytes,3,opt,name=source_type,json=sourceType,proto3" json:"source_type,omitempty"`
// Provider-specific, opaque.
Vendor []byte `protobuf:"bytes,4,opt,name=vendor,proto3" json:"vendor,omitempty"`
// contains filtered or unexported fields
}
func (*ConsumerBatch) Descriptor
deprecated
func (*ConsumerBatch) Descriptor() ([]byte, []int)
Deprecated: Use ConsumerBatch.ProtoReflect.Descriptor instead.
func (*ConsumerBatch) GetRecords ¶
func (x *ConsumerBatch) GetRecords() []*ConsumerRecord
func (*ConsumerBatch) GetSourceId ¶
func (x *ConsumerBatch) GetSourceId() string
func (*ConsumerBatch) GetSourceType ¶
func (x *ConsumerBatch) GetSourceType() string
func (*ConsumerBatch) GetVendor ¶
func (x *ConsumerBatch) GetVendor() []byte
func (*ConsumerBatch) ProtoMessage ¶
func (*ConsumerBatch) ProtoMessage()
func (*ConsumerBatch) ProtoReflect ¶
func (x *ConsumerBatch) ProtoReflect() protoreflect.Message
func (*ConsumerBatch) Reset ¶
func (x *ConsumerBatch) Reset()
func (*ConsumerBatch) String ¶
func (x *ConsumerBatch) String() string
type ConsumerRecord ¶
type ConsumerRecord struct {
MessageId string `protobuf:"bytes,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
Body []byte `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
Source string `protobuf:"bytes,3,opt,name=source,proto3" json:"source,omitempty"`
EventType string `protobuf:"bytes,4,opt,name=event_type,json=eventType,proto3" json:"event_type,omitempty"`
Attributes []byte `protobuf:"bytes,5,opt,name=attributes,proto3" json:"attributes,omitempty"`
Vendor []byte `protobuf:"bytes,6,opt,name=vendor,proto3" json:"vendor,omitempty"`
// contains filtered or unexported fields
}
func (*ConsumerRecord) Descriptor
deprecated
func (*ConsumerRecord) Descriptor() ([]byte, []int)
Deprecated: Use ConsumerRecord.ProtoReflect.Descriptor instead.
func (*ConsumerRecord) GetAttributes ¶
func (x *ConsumerRecord) GetAttributes() []byte
func (*ConsumerRecord) GetBody ¶
func (x *ConsumerRecord) GetBody() []byte
func (*ConsumerRecord) GetEventType ¶
func (x *ConsumerRecord) GetEventType() string
func (*ConsumerRecord) GetMessageId ¶
func (x *ConsumerRecord) GetMessageId() string
func (*ConsumerRecord) GetSource ¶
func (x *ConsumerRecord) GetSource() string
func (*ConsumerRecord) GetVendor ¶
func (x *ConsumerRecord) GetVendor() []byte
func (*ConsumerRecord) ProtoMessage ¶
func (*ConsumerRecord) ProtoMessage()
func (*ConsumerRecord) ProtoReflect ¶
func (x *ConsumerRecord) ProtoReflect() protoreflect.Message
func (*ConsumerRecord) Reset ¶
func (x *ConsumerRecord) Reset()
func (*ConsumerRecord) String ¶
func (x *ConsumerRecord) String() string
type CreditGrant ¶
type CreditGrant struct {
Additional uint32 `protobuf:"varint,1,opt,name=additional,proto3" json:"additional,omitempty"`
// contains filtered or unexported fields
}
Returns credit to the runtime.
Credit is purely additive, it is consumed when the runtime dispatches and replenished only when the handler says so, never implicitly by a result arriving. Grants are normally included with Result; this frame exists for resizing the window, for grants not tied to a completion, and for resuming after a deliberate withhold.
There is one credit window per stream, covering every tag it serves. Isolation between tags is expressed by the concurrency caps in Ready, not by separate credit pools, a cap is what stops one slow tag consuming the whole window. Granting credit for a single tag would be a second mechanism for the same concern, and would let one tag stall unnoticed while the others flow.
func (*CreditGrant) Descriptor
deprecated
func (*CreditGrant) Descriptor() ([]byte, []int)
Deprecated: Use CreditGrant.ProtoReflect.Descriptor instead.
func (*CreditGrant) GetAdditional ¶
func (x *CreditGrant) GetAdditional() uint32
func (*CreditGrant) ProtoMessage ¶
func (*CreditGrant) ProtoMessage()
func (*CreditGrant) ProtoReflect ¶
func (x *CreditGrant) ProtoReflect() protoreflect.Message
func (*CreditGrant) Reset ¶
func (x *CreditGrant) Reset()
func (*CreditGrant) String ¶
func (x *CreditGrant) String() string
type CustomInvoke ¶
type CustomInvoke struct {
HandlerName string `protobuf:"bytes,1,opt,name=handler_name,json=handlerName,proto3" json:"handler_name,omitempty"`
Input []byte `protobuf:"bytes,2,opt,name=input,proto3" json:"input,omitempty"`
// contains filtered or unexported fields
}
func (*CustomInvoke) Descriptor
deprecated
func (*CustomInvoke) Descriptor() ([]byte, []int)
Deprecated: Use CustomInvoke.ProtoReflect.Descriptor instead.
func (*CustomInvoke) GetHandlerName ¶
func (x *CustomInvoke) GetHandlerName() string
func (*CustomInvoke) GetInput ¶
func (x *CustomInvoke) GetInput() []byte
func (*CustomInvoke) ProtoMessage ¶
func (*CustomInvoke) ProtoMessage()
func (*CustomInvoke) ProtoReflect ¶
func (x *CustomInvoke) ProtoReflect() protoreflect.Message
func (*CustomInvoke) Reset ¶
func (x *CustomInvoke) Reset()
func (*CustomInvoke) String ¶
func (x *CustomInvoke) String() string
type CustomInvokeResult ¶
type CustomInvokeResult struct {
// Opaque, and carried to whoever asked for the invocation exactly as sent.
// Whether it has to be text is that caller's constraint rather than this
// contract's. The runtime's local invoke endpoint answers in JSON, so it
// refuses output that is not valid UTF-8 rather than altering it.
Output []byte `protobuf:"bytes,1,opt,name=output,proto3" json:"output,omitempty"`
ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
// contains filtered or unexported fields
}
func (*CustomInvokeResult) Descriptor
deprecated
func (*CustomInvokeResult) Descriptor() ([]byte, []int)
Deprecated: Use CustomInvokeResult.ProtoReflect.Descriptor instead.
func (*CustomInvokeResult) GetErrorMessage ¶
func (x *CustomInvokeResult) GetErrorMessage() string
func (*CustomInvokeResult) GetOutput ¶
func (x *CustomInvokeResult) GetOutput() []byte
func (*CustomInvokeResult) ProtoMessage ¶
func (*CustomInvokeResult) ProtoMessage()
func (*CustomInvokeResult) ProtoReflect ¶
func (x *CustomInvokeResult) ProtoReflect() protoreflect.Message
func (*CustomInvokeResult) Reset ¶
func (x *CustomInvokeResult) Reset()
func (*CustomInvokeResult) String ¶
func (x *CustomInvokeResult) String() string
type Dispatch ¶
type Dispatch struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
HandlerTag string `protobuf:"bytes,2,opt,name=handler_tag,json=handlerTag,proto3" json:"handler_tag,omitempty"`
TimestampMs uint64 `protobuf:"varint,3,opt,name=timestamp_ms,json=timestampMs,proto3" json:"timestamp_ms,omitempty"`
// When the runtime stops waiting for this event. The handler should treat it
// as its own deadline; the runtime enforces it independently.
DeadlineUnixMs int64 `protobuf:"varint,4,opt,name=deadline_unix_ms,json=deadlineUnixMs,proto3" json:"deadline_unix_ms,omitempty"`
// The trace context of whatever produced the event, so a handler's spans
// continue the trace rather than starting one of their own. Carries the W3C
// trace context keys, `traceparent` and, where an upstream sent one,
// `tracestate`, alongside platform specific ids such as `xray_trace_id`.
//
// Empty where the runtime has no trace to propagate, which is the case when
// tracing is disabled.
TraceContext map[string]string `` /* 171-byte string literal not displayed */
// Types that are valid to be assigned to Source:
//
// *Dispatch_Http
// *Dispatch_Websocket
// *Dispatch_Consumer
// *Dispatch_Schedule
// *Dispatch_Custom
Source isDispatch_Source `protobuf_oneof:"source"`
// contains filtered or unexported fields
}
func (*Dispatch) Descriptor
deprecated
func (*Dispatch) GetConsumer ¶
func (x *Dispatch) GetConsumer() *ConsumerBatch
func (*Dispatch) GetCustom ¶
func (x *Dispatch) GetCustom() *CustomInvoke
func (*Dispatch) GetDeadlineUnixMs ¶
func (*Dispatch) GetHandlerTag ¶
func (*Dispatch) GetHttp ¶
func (x *Dispatch) GetHttp() *HttpRequest
func (*Dispatch) GetSchedule ¶
func (x *Dispatch) GetSchedule() *ScheduleTrigger
func (*Dispatch) GetTimestampMs ¶
func (*Dispatch) GetTraceContext ¶
func (*Dispatch) GetWebsocket ¶
func (x *Dispatch) GetWebsocket() *WebSocketMessage
func (*Dispatch) ProtoMessage ¶
func (*Dispatch) ProtoMessage()
func (*Dispatch) ProtoReflect ¶
func (x *Dispatch) ProtoReflect() protoreflect.Message
type Dispatch_Consumer ¶
type Dispatch_Consumer struct {
Consumer *ConsumerBatch `protobuf:"bytes,12,opt,name=consumer,proto3,oneof"`
}
type Dispatch_Custom ¶
type Dispatch_Custom struct {
Custom *CustomInvoke `protobuf:"bytes,14,opt,name=custom,proto3,oneof"`
}
type Dispatch_Http ¶
type Dispatch_Http struct {
Http *HttpRequest `protobuf:"bytes,10,opt,name=http,proto3,oneof"`
}
type Dispatch_Schedule ¶
type Dispatch_Schedule struct {
Schedule *ScheduleTrigger `protobuf:"bytes,13,opt,name=schedule,proto3,oneof"`
}
type Dispatch_Websocket ¶
type Dispatch_Websocket struct {
Websocket *WebSocketMessage `protobuf:"bytes,11,opt,name=websocket,proto3,oneof"`
}
type Drain ¶
type Drain struct {
DeadlineUnixMs int64 `protobuf:"varint,1,opt,name=deadline_unix_ms,json=deadlineUnixMs,proto3" json:"deadline_unix_ms,omitempty"`
// contains filtered or unexported fields
}
The runtime is going away: it stops dispatching and waits for in-flight work.
func (*Drain) Descriptor
deprecated
func (*Drain) GetDeadlineUnixMs ¶
func (*Drain) ProtoMessage ¶
func (*Drain) ProtoMessage()
func (*Drain) ProtoReflect ¶
func (x *Drain) ProtoReflect() protoreflect.Message
type Draining ¶
type Draining struct {
DeadlineUnixMs int64 `protobuf:"varint,1,opt,name=deadline_unix_ms,json=deadlineUnixMs,proto3" json:"deadline_unix_ms,omitempty"`
// contains filtered or unexported fields
}
The handler is going away, letting a supervisor roll handler processes without dropping work.
func (*Draining) Descriptor
deprecated
func (*Draining) GetDeadlineUnixMs ¶
func (*Draining) ProtoMessage ¶
func (*Draining) ProtoMessage()
func (*Draining) ProtoReflect ¶
func (x *Draining) ProtoReflect() protoreflect.Message
type HandlerConfig ¶
type HandlerConfig struct {
// The blueprint resource this handler is declared as, which is what its
// handler tag is built from.
HandlerName string `protobuf:"bytes,1,opt,name=handler_name,json=handlerName,proto3" json:"handler_name,omitempty"`
HandlerTag string `protobuf:"bytes,2,opt,name=handler_tag,json=handlerTag,proto3" json:"handler_tag,omitempty"`
TimeoutMs int64 `protobuf:"varint,3,opt,name=timeout_ms,json=timeoutMs,proto3" json:"timeout_ms,omitempty"`
TracingEnabled bool `protobuf:"varint,4,opt,name=tracing_enabled,json=tracingEnabled,proto3" json:"tracing_enabled,omitempty"`
// The name the blueprint publishes this handler under, from spec.handlerName.
// Empty when the blueprint does not set one. A deployment addresses a handler
// by this name, and the runtime's local invoke endpoint accepts it alongside
// the resource name.
PublishedName string `protobuf:"bytes,5,opt,name=published_name,json=publishedName,proto3" json:"published_name,omitempty"`
// contains filtered or unexported fields
}
func (*HandlerConfig) Descriptor
deprecated
func (*HandlerConfig) Descriptor() ([]byte, []int)
Deprecated: Use HandlerConfig.ProtoReflect.Descriptor instead.
func (*HandlerConfig) GetHandlerName ¶
func (x *HandlerConfig) GetHandlerName() string
func (*HandlerConfig) GetHandlerTag ¶
func (x *HandlerConfig) GetHandlerTag() string
func (*HandlerConfig) GetPublishedName ¶
func (x *HandlerConfig) GetPublishedName() string
func (*HandlerConfig) GetTimeoutMs ¶
func (x *HandlerConfig) GetTimeoutMs() int64
func (*HandlerConfig) GetTracingEnabled ¶
func (x *HandlerConfig) GetTracingEnabled() bool
func (*HandlerConfig) ProtoMessage ¶
func (*HandlerConfig) ProtoMessage()
func (*HandlerConfig) ProtoReflect ¶
func (x *HandlerConfig) ProtoReflect() protoreflect.Message
func (*HandlerConfig) Reset ¶
func (x *HandlerConfig) Reset()
func (*HandlerConfig) String ¶
func (x *HandlerConfig) String() string
type HandlerError ¶
type HandlerError struct {
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
Stack string `protobuf:"bytes,3,opt,name=stack,proto3" json:"stack,omitempty"`
// contains filtered or unexported fields
}
func (*HandlerError) Descriptor
deprecated
func (*HandlerError) Descriptor() ([]byte, []int)
Deprecated: Use HandlerError.ProtoReflect.Descriptor instead.
func (*HandlerError) GetMessage ¶
func (x *HandlerError) GetMessage() string
func (*HandlerError) GetStack ¶
func (x *HandlerError) GetStack() string
func (*HandlerError) GetType ¶
func (x *HandlerError) GetType() string
func (*HandlerError) ProtoMessage ¶
func (*HandlerError) ProtoMessage()
func (*HandlerError) ProtoReflect ¶
func (x *HandlerError) ProtoReflect() protoreflect.Message
func (*HandlerError) Reset ¶
func (x *HandlerError) Reset()
func (*HandlerError) String ¶
func (x *HandlerError) String() string
type HandlerLimit ¶
type HandlerLimit struct {
HandlerTag string `protobuf:"bytes,1,opt,name=handler_tag,json=handlerTag,proto3" json:"handler_tag,omitempty"`
MaxConcurrent uint32 `protobuf:"varint,2,opt,name=max_concurrent,json=maxConcurrent,proto3" json:"max_concurrent,omitempty"`
// contains filtered or unexported fields
}
func (*HandlerLimit) Descriptor
deprecated
func (*HandlerLimit) Descriptor() ([]byte, []int)
Deprecated: Use HandlerLimit.ProtoReflect.Descriptor instead.
func (*HandlerLimit) GetHandlerTag ¶
func (x *HandlerLimit) GetHandlerTag() string
func (*HandlerLimit) GetMaxConcurrent ¶
func (x *HandlerLimit) GetMaxConcurrent() uint32
func (*HandlerLimit) ProtoMessage ¶
func (*HandlerLimit) ProtoMessage()
func (*HandlerLimit) ProtoReflect ¶
func (x *HandlerLimit) ProtoReflect() protoreflect.Message
func (*HandlerLimit) Reset ¶
func (x *HandlerLimit) Reset()
func (*HandlerLimit) String ¶
func (x *HandlerLimit) String() string
type HandlerMessage ¶
type HandlerMessage struct {
// Types that are valid to be assigned to Frame:
//
// *HandlerMessage_Ready
// *HandlerMessage_Result
// *HandlerMessage_Credit
// *HandlerMessage_WsSend
// *HandlerMessage_Draining
Frame isHandlerMessage_Frame `protobuf_oneof:"frame"`
// contains filtered or unexported fields
}
func (*HandlerMessage) Descriptor
deprecated
func (*HandlerMessage) Descriptor() ([]byte, []int)
Deprecated: Use HandlerMessage.ProtoReflect.Descriptor instead.
func (*HandlerMessage) GetCredit ¶
func (x *HandlerMessage) GetCredit() *CreditGrant
func (*HandlerMessage) GetDraining ¶
func (x *HandlerMessage) GetDraining() *Draining
func (*HandlerMessage) GetFrame ¶
func (x *HandlerMessage) GetFrame() isHandlerMessage_Frame
func (*HandlerMessage) GetReady ¶
func (x *HandlerMessage) GetReady() *Ready
func (*HandlerMessage) GetResult ¶
func (x *HandlerMessage) GetResult() *Result
func (*HandlerMessage) GetWsSend ¶
func (x *HandlerMessage) GetWsSend() *WsSend
func (*HandlerMessage) ProtoMessage ¶
func (*HandlerMessage) ProtoMessage()
func (*HandlerMessage) ProtoReflect ¶
func (x *HandlerMessage) ProtoReflect() protoreflect.Message
func (*HandlerMessage) Reset ¶
func (x *HandlerMessage) Reset()
func (*HandlerMessage) String ¶
func (x *HandlerMessage) String() string
type HandlerMessage_Credit ¶
type HandlerMessage_Credit struct {
Credit *CreditGrant `protobuf:"bytes,3,opt,name=credit,proto3,oneof"`
}
type HandlerMessage_Draining ¶
type HandlerMessage_Draining struct {
Draining *Draining `protobuf:"bytes,5,opt,name=draining,proto3,oneof"`
}
type HandlerMessage_Ready ¶
type HandlerMessage_Ready struct {
Ready *Ready `protobuf:"bytes,1,opt,name=ready,proto3,oneof"`
}
type HandlerMessage_Result ¶
type HandlerMessage_Result struct {
Result *Result `protobuf:"bytes,2,opt,name=result,proto3,oneof"`
}
type HandlerMessage_WsSend ¶
type HandlerMessage_WsSend struct {
WsSend *WsSend `protobuf:"bytes,4,opt,name=ws_send,json=wsSend,proto3,oneof"`
}
type HandlerRuntimeServiceClient ¶
type HandlerRuntimeServiceClient interface {
EventStream(ctx context.Context, opts ...grpc.CallOption) (grpc.BidiStreamingClient[HandlerMessage, RuntimeMessage], error)
}
HandlerRuntimeServiceClient is the client API for HandlerRuntimeService 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.
One long-lived bidirectional stream carries everything: events, results, configuration, WebSocket sends, handler-to-handler invocation, cancellation and shutdown.
func NewHandlerRuntimeServiceClient ¶
func NewHandlerRuntimeServiceClient(cc grpc.ClientConnInterface) HandlerRuntimeServiceClient
type HandlerRuntimeServiceServer ¶
type HandlerRuntimeServiceServer interface {
EventStream(grpc.BidiStreamingServer[HandlerMessage, RuntimeMessage]) error
// contains filtered or unexported methods
}
HandlerRuntimeServiceServer is the server API for HandlerRuntimeService service. All implementations must embed UnimplementedHandlerRuntimeServiceServer for forward compatibility.
One long-lived bidirectional stream carries everything: events, results, configuration, WebSocket sends, handler-to-handler invocation, cancellation and shutdown.
type HandlerRuntimeService_EventStreamClient ¶
type HandlerRuntimeService_EventStreamClient = grpc.BidiStreamingClient[HandlerMessage, RuntimeMessage]
This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type HandlerRuntimeService_EventStreamServer ¶
type HandlerRuntimeService_EventStreamServer = grpc.BidiStreamingServer[HandlerMessage, RuntimeMessage]
This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type HttpRequest ¶
type HttpRequest struct {
// Uppercase and canonical.
Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`
// Raw, percent-encoded as received.
Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
// The route template this request matched, in the router's own form, so a
// blueprint's /files/{path+} arrives as /files/{*path}. The same form the
// handler tag is built from.
Route string `protobuf:"bytes,3,opt,name=route,proto3" json:"route,omitempty"`
// A catch-all parameter yields one value per path segment. Segments are split
// from the raw path before being percent-decoded, so a segment containing an
// encoded separator survives intact.
PathParams map[string]*Values `` /* 165-byte string literal not displayed */
QueryParams map[string]*Values `` /* 168-byte string literal not displayed */
// Names are lowercase.
Headers map[string]*Values `` /* 141-byte string literal not displayed */
SourceIp string `protobuf:"bytes,7,opt,name=source_ip,json=sourceIp,proto3" json:"source_ip,omitempty"`
RequestId string `protobuf:"bytes,8,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Opaque. The runtime never parses this; the media type comes from the
// content-type header.
Body []byte `protobuf:"bytes,9,opt,name=body,proto3" json:"body,omitempty"`
// contains filtered or unexported fields
}
func (*HttpRequest) Descriptor
deprecated
func (*HttpRequest) Descriptor() ([]byte, []int)
Deprecated: Use HttpRequest.ProtoReflect.Descriptor instead.
func (*HttpRequest) GetBody ¶
func (x *HttpRequest) GetBody() []byte
func (*HttpRequest) GetHeaders ¶
func (x *HttpRequest) GetHeaders() map[string]*Values
func (*HttpRequest) GetMethod ¶
func (x *HttpRequest) GetMethod() string
func (*HttpRequest) GetPath ¶
func (x *HttpRequest) GetPath() string
func (*HttpRequest) GetPathParams ¶
func (x *HttpRequest) GetPathParams() map[string]*Values
func (*HttpRequest) GetQueryParams ¶
func (x *HttpRequest) GetQueryParams() map[string]*Values
func (*HttpRequest) GetRequestId ¶
func (x *HttpRequest) GetRequestId() string
func (*HttpRequest) GetRoute ¶
func (x *HttpRequest) GetRoute() string
func (*HttpRequest) GetSourceIp ¶
func (x *HttpRequest) GetSourceIp() string
func (*HttpRequest) ProtoMessage ¶
func (*HttpRequest) ProtoMessage()
func (*HttpRequest) ProtoReflect ¶
func (x *HttpRequest) ProtoReflect() protoreflect.Message
func (*HttpRequest) Reset ¶
func (x *HttpRequest) Reset()
func (*HttpRequest) String ¶
func (x *HttpRequest) String() string
type HttpResponse ¶
type HttpResponse struct {
// 100 to 999. The smallest integer protobuf offers is wider than a status can
// be, so a value outside that range is a fault in the handler and the runtime
// answers 500 rather than narrowing it, which would let 65736 arrive as 200.
Status uint32 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
// Multi-valued, so a handler can emit two Set-Cookie headers, which RFC 9110
// forbids folding into one comma-separated value.
Headers map[string]*Values `` /* 141-byte string literal not displayed */
Body []byte `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"`
// contains filtered or unexported fields
}
func (*HttpResponse) Descriptor
deprecated
func (*HttpResponse) Descriptor() ([]byte, []int)
Deprecated: Use HttpResponse.ProtoReflect.Descriptor instead.
func (*HttpResponse) GetBody ¶
func (x *HttpResponse) GetBody() []byte
func (*HttpResponse) GetHeaders ¶
func (x *HttpResponse) GetHeaders() map[string]*Values
func (*HttpResponse) GetStatus ¶
func (x *HttpResponse) GetStatus() uint32
func (*HttpResponse) ProtoMessage ¶
func (*HttpResponse) ProtoMessage()
func (*HttpResponse) ProtoReflect ¶
func (x *HttpResponse) ProtoReflect() protoreflect.Message
func (*HttpResponse) Reset ¶
func (x *HttpResponse) Reset()
func (*HttpResponse) String ¶
func (x *HttpResponse) String() string
type ProtocolVersion ¶
type ProtocolVersion struct {
Major uint32 `protobuf:"varint,1,opt,name=major,proto3" json:"major,omitempty"`
Minor uint32 `protobuf:"varint,2,opt,name=minor,proto3" json:"minor,omitempty"`
// contains filtered or unexported fields
}
The version of this protocol that one end of the stream speaks.
Minor versions are additive, so a handler built against an earlier minor of the same major serves unchanged against a later one. A different major is not compatible in either direction.
func (*ProtocolVersion) Descriptor
deprecated
func (*ProtocolVersion) Descriptor() ([]byte, []int)
Deprecated: Use ProtocolVersion.ProtoReflect.Descriptor instead.
func (*ProtocolVersion) GetMajor ¶
func (x *ProtocolVersion) GetMajor() uint32
func (*ProtocolVersion) GetMinor ¶
func (x *ProtocolVersion) GetMinor() uint32
func (*ProtocolVersion) ProtoMessage ¶
func (*ProtocolVersion) ProtoMessage()
func (*ProtocolVersion) ProtoReflect ¶
func (x *ProtocolVersion) ProtoReflect() protoreflect.Message
func (*ProtocolVersion) Reset ¶
func (x *ProtocolVersion) Reset()
func (*ProtocolVersion) String ¶
func (x *ProtocolVersion) String() string
type Ready ¶
type Ready struct {
// The handler tags this process actually serves.
HandlerTags []string `protobuf:"bytes,1,rep,name=handler_tags,json=handlerTags,proto3" json:"handler_tags,omitempty"`
// Total events the runtime may have in flight to this process, across all
// tags. SDKs should set this to their worker pool size: throughput saturates
// there, and every unit beyond it adds latency for almost no throughput.
InitialCredit uint32 `protobuf:"varint,2,opt,name=initial_credit,json=initialCredit,proto3" json:"initial_credit,omitempty"`
SdkVersion string `protobuf:"bytes,3,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version,omitempty"`
// Optional per-tag concurrency caps, so one slow tag cannot consume the whole
// credit window and starve the others.
Limits []*HandlerLimit `protobuf:"bytes,4,rep,name=limits,proto3" json:"limits,omitempty"`
// The protocol version this handler was built against. Required. A handler
// that declares none was built against a version this contract cannot
// determine, and is refused rather than assumed to speak the current one.
ProtocolVersion *ProtocolVersion `protobuf:"bytes,5,opt,name=protocol_version,json=protocolVersion,proto3" json:"protocol_version,omitempty"`
// contains filtered or unexported fields
}
Declares what this handler process serves and how much work it can take.
The runtime does not dispatch until this arrives, which is the readiness signal a polling transport has no way to express.
func (*Ready) Descriptor
deprecated
func (*Ready) GetHandlerTags ¶
func (*Ready) GetInitialCredit ¶
func (*Ready) GetLimits ¶
func (x *Ready) GetLimits() []*HandlerLimit
func (*Ready) GetProtocolVersion ¶
func (x *Ready) GetProtocolVersion() *ProtocolVersion
func (*Ready) GetSdkVersion ¶
func (*Ready) ProtoMessage ¶
func (*Ready) ProtoMessage()
func (*Ready) ProtoReflect ¶
func (x *Ready) ProtoReflect() protoreflect.Message
type ReadyAck ¶
type ReadyAck struct {
Accepted bool `protobuf:"varint,1,opt,name=accepted,proto3" json:"accepted,omitempty"`
// Registered by the handler but absent from the blueprint.
UnknownTags []string `protobuf:"bytes,2,rep,name=unknown_tags,json=unknownTags,proto3" json:"unknown_tags,omitempty"`
// Present in the blueprint but not registered by the handler.
UnhandledTags []string `protobuf:"bytes,3,rep,name=unhandled_tags,json=unhandledTags,proto3" json:"unhandled_tags,omitempty"`
// Unspecified where the handler was accepted, since the tag lists alone
// cannot tell a version refusal from an accepted handler with nothing to
// report.
RefusedReason ReadyAck_RefusedReason `` /* 149-byte string literal not displayed */
// contains filtered or unexported fields
}
Reports whether the handler's registered tags line up with the blueprint.
A mismatch is a startup error here rather than a 404 in production.
func (*ReadyAck) Descriptor
deprecated
func (*ReadyAck) GetAccepted ¶
func (*ReadyAck) GetRefusedReason ¶
func (x *ReadyAck) GetRefusedReason() ReadyAck_RefusedReason
func (*ReadyAck) GetUnhandledTags ¶
func (*ReadyAck) GetUnknownTags ¶
func (*ReadyAck) ProtoMessage ¶
func (*ReadyAck) ProtoMessage()
func (*ReadyAck) ProtoReflect ¶
func (x *ReadyAck) ProtoReflect() protoreflect.Message
type ReadyAck_RefusedReason ¶
type ReadyAck_RefusedReason int32
const ( ReadyAck_REFUSED_REASON_UNSPECIFIED ReadyAck_RefusedReason = 0 // The tag lists above say which. ReadyAck_REFUSED_REASON_TAG_MISMATCH ReadyAck_RefusedReason = 1 // The handler declared no protocol version, or one whose major the runtime // does not serve. The runtime's own version is in RuntimeConfig, which the // handler already has by this point. ReadyAck_REFUSED_REASON_PROTOCOL_VERSION ReadyAck_RefusedReason = 2 )
func (ReadyAck_RefusedReason) Descriptor ¶
func (ReadyAck_RefusedReason) Descriptor() protoreflect.EnumDescriptor
func (ReadyAck_RefusedReason) Enum ¶
func (x ReadyAck_RefusedReason) Enum() *ReadyAck_RefusedReason
func (ReadyAck_RefusedReason) EnumDescriptor
deprecated
func (ReadyAck_RefusedReason) EnumDescriptor() ([]byte, []int)
Deprecated: Use ReadyAck_RefusedReason.Descriptor instead.
func (ReadyAck_RefusedReason) Number ¶
func (x ReadyAck_RefusedReason) Number() protoreflect.EnumNumber
func (ReadyAck_RefusedReason) String ¶
func (x ReadyAck_RefusedReason) String() string
func (ReadyAck_RefusedReason) Type ¶
func (ReadyAck_RefusedReason) Type() protoreflect.EnumType
type RecordFailure ¶
type RecordFailure struct {
// As it arrived on the ConsumerRecord. A name that matches no record in the
// batch leaves nothing behind, so a handler that rewrites or generates ids
// has to answer with the ones it was given.
MessageId string `protobuf:"bytes,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
// contains filtered or unexported fields
}
func (*RecordFailure) Descriptor
deprecated
func (*RecordFailure) Descriptor() ([]byte, []int)
Deprecated: Use RecordFailure.ProtoReflect.Descriptor instead.
func (*RecordFailure) GetErrorMessage ¶
func (x *RecordFailure) GetErrorMessage() string
func (*RecordFailure) GetMessageId ¶
func (x *RecordFailure) GetMessageId() string
func (*RecordFailure) ProtoMessage ¶
func (*RecordFailure) ProtoMessage()
func (*RecordFailure) ProtoReflect ¶
func (x *RecordFailure) ProtoReflect() protoreflect.Message
func (*RecordFailure) Reset ¶
func (x *RecordFailure) Reset()
func (*RecordFailure) String ¶
func (x *RecordFailure) String() string
type Result ¶
type Result struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// Credit returned along with this result. Zero withholds, telling the runtime
// to stop dispatching to this stream until a later CreditGrant. SDKs should
// default to 1 and must send this even when the handler panics, since a
// missed grant drains the window and stalls the stream silently.
//
// When the runtime has already taken the place back, having cancelled the
// event and waited out the grace period, a grant here is ignored, since
// returning the same place twice would grow the window. Zero still withholds,
// and the runtime gives up the place it returned.
CreditGrant uint32 `protobuf:"varint,2,opt,name=credit_grant,json=creditGrant,proto3" json:"credit_grant,omitempty"`
// Types that are valid to be assigned to Outcome:
//
// *Result_Http
// *Result_Websocket
// *Result_Consumer
// *Result_Schedule
// *Result_Custom
// *Result_Error
Outcome isResult_Outcome `protobuf_oneof:"outcome"`
// contains filtered or unexported fields
}
func (*Result) Descriptor
deprecated
func (*Result) GetConsumer ¶
func (x *Result) GetConsumer() *BatchResult
func (*Result) GetCreditGrant ¶
func (*Result) GetCustom ¶
func (x *Result) GetCustom() *CustomInvokeResult
func (*Result) GetError ¶
func (x *Result) GetError() *HandlerError
func (*Result) GetHttp ¶
func (x *Result) GetHttp() *HttpResponse
func (*Result) GetOutcome ¶
func (x *Result) GetOutcome() isResult_Outcome
func (*Result) GetSchedule ¶
func (*Result) GetWebsocket ¶
func (*Result) ProtoMessage ¶
func (*Result) ProtoMessage()
func (*Result) ProtoReflect ¶
func (x *Result) ProtoReflect() protoreflect.Message
type Result_Consumer ¶
type Result_Consumer struct {
Consumer *BatchResult `protobuf:"bytes,12,opt,name=consumer,proto3,oneof"`
}
type Result_Custom ¶
type Result_Custom struct {
Custom *CustomInvokeResult `protobuf:"bytes,14,opt,name=custom,proto3,oneof"`
}
type Result_Error ¶
type Result_Error struct {
// An unhandled error in user code.
Error *HandlerError `protobuf:"bytes,15,opt,name=error,proto3,oneof"`
}
type Result_Http ¶
type Result_Http struct {
Http *HttpResponse `protobuf:"bytes,10,opt,name=http,proto3,oneof"`
}
type Result_Schedule ¶
type Result_Schedule struct {
Schedule *Ack `protobuf:"bytes,13,opt,name=schedule,proto3,oneof"`
}
type Result_Websocket ¶
type Result_Websocket struct {
Websocket *Ack `protobuf:"bytes,11,opt,name=websocket,proto3,oneof"`
}
type RuntimeConfig ¶
type RuntimeConfig struct {
TracingEnabled bool `protobuf:"varint,1,opt,name=tracing_enabled,json=tracingEnabled,proto3" json:"tracing_enabled,omitempty"`
MetricsEnabled bool `protobuf:"varint,2,opt,name=metrics_enabled,json=metricsEnabled,proto3" json:"metrics_enabled,omitempty"`
Handlers []*HandlerConfig `protobuf:"bytes,3,rep,name=handlers,proto3" json:"handlers,omitempty"`
// The protocol version this runtime serves, sent before the handler is asked
// for anything so that it can refuse for itself rather than waiting to be
// refused.
ProtocolVersion *ProtocolVersion `protobuf:"bytes,4,opt,name=protocol_version,json=protocolVersion,proto3" json:"protocol_version,omitempty"`
// contains filtered or unexported fields
}
func (*RuntimeConfig) Descriptor
deprecated
func (*RuntimeConfig) Descriptor() ([]byte, []int)
Deprecated: Use RuntimeConfig.ProtoReflect.Descriptor instead.
func (*RuntimeConfig) GetHandlers ¶
func (x *RuntimeConfig) GetHandlers() []*HandlerConfig
func (*RuntimeConfig) GetMetricsEnabled ¶
func (x *RuntimeConfig) GetMetricsEnabled() bool
func (*RuntimeConfig) GetProtocolVersion ¶
func (x *RuntimeConfig) GetProtocolVersion() *ProtocolVersion
func (*RuntimeConfig) GetTracingEnabled ¶
func (x *RuntimeConfig) GetTracingEnabled() bool
func (*RuntimeConfig) ProtoMessage ¶
func (*RuntimeConfig) ProtoMessage()
func (*RuntimeConfig) ProtoReflect ¶
func (x *RuntimeConfig) ProtoReflect() protoreflect.Message
func (*RuntimeConfig) Reset ¶
func (x *RuntimeConfig) Reset()
func (*RuntimeConfig) String ¶
func (x *RuntimeConfig) String() string
type RuntimeMessage ¶
type RuntimeMessage struct {
// Types that are valid to be assigned to Frame:
//
// *RuntimeMessage_Config
// *RuntimeMessage_ReadyAck
// *RuntimeMessage_Dispatch
// *RuntimeMessage_Cancel
// *RuntimeMessage_Drain
// *RuntimeMessage_WsAck
Frame isRuntimeMessage_Frame `protobuf_oneof:"frame"`
// contains filtered or unexported fields
}
func (*RuntimeMessage) Descriptor
deprecated
func (*RuntimeMessage) Descriptor() ([]byte, []int)
Deprecated: Use RuntimeMessage.ProtoReflect.Descriptor instead.
func (*RuntimeMessage) GetCancel ¶
func (x *RuntimeMessage) GetCancel() *Cancel
func (*RuntimeMessage) GetConfig ¶
func (x *RuntimeMessage) GetConfig() *RuntimeConfig
func (*RuntimeMessage) GetDispatch ¶
func (x *RuntimeMessage) GetDispatch() *Dispatch
func (*RuntimeMessage) GetDrain ¶
func (x *RuntimeMessage) GetDrain() *Drain
func (*RuntimeMessage) GetFrame ¶
func (x *RuntimeMessage) GetFrame() isRuntimeMessage_Frame
func (*RuntimeMessage) GetReadyAck ¶
func (x *RuntimeMessage) GetReadyAck() *ReadyAck
func (*RuntimeMessage) GetWsAck ¶
func (x *RuntimeMessage) GetWsAck() *WsSendAck
func (*RuntimeMessage) ProtoMessage ¶
func (*RuntimeMessage) ProtoMessage()
func (*RuntimeMessage) ProtoReflect ¶
func (x *RuntimeMessage) ProtoReflect() protoreflect.Message
func (*RuntimeMessage) Reset ¶
func (x *RuntimeMessage) Reset()
func (*RuntimeMessage) String ¶
func (x *RuntimeMessage) String() string
type RuntimeMessage_Cancel ¶
type RuntimeMessage_Cancel struct {
Cancel *Cancel `protobuf:"bytes,4,opt,name=cancel,proto3,oneof"`
}
type RuntimeMessage_Config ¶
type RuntimeMessage_Config struct {
// Sent first, before the handler's Ready, so an SDK can check the handlers
// registered in code against the ones the blueprint declares.
Config *RuntimeConfig `protobuf:"bytes,1,opt,name=config,proto3,oneof"`
}
type RuntimeMessage_Dispatch ¶
type RuntimeMessage_Dispatch struct {
Dispatch *Dispatch `protobuf:"bytes,3,opt,name=dispatch,proto3,oneof"`
}
type RuntimeMessage_Drain ¶
type RuntimeMessage_Drain struct {
Drain *Drain `protobuf:"bytes,5,opt,name=drain,proto3,oneof"`
}
type RuntimeMessage_ReadyAck ¶
type RuntimeMessage_ReadyAck struct {
ReadyAck *ReadyAck `protobuf:"bytes,2,opt,name=ready_ack,json=readyAck,proto3,oneof"`
}
type RuntimeMessage_WsAck ¶
type RuntimeMessage_WsAck struct {
WsAck *WsSendAck `protobuf:"bytes,6,opt,name=ws_ack,json=wsAck,proto3,oneof"`
}
type ScheduleTrigger ¶
type ScheduleTrigger struct {
ScheduleId string `protobuf:"bytes,1,opt,name=schedule_id,json=scheduleId,proto3" json:"schedule_id,omitempty"`
MessageId string `protobuf:"bytes,2,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
Schedule string `protobuf:"bytes,3,opt,name=schedule,proto3" json:"schedule,omitempty"`
Input []byte `protobuf:"bytes,4,opt,name=input,proto3" json:"input,omitempty"`
Vendor []byte `protobuf:"bytes,5,opt,name=vendor,proto3" json:"vendor,omitempty"`
// contains filtered or unexported fields
}
func (*ScheduleTrigger) Descriptor
deprecated
func (*ScheduleTrigger) Descriptor() ([]byte, []int)
Deprecated: Use ScheduleTrigger.ProtoReflect.Descriptor instead.
func (*ScheduleTrigger) GetInput ¶
func (x *ScheduleTrigger) GetInput() []byte
func (*ScheduleTrigger) GetMessageId ¶
func (x *ScheduleTrigger) GetMessageId() string
func (*ScheduleTrigger) GetSchedule ¶
func (x *ScheduleTrigger) GetSchedule() string
func (*ScheduleTrigger) GetScheduleId ¶
func (x *ScheduleTrigger) GetScheduleId() string
func (*ScheduleTrigger) GetVendor ¶
func (x *ScheduleTrigger) GetVendor() []byte
func (*ScheduleTrigger) ProtoMessage ¶
func (*ScheduleTrigger) ProtoMessage()
func (*ScheduleTrigger) ProtoReflect ¶
func (x *ScheduleTrigger) ProtoReflect() protoreflect.Message
func (*ScheduleTrigger) Reset ¶
func (x *ScheduleTrigger) Reset()
func (*ScheduleTrigger) String ¶
func (x *ScheduleTrigger) String() string
type UnimplementedHandlerRuntimeServiceServer ¶
type UnimplementedHandlerRuntimeServiceServer struct{}
UnimplementedHandlerRuntimeServiceServer must be embedded to have forward compatible implementations.
NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.
func (UnimplementedHandlerRuntimeServiceServer) EventStream ¶
func (UnimplementedHandlerRuntimeServiceServer) EventStream(grpc.BidiStreamingServer[HandlerMessage, RuntimeMessage]) error
type UnsafeHandlerRuntimeServiceServer ¶
type UnsafeHandlerRuntimeServiceServer interface {
// contains filtered or unexported methods
}
UnsafeHandlerRuntimeServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HandlerRuntimeServiceServer will result in compilation errors.
type Values ¶
type Values struct {
Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
// contains filtered or unexported fields
}
Ordered values for one parameter or header name.
Order within a name is significant (RFC 9110 section 5.3); order across names is not. Protobuf maps cannot hold repeated values directly, so this wrapper carries them.
func (*Values) Descriptor
deprecated
func (*Values) ProtoMessage ¶
func (*Values) ProtoMessage()
func (*Values) ProtoReflect ¶
func (x *Values) ProtoReflect() protoreflect.Message
type WebSocketMessage ¶
type WebSocketMessage struct {
Route string `protobuf:"bytes,1,opt,name=route,proto3" json:"route,omitempty"`
ConnectionId string `protobuf:"bytes,2,opt,name=connection_id,json=connectionId,proto3" json:"connection_id,omitempty"`
SourceIp string `protobuf:"bytes,3,opt,name=source_ip,json=sourceIp,proto3" json:"source_ip,omitempty"`
RequestId string `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
Message []byte `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
// Whether this arrived as a binary frame rather than a text one. A byte body
// alone cannot express the distinction, and the WebSocket protocol treats
// the two frame types as distinct.
IsBinary bool `protobuf:"varint,6,opt,name=is_binary,json=isBinary,proto3" json:"is_binary,omitempty"`
// The id this message is known by, which is the one the client gave it when
// it gave one and a runtime generated one otherwise.
//
// Distinct from request_id, which identifies the delivery. This identifies
// the message, so it is what an acknowledgement names and what a lost
// message notification refers to, and a handler needs it to tie its own
// instrumentation to what the client sees.
MessageId string `protobuf:"bytes,7,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
// contains filtered or unexported fields
}
func (*WebSocketMessage) Descriptor
deprecated
func (*WebSocketMessage) Descriptor() ([]byte, []int)
Deprecated: Use WebSocketMessage.ProtoReflect.Descriptor instead.
func (*WebSocketMessage) GetConnectionId ¶
func (x *WebSocketMessage) GetConnectionId() string
func (*WebSocketMessage) GetIsBinary ¶
func (x *WebSocketMessage) GetIsBinary() bool
func (*WebSocketMessage) GetMessage ¶
func (x *WebSocketMessage) GetMessage() []byte
func (*WebSocketMessage) GetMessageId ¶
func (x *WebSocketMessage) GetMessageId() string
func (*WebSocketMessage) GetRequestId ¶
func (x *WebSocketMessage) GetRequestId() string
func (*WebSocketMessage) GetRoute ¶
func (x *WebSocketMessage) GetRoute() string
func (*WebSocketMessage) GetSourceIp ¶
func (x *WebSocketMessage) GetSourceIp() string
func (*WebSocketMessage) ProtoMessage ¶
func (*WebSocketMessage) ProtoMessage()
func (*WebSocketMessage) ProtoReflect ¶
func (x *WebSocketMessage) ProtoReflect() protoreflect.Message
func (*WebSocketMessage) Reset ¶
func (x *WebSocketMessage) Reset()
func (*WebSocketMessage) String ¶
func (x *WebSocketMessage) String() string
type WsOutbound ¶
type WsOutbound struct {
ConnectionId string `protobuf:"bytes,1,opt,name=connection_id,json=connectionId,proto3" json:"connection_id,omitempty"`
// Sent to the socket exactly as given.
//
// When is_binary is set this must be in the Celerity Binary Message Format,
// `<routeLength><route><requireAck><messageIdLength><messageId><message>`. A
// client reads every binary frame that is not a reserved one as a framed
// message, so raw bytes are not read as a payload, they are read as a route
// length, a route and an id, leaving the application a short payload under a
// route nothing serves. A message carrying no id sets both requireAck and
// messageIdLength to zero. The runtime refuses a binary message it cannot
// read as a frame rather than sending one no client can use, reporting it as
// a WsSendFailure for that message.
//
// Text messages are unconstrained beyond the protocol's reserved keys.
Message []byte `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
IsBinary bool `protobuf:"varint,3,opt,name=is_binary,json=isBinary,proto3" json:"is_binary,omitempty"`
InformClientsOnLoss []string `protobuf:"bytes,4,rep,name=inform_clients_on_loss,json=informClientsOnLoss,proto3" json:"inform_clients_on_loss,omitempty"`
// Identifies this message to the runtime, for the acknowledgement between
// nodes when the target connection lives on another one, and in the loss
// event delivered to the clients named in inform_clients_on_loss. Generated
// by the runtime when left empty, which is the right choice unless the
// handler needs to match a loss event back to what it sent.
//
// Not the message id the client sees. The runtime sends `message` to the
// socket exactly as given, so a client-visible id, and the acknowledgement
// and deduplication that depend on it, is something the handler puts in the
// payload it composes.
MessageId string `protobuf:"bytes,5,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
// The connection that caused this message to be sent, carried through to the
// loss event so an informed client can tell who was being replied to. Only
// meaningful alongside inform_clients_on_loss.
Caller string `protobuf:"bytes,6,opt,name=caller,proto3" json:"caller,omitempty"`
// Whether the WsSendAck for this message waits for the client to acknowledge
// it, rather than reporting the write to the socket.
//
// The message has to ask the client for an acknowledgement in the payload it
// carries, which the runtime does not compose. Setting this for one that
// asks nothing leaves the send waiting for an answer that is never coming,
// until the runtime declares the message lost.
//
// Waited for wherever the connection is, so a send means the same thing in a
// single node deployment as in a cluster. Sending it again while attempts
// remain, and declaring it lost when they run out, is the runtime's to do.
WaitForAck bool `protobuf:"varint,7,opt,name=wait_for_ack,json=waitForAck,proto3" json:"wait_for_ack,omitempty"`
// contains filtered or unexported fields
}
func (*WsOutbound) Descriptor
deprecated
func (*WsOutbound) Descriptor() ([]byte, []int)
Deprecated: Use WsOutbound.ProtoReflect.Descriptor instead.
func (*WsOutbound) GetCaller ¶
func (x *WsOutbound) GetCaller() string
func (*WsOutbound) GetConnectionId ¶
func (x *WsOutbound) GetConnectionId() string
func (*WsOutbound) GetInformClientsOnLoss ¶
func (x *WsOutbound) GetInformClientsOnLoss() []string
func (*WsOutbound) GetIsBinary ¶
func (x *WsOutbound) GetIsBinary() bool
func (*WsOutbound) GetMessage ¶
func (x *WsOutbound) GetMessage() []byte
func (*WsOutbound) GetMessageId ¶
func (x *WsOutbound) GetMessageId() string
func (*WsOutbound) GetWaitForAck ¶
func (x *WsOutbound) GetWaitForAck() bool
func (*WsOutbound) ProtoMessage ¶
func (*WsOutbound) ProtoMessage()
func (*WsOutbound) ProtoReflect ¶
func (x *WsOutbound) ProtoReflect() protoreflect.Message
func (*WsOutbound) Reset ¶
func (x *WsOutbound) Reset()
func (*WsOutbound) String ¶
func (x *WsOutbound) String() string
type WsSend ¶
type WsSend struct {
CorrelationId string `protobuf:"bytes,1,opt,name=correlation_id,json=correlationId,proto3" json:"correlation_id,omitempty"`
Messages []*WsOutbound `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
// contains filtered or unexported fields
}
func (*WsSend) Descriptor
deprecated
func (*WsSend) GetCorrelationId ¶
func (*WsSend) GetMessages ¶
func (x *WsSend) GetMessages() []*WsOutbound
func (*WsSend) ProtoMessage ¶
func (*WsSend) ProtoMessage()
func (*WsSend) ProtoReflect ¶
func (x *WsSend) ProtoReflect() protoreflect.Message
type WsSendAck ¶
type WsSendAck struct {
CorrelationId string `protobuf:"bytes,1,opt,name=correlation_id,json=correlationId,proto3" json:"correlation_id,omitempty"`
// True when every message was delivered, equivalent to failures being empty.
Success bool `protobuf:"varint,2,opt,name=success,proto3" json:"success,omitempty"`
Failures []*WsSendFailure `protobuf:"bytes,3,rep,name=failures,proto3" json:"failures,omitempty"`
// contains filtered or unexported fields
}
Reports what happened to each message in a WsSend.
Failures are per message rather than per batch because a client has no way to deduplicate: a message reaches it as a bare text or binary frame with no id, so re-sending one that already arrived is visible to the application. A handler must therefore be able to retry exactly what failed.
func (*WsSendAck) Descriptor
deprecated
func (*WsSendAck) GetCorrelationId ¶
func (*WsSendAck) GetFailures ¶
func (x *WsSendAck) GetFailures() []*WsSendFailure
func (*WsSendAck) GetSuccess ¶
func (*WsSendAck) ProtoMessage ¶
func (*WsSendAck) ProtoMessage()
func (*WsSendAck) ProtoReflect ¶
func (x *WsSendAck) ProtoReflect() protoreflect.Message
type WsSendFailure ¶
type WsSendFailure struct {
// Index into WsSend.messages. Identifies the message rather than message_id
// does, because the runtime generates that when the handler leaves it empty,
// so the handler may never have seen it.
Index uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
ConnectionId string `protobuf:"bytes,2,opt,name=connection_id,json=connectionId,proto3" json:"connection_id,omitempty"`
ErrorMessage string `protobuf:"bytes,3,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
// contains filtered or unexported fields
}
func (*WsSendFailure) Descriptor
deprecated
func (*WsSendFailure) Descriptor() ([]byte, []int)
Deprecated: Use WsSendFailure.ProtoReflect.Descriptor instead.
func (*WsSendFailure) GetConnectionId ¶
func (x *WsSendFailure) GetConnectionId() string
func (*WsSendFailure) GetErrorMessage ¶
func (x *WsSendFailure) GetErrorMessage() string
func (*WsSendFailure) GetIndex ¶
func (x *WsSendFailure) GetIndex() uint32
func (*WsSendFailure) ProtoMessage ¶
func (*WsSendFailure) ProtoMessage()
func (*WsSendFailure) ProtoReflect ¶
func (x *WsSendFailure) ProtoReflect() protoreflect.Message
func (*WsSendFailure) Reset ¶
func (x *WsSendFailure) Reset()
func (*WsSendFailure) String ¶
func (x *WsSendFailure) String() string