| // Copyright 2016 The LUCI Authors. All rights reserved. |
| // Use of this source code is governed under the Apache License, Version 2.0 |
| // that can be found in the LICENSE file. |
| |
| // Code generated by protoc-gen-go. DO NOT EDIT. |
| // versions: |
| // protoc-gen-go v1.26.0 |
| // protoc v3.17.0 |
| // source: go.chromium.org/luci/dm/api/service/v1/graph_data.proto |
| |
| package dm |
| |
| import ( |
| protoreflect "google.golang.org/protobuf/reflect/protoreflect" |
| protoimpl "google.golang.org/protobuf/runtime/protoimpl" |
| durationpb "google.golang.org/protobuf/types/known/durationpb" |
| timestamppb "google.golang.org/protobuf/types/known/timestamppb" |
| reflect "reflect" |
| sync "sync" |
| ) |
| |
| const ( |
| // Verify that this generated code is sufficiently up-to-date. |
| _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) |
| // Verify that runtime/protoimpl is sufficiently up-to-date. |
| _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) |
| ) |
| |
| type AbnormalFinish_Status int32 |
| |
| const ( |
| // This status is invalid and should not be used intentionally. |
| // |
| // It is a placeholder to identify 0-initialized AbnormalFinish structures. |
| AbnormalFinish_INVALID AbnormalFinish_Status = 0 |
| // This entity has a failed result. |
| // |
| // Executions: the distributor reported that the task executed and failed, OR |
| // the distributor reports success while the Execution is in the RUNNING |
| // state. |
| // |
| // Attempts: the last Execution had a FAILED Status. |
| // |
| // Retryable. |
| AbnormalFinish_FAILED AbnormalFinish_Status = 1 |
| // This entity failed in a bad way. |
| // |
| // Executions: The distributor told us that the job died violently while in |
| // the SCHEDULING, RUNNING or STOPPING state. |
| // |
| // Attempts: the last Execution had a CRASHED Status. |
| // |
| // Retryable. |
| AbnormalFinish_CRASHED AbnormalFinish_Status = 2 |
| // Waited too long for the job to start. |
| // |
| // Executions: the distributor couldn't start the job in time, OR DM failed |
| // to get a status update from the distributor in time (e.g. the state was |
| // SCHEDULING for too long). |
| // |
| // Attempts: the last Execution had an EXPIRED Status. |
| // |
| // Retryable. |
| AbnormalFinish_EXPIRED AbnormalFinish_Status = 3 |
| // The job started, but took too long. |
| // |
| // Executions: the distributor started the job, but it couldn't complete in |
| // time, OR DM failed to get a status update from the distributor in time |
| // (e.g. the state was RUNNING for too long). |
| // |
| // Attempts: the last Execution had an TIMED_OUT Status. |
| // |
| // Retryable. |
| AbnormalFinish_TIMED_OUT AbnormalFinish_Status = 4 |
| // The job was cancelled by an external entity (human, automated system). |
| // |
| // Executions: the distributor informing DM that the job was preemptively |
| // cancelled. |
| // |
| // Attempts: the last Execution had a CANCELLED Status, or this Attempt |
| // was cancelled via DM. |
| AbnormalFinish_CANCELLED AbnormalFinish_Status = 5 |
| // The job was prevented from running by the distributor (quota, permissions, |
| // etc.) |
| // |
| // Executions: the distributor refused to run this job. |
| // |
| // Attempts: the last Execution had a REJECTED Status. |
| AbnormalFinish_REJECTED AbnormalFinish_Status = 6 |
| // The job is unrecognized. |
| // |
| // Executions: the distributor doesn't know about this job, or has forgotten |
| // about it. |
| // |
| // Attempts: the last Execution had a MISSING Status. |
| AbnormalFinish_MISSING AbnormalFinish_Status = 7 |
| // The distributor ran the job, but returned garbage. |
| // |
| // Executions: the distributor returned a nominally successful result, but |
| // the Data portion of the result wasn't able to be normalized. |
| // |
| // Attempts: the last Execution had a RESULT_MALFORMED Status. |
| AbnormalFinish_RESULT_MALFORMED AbnormalFinish_Status = 8 |
| ) |
| |
| // Enum value maps for AbnormalFinish_Status. |
| var ( |
| AbnormalFinish_Status_name = map[int32]string{ |
| 0: "INVALID", |
| 1: "FAILED", |
| 2: "CRASHED", |
| 3: "EXPIRED", |
| 4: "TIMED_OUT", |
| 5: "CANCELLED", |
| 6: "REJECTED", |
| 7: "MISSING", |
| 8: "RESULT_MALFORMED", |
| } |
| AbnormalFinish_Status_value = map[string]int32{ |
| "INVALID": 0, |
| "FAILED": 1, |
| "CRASHED": 2, |
| "EXPIRED": 3, |
| "TIMED_OUT": 4, |
| "CANCELLED": 5, |
| "REJECTED": 6, |
| "MISSING": 7, |
| "RESULT_MALFORMED": 8, |
| } |
| ) |
| |
| func (x AbnormalFinish_Status) Enum() *AbnormalFinish_Status { |
| p := new(AbnormalFinish_Status) |
| *p = x |
| return p |
| } |
| |
| func (x AbnormalFinish_Status) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (AbnormalFinish_Status) Descriptor() protoreflect.EnumDescriptor { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[0].Descriptor() |
| } |
| |
| func (AbnormalFinish_Status) Type() protoreflect.EnumType { |
| return &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[0] |
| } |
| |
| func (x AbnormalFinish_Status) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use AbnormalFinish_Status.Descriptor instead. |
| func (AbnormalFinish_Status) EnumDescriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{0, 0} |
| } |
| |
| type Attempt_State int32 |
| |
| const ( |
| // The Attempt is waiting to be Executed. |
| Attempt_SCHEDULING Attempt_State = 0 |
| // The Attempt is currently waiting for its current Execution to finish. |
| Attempt_EXECUTING Attempt_State = 1 |
| // The Attempt is waiting for dependent Attempts to be resolved. |
| Attempt_WAITING Attempt_State = 2 |
| // The Attempt is in its final state. |
| Attempt_FINISHED Attempt_State = 3 |
| // The Attempt is in an abnormal final state. |
| Attempt_ABNORMAL_FINISHED Attempt_State = 4 |
| ) |
| |
| // Enum value maps for Attempt_State. |
| var ( |
| Attempt_State_name = map[int32]string{ |
| 0: "SCHEDULING", |
| 1: "EXECUTING", |
| 2: "WAITING", |
| 3: "FINISHED", |
| 4: "ABNORMAL_FINISHED", |
| } |
| Attempt_State_value = map[string]int32{ |
| "SCHEDULING": 0, |
| "EXECUTING": 1, |
| "WAITING": 2, |
| "FINISHED": 3, |
| "ABNORMAL_FINISHED": 4, |
| } |
| ) |
| |
| func (x Attempt_State) Enum() *Attempt_State { |
| p := new(Attempt_State) |
| *p = x |
| return p |
| } |
| |
| func (x Attempt_State) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Attempt_State) Descriptor() protoreflect.EnumDescriptor { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[1].Descriptor() |
| } |
| |
| func (Attempt_State) Type() protoreflect.EnumType { |
| return &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[1] |
| } |
| |
| func (x Attempt_State) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Attempt_State.Descriptor instead. |
| func (Attempt_State) EnumDescriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 0} |
| } |
| |
| type Attempt_Partial_Result int32 |
| |
| const ( |
| // LOADED implies that the result was, in fact, loaded. |
| Attempt_Partial_LOADED Attempt_Partial_Result = 0 |
| // NOT_LOADED is set if the result failed to load because there was |
| // a transient error or the request ran out of time. |
| Attempt_Partial_NOT_LOADED Attempt_Partial_Result = 1 |
| // NOT_AUTHORIZED is set if the query was authenticated from an Execution |
| // whose Attempt doesn't depend on this one. |
| Attempt_Partial_NOT_AUTHORIZED Attempt_Partial_Result = 2 |
| // DATA_SIZE_LIMIT is set if the max_data_size limit was reached. |
| Attempt_Partial_DATA_SIZE_LIMIT Attempt_Partial_Result = 3 |
| ) |
| |
| // Enum value maps for Attempt_Partial_Result. |
| var ( |
| Attempt_Partial_Result_name = map[int32]string{ |
| 0: "LOADED", |
| 1: "NOT_LOADED", |
| 2: "NOT_AUTHORIZED", |
| 3: "DATA_SIZE_LIMIT", |
| } |
| Attempt_Partial_Result_value = map[string]int32{ |
| "LOADED": 0, |
| "NOT_LOADED": 1, |
| "NOT_AUTHORIZED": 2, |
| "DATA_SIZE_LIMIT": 3, |
| } |
| ) |
| |
| func (x Attempt_Partial_Result) Enum() *Attempt_Partial_Result { |
| p := new(Attempt_Partial_Result) |
| *p = x |
| return p |
| } |
| |
| func (x Attempt_Partial_Result) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Attempt_Partial_Result) Descriptor() protoreflect.EnumDescriptor { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[2].Descriptor() |
| } |
| |
| func (Attempt_Partial_Result) Type() protoreflect.EnumType { |
| return &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[2] |
| } |
| |
| func (x Attempt_Partial_Result) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Attempt_Partial_Result.Descriptor instead. |
| func (Attempt_Partial_Result) EnumDescriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 3, 0} |
| } |
| |
| type Execution_State int32 |
| |
| const ( |
| // The execution has been accepted by the distributor, but is not running |
| // yet. |
| Execution_SCHEDULING Execution_State = 0 |
| // The execution is running (has activated with DM). |
| Execution_RUNNING Execution_State = 1 |
| // The execution has been told to stop by DM, but we haven't heard from |
| // the distributor yet. |
| Execution_STOPPING Execution_State = 2 |
| // The execution is in its final state. |
| Execution_FINISHED Execution_State = 3 |
| // The execution is in an abnormal final state |
| Execution_ABNORMAL_FINISHED Execution_State = 4 |
| ) |
| |
| // Enum value maps for Execution_State. |
| var ( |
| Execution_State_name = map[int32]string{ |
| 0: "SCHEDULING", |
| 1: "RUNNING", |
| 2: "STOPPING", |
| 3: "FINISHED", |
| 4: "ABNORMAL_FINISHED", |
| } |
| Execution_State_value = map[string]int32{ |
| "SCHEDULING": 0, |
| "RUNNING": 1, |
| "STOPPING": 2, |
| "FINISHED": 3, |
| "ABNORMAL_FINISHED": 4, |
| } |
| ) |
| |
| func (x Execution_State) Enum() *Execution_State { |
| p := new(Execution_State) |
| *p = x |
| return p |
| } |
| |
| func (x Execution_State) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Execution_State) Descriptor() protoreflect.EnumDescriptor { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[3].Descriptor() |
| } |
| |
| func (Execution_State) Type() protoreflect.EnumType { |
| return &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes[3] |
| } |
| |
| func (x Execution_State) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Execution_State.Descriptor instead. |
| func (Execution_State) EnumDescriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 0} |
| } |
| |
| type AbnormalFinish struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Status AbnormalFinish_Status `protobuf:"varint,1,opt,name=status,proto3,enum=dm.AbnormalFinish_Status" json:"status,omitempty"` |
| Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"` |
| } |
| |
| func (x *AbnormalFinish) Reset() { |
| *x = AbnormalFinish{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[0] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *AbnormalFinish) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*AbnormalFinish) ProtoMessage() {} |
| |
| func (x *AbnormalFinish) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[0] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use AbnormalFinish.ProtoReflect.Descriptor instead. |
| func (*AbnormalFinish) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{0} |
| } |
| |
| func (x *AbnormalFinish) GetStatus() AbnormalFinish_Status { |
| if x != nil { |
| return x.Status |
| } |
| return AbnormalFinish_INVALID |
| } |
| |
| func (x *AbnormalFinish) GetReason() string { |
| if x != nil { |
| return x.Reason |
| } |
| return "" |
| } |
| |
| type Quest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Id *Quest_ID `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` |
| // DNE is set to true if this Quest does not exist. None of the following |
| // fields are valid if this is set to true. |
| DNE bool `protobuf:"varint,2,opt,name=DNE,proto3" json:"DNE,omitempty"` |
| Data *Quest_Data `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` |
| // key is the `id` field of the Attempt.ID |
| Attempts map[uint32]*Attempt `protobuf:"bytes,4,rep,name=attempts,proto3" json:"attempts,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // Partial is true iff the request asked for QuestData, but wasn't able to |
| // completely fill it. |
| Partial bool `protobuf:"varint,16,opt,name=partial,proto3" json:"partial,omitempty"` |
| } |
| |
| func (x *Quest) Reset() { |
| *x = Quest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[1] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest) ProtoMessage() {} |
| |
| func (x *Quest) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[1] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest.ProtoReflect.Descriptor instead. |
| func (*Quest) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1} |
| } |
| |
| func (x *Quest) GetId() *Quest_ID { |
| if x != nil { |
| return x.Id |
| } |
| return nil |
| } |
| |
| func (x *Quest) GetDNE() bool { |
| if x != nil { |
| return x.DNE |
| } |
| return false |
| } |
| |
| func (x *Quest) GetData() *Quest_Data { |
| if x != nil { |
| return x.Data |
| } |
| return nil |
| } |
| |
| func (x *Quest) GetAttempts() map[uint32]*Attempt { |
| if x != nil { |
| return x.Attempts |
| } |
| return nil |
| } |
| |
| func (x *Quest) GetPartial() bool { |
| if x != nil { |
| return x.Partial |
| } |
| return false |
| } |
| |
| // JsonResult represents a free-form JSON object. It has a maximum size of |
| // 256KB normalized (no extra whitespace). DM will normalize incoming |
| // JSONObjects before recalculating their size. |
| type JsonResult struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Guaranteed to be a JSON object `{...}` or the empty string (if this is part |
| // of a Partial result from e.g. a WalkGraph RPC). |
| Object string `protobuf:"bytes,1,opt,name=object,proto3" json:"object,omitempty"` |
| // The length of data. If this message is non-nil, this will have a value even |
| // if object is empty (e.g. for a partial result). This is useful for query |
| // results where you either opt to not load the data (include.*.data == |
| // false), or the response exceeds the size limit (so you can see how big the |
| // data would have been if the limit wasn't exceeded). |
| Size uint32 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"` |
| // The timestamp of when this JsonResult's contents expire. If omitted, it |
| // should be assumed that the contents never expire. |
| Expiration *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expiration,proto3" json:"expiration,omitempty"` |
| } |
| |
| func (x *JsonResult) Reset() { |
| *x = JsonResult{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[2] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *JsonResult) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*JsonResult) ProtoMessage() {} |
| |
| func (x *JsonResult) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[2] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use JsonResult.ProtoReflect.Descriptor instead. |
| func (*JsonResult) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{2} |
| } |
| |
| func (x *JsonResult) GetObject() string { |
| if x != nil { |
| return x.Object |
| } |
| return "" |
| } |
| |
| func (x *JsonResult) GetSize() uint32 { |
| if x != nil { |
| return x.Size |
| } |
| return 0 |
| } |
| |
| func (x *JsonResult) GetExpiration() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Expiration |
| } |
| return nil |
| } |
| |
| // Result holds either data OR abnormal finish information. |
| type Result struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Data *JsonResult `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` |
| AbnormalFinish *AbnormalFinish `protobuf:"bytes,2,opt,name=abnormal_finish,json=abnormalFinish,proto3" json:"abnormal_finish,omitempty"` |
| } |
| |
| func (x *Result) Reset() { |
| *x = Result{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[3] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Result) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Result) ProtoMessage() {} |
| |
| func (x *Result) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[3] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Result.ProtoReflect.Descriptor instead. |
| func (*Result) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{3} |
| } |
| |
| func (x *Result) GetData() *JsonResult { |
| if x != nil { |
| return x.Data |
| } |
| return nil |
| } |
| |
| func (x *Result) GetAbnormalFinish() *AbnormalFinish { |
| if x != nil { |
| return x.AbnormalFinish |
| } |
| return nil |
| } |
| |
| type Attempt struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Id *Attempt_ID `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` |
| // DNE is set to true if this Attempt does not exist. None of the following |
| // fields are valid if this is set to true. |
| DNE bool `protobuf:"varint,2,opt,name=DNE,proto3" json:"DNE,omitempty"` |
| Data *Attempt_Data `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` |
| // key is the `id` field of the Execution.ID |
| Executions map[uint32]*Execution `protobuf:"bytes,4,rep,name=executions,proto3" json:"executions,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| FwdDeps *AttemptList `protobuf:"bytes,5,opt,name=fwd_deps,json=fwdDeps,proto3" json:"fwd_deps,omitempty"` |
| BackDeps *AttemptList `protobuf:"bytes,6,opt,name=back_deps,json=backDeps,proto3" json:"back_deps,omitempty"` |
| // Partial values are true iff the request asked for AttemptData, Executions |
| // or Deps, but wasn't able to completely fill them. If Partial is omitted, |
| // it means that no partial data exists in this Attempt. |
| Partial *Attempt_Partial `protobuf:"bytes,16,opt,name=partial,proto3" json:"partial,omitempty"` |
| } |
| |
| func (x *Attempt) Reset() { |
| *x = Attempt{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[4] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt) ProtoMessage() {} |
| |
| func (x *Attempt) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[4] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt.ProtoReflect.Descriptor instead. |
| func (*Attempt) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4} |
| } |
| |
| func (x *Attempt) GetId() *Attempt_ID { |
| if x != nil { |
| return x.Id |
| } |
| return nil |
| } |
| |
| func (x *Attempt) GetDNE() bool { |
| if x != nil { |
| return x.DNE |
| } |
| return false |
| } |
| |
| func (x *Attempt) GetData() *Attempt_Data { |
| if x != nil { |
| return x.Data |
| } |
| return nil |
| } |
| |
| func (x *Attempt) GetExecutions() map[uint32]*Execution { |
| if x != nil { |
| return x.Executions |
| } |
| return nil |
| } |
| |
| func (x *Attempt) GetFwdDeps() *AttemptList { |
| if x != nil { |
| return x.FwdDeps |
| } |
| return nil |
| } |
| |
| func (x *Attempt) GetBackDeps() *AttemptList { |
| if x != nil { |
| return x.BackDeps |
| } |
| return nil |
| } |
| |
| func (x *Attempt) GetPartial() *Attempt_Partial { |
| if x != nil { |
| return x.Partial |
| } |
| return nil |
| } |
| |
| type Execution struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Id *Execution_ID `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` |
| Data *Execution_Data `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` |
| // Partial is true iff the request asked for Executions, but wasn't able to |
| // completely fill them. |
| Partial bool `protobuf:"varint,16,opt,name=partial,proto3" json:"partial,omitempty"` |
| } |
| |
| func (x *Execution) Reset() { |
| *x = Execution{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[5] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution) ProtoMessage() {} |
| |
| func (x *Execution) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[5] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution.ProtoReflect.Descriptor instead. |
| func (*Execution) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5} |
| } |
| |
| func (x *Execution) GetId() *Execution_ID { |
| if x != nil { |
| return x.Id |
| } |
| return nil |
| } |
| |
| func (x *Execution) GetData() *Execution_Data { |
| if x != nil { |
| return x.Data |
| } |
| return nil |
| } |
| |
| func (x *Execution) GetPartial() bool { |
| if x != nil { |
| return x.Partial |
| } |
| return false |
| } |
| |
| // GraphData defines all of the DM graph data that may be returned from DM. |
| // |
| // Currently only WalkGraph returns GraphData, but in the future other APIs will |
| // explore the graph in other ways, and they'll return this same data structure. |
| // |
| // The design of this message is intended to allow clients to easily accumulate |
| // various GraphData from different sources in order to maintain an in-memory |
| // cache of data that exists in DM, where that data is discovered across |
| // multiple RPCs. |
| type GraphData struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Quests is the main entry point for all the graph data. |
| // key is the `id` field of the QuestID |
| Quests map[string]*Quest `protobuf:"bytes,1,rep,name=quests,proto3" json:"quests,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // HadErrors is set to true if the data represented here is a partial view |
| // of the requested data due to internal errors. The request may be repeated |
| // or the client may chose to make smaller queries into the portions of the |
| // graph that are missing. |
| // |
| // If HadErrors is set HadMore will also be set. |
| HadErrors bool `protobuf:"varint,2,opt,name=had_errors,json=hadErrors,proto3" json:"had_errors,omitempty"` |
| // HadMore is set to true if the request stopped short of the full query |
| // result set due to things like: |
| // * max response size limit |
| // * max time limit (e.g. WalkGraphReq.MaxTime) being hit |
| // * non-terminal errors encountered during the request (HadErrors will also |
| // be true in this case). |
| // |
| // Note that this is different than the Partial booleans: This refers |
| // specifically to situations when Queries do not run to completion. |
| HadMore bool `protobuf:"varint,3,opt,name=had_more,json=hadMore,proto3" json:"had_more,omitempty"` |
| } |
| |
| func (x *GraphData) Reset() { |
| *x = GraphData{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[6] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *GraphData) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*GraphData) ProtoMessage() {} |
| |
| func (x *GraphData) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[6] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use GraphData.ProtoReflect.Descriptor instead. |
| func (*GraphData) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{6} |
| } |
| |
| func (x *GraphData) GetQuests() map[string]*Quest { |
| if x != nil { |
| return x.Quests |
| } |
| return nil |
| } |
| |
| func (x *GraphData) GetHadErrors() bool { |
| if x != nil { |
| return x.HadErrors |
| } |
| return false |
| } |
| |
| func (x *GraphData) GetHadMore() bool { |
| if x != nil { |
| return x.HadMore |
| } |
| return false |
| } |
| |
| type Quest_ID struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` |
| } |
| |
| func (x *Quest_ID) Reset() { |
| *x = Quest_ID{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[7] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_ID) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_ID) ProtoMessage() {} |
| |
| func (x *Quest_ID) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[7] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_ID.ProtoReflect.Descriptor instead. |
| func (*Quest_ID) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 0} |
| } |
| |
| func (x *Quest_ID) GetId() string { |
| if x != nil { |
| return x.Id |
| } |
| return "" |
| } |
| |
| type Quest_Desc struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // This names a specific distributor configuration (or alias) in the |
| // service's distributors.cfg file. This will be used to look up the |
| // distributor's implementation and connection information when Attempts for |
| // this Quest are Executed. |
| DistributorConfigName string `protobuf:"bytes,1,opt,name=distributor_config_name,json=distributorConfigName,proto3" json:"distributor_config_name,omitempty"` |
| // A JSON object which corresponds to the input parameters for the job. |
| // These will be passed in a distributor-specific way to the job. This is |
| // a freeform JSON object, and must parse as such, but otherwise doesn't |
| // necessarily have a server-enforced schema. |
| // |
| // The distributor implementation in DM will not use the contents of these |
| // to make any scheduling decisions. |
| // |
| // The distributor MAY choose to validate some schema for these parameters. |
| Parameters string `protobuf:"bytes,2,opt,name=parameters,proto3" json:"parameters,omitempty"` |
| // A JSON object which corresponds to the distributor-specific parameters |
| // for the job. |
| // |
| // The distributor defines and validates the schema for these, and will use |
| // the values herein to make decisions about how the job is run. It is up to |
| // the distributor whether these values are passed on to the job, and if so |
| // in what form. |
| DistributorParameters string `protobuf:"bytes,3,opt,name=distributor_parameters,json=distributorParameters,proto3" json:"distributor_parameters,omitempty"` |
| // This is metadata which doesn't affect the functionality of the payload, |
| // but does affect how DM interacts with the distributor when scheduling |
| // Executions. |
| Meta *Quest_Desc_Meta `protobuf:"bytes,4,opt,name=meta,proto3" json:"meta,omitempty"` |
| } |
| |
| func (x *Quest_Desc) Reset() { |
| *x = Quest_Desc{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[8] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_Desc) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_Desc) ProtoMessage() {} |
| |
| func (x *Quest_Desc) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[8] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_Desc.ProtoReflect.Descriptor instead. |
| func (*Quest_Desc) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 1} |
| } |
| |
| func (x *Quest_Desc) GetDistributorConfigName() string { |
| if x != nil { |
| return x.DistributorConfigName |
| } |
| return "" |
| } |
| |
| func (x *Quest_Desc) GetParameters() string { |
| if x != nil { |
| return x.Parameters |
| } |
| return "" |
| } |
| |
| func (x *Quest_Desc) GetDistributorParameters() string { |
| if x != nil { |
| return x.DistributorParameters |
| } |
| return "" |
| } |
| |
| func (x *Quest_Desc) GetMeta() *Quest_Desc_Meta { |
| if x != nil { |
| return x.Meta |
| } |
| return nil |
| } |
| |
| type Quest_TemplateSpec struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` |
| Ref string `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"` |
| Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"` |
| Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` |
| } |
| |
| func (x *Quest_TemplateSpec) Reset() { |
| *x = Quest_TemplateSpec{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[9] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_TemplateSpec) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_TemplateSpec) ProtoMessage() {} |
| |
| func (x *Quest_TemplateSpec) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[9] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_TemplateSpec.ProtoReflect.Descriptor instead. |
| func (*Quest_TemplateSpec) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 2} |
| } |
| |
| func (x *Quest_TemplateSpec) GetProject() string { |
| if x != nil { |
| return x.Project |
| } |
| return "" |
| } |
| |
| func (x *Quest_TemplateSpec) GetRef() string { |
| if x != nil { |
| return x.Ref |
| } |
| return "" |
| } |
| |
| func (x *Quest_TemplateSpec) GetVersion() string { |
| if x != nil { |
| return x.Version |
| } |
| return "" |
| } |
| |
| func (x *Quest_TemplateSpec) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| type Quest_Data struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Created *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"` |
| Desc *Quest_Desc `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc,omitempty"` |
| BuiltBy []*Quest_TemplateSpec `protobuf:"bytes,3,rep,name=built_by,json=builtBy,proto3" json:"built_by,omitempty"` |
| } |
| |
| func (x *Quest_Data) Reset() { |
| *x = Quest_Data{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[10] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_Data) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_Data) ProtoMessage() {} |
| |
| func (x *Quest_Data) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[10] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_Data.ProtoReflect.Descriptor instead. |
| func (*Quest_Data) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 3} |
| } |
| |
| func (x *Quest_Data) GetCreated() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Created |
| } |
| return nil |
| } |
| |
| func (x *Quest_Data) GetDesc() *Quest_Desc { |
| if x != nil { |
| return x.Desc |
| } |
| return nil |
| } |
| |
| func (x *Quest_Data) GetBuiltBy() []*Quest_TemplateSpec { |
| if x != nil { |
| return x.BuiltBy |
| } |
| return nil |
| } |
| |
| type Quest_Desc_Meta struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // This names the user/service account for all Attempts on this quest. You |
| // must have permission to use this account when creating the Quest and/or |
| // Attempts. |
| AsAccount string `protobuf:"bytes,1,opt,name=as_account,json=asAccount,proto3" json:"as_account,omitempty"` |
| // This affects how DM will retry the job payload in various exceptional |
| // circumstances. |
| Retry *Quest_Desc_Meta_Retry `protobuf:"bytes,2,opt,name=retry,proto3" json:"retry,omitempty"` |
| Timeouts *Quest_Desc_Meta_Timeouts `protobuf:"bytes,3,opt,name=timeouts,proto3" json:"timeouts,omitempty"` |
| } |
| |
| func (x *Quest_Desc_Meta) Reset() { |
| *x = Quest_Desc_Meta{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[12] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_Desc_Meta) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_Desc_Meta) ProtoMessage() {} |
| |
| func (x *Quest_Desc_Meta) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[12] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_Desc_Meta.ProtoReflect.Descriptor instead. |
| func (*Quest_Desc_Meta) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 1, 0} |
| } |
| |
| func (x *Quest_Desc_Meta) GetAsAccount() string { |
| if x != nil { |
| return x.AsAccount |
| } |
| return "" |
| } |
| |
| func (x *Quest_Desc_Meta) GetRetry() *Quest_Desc_Meta_Retry { |
| if x != nil { |
| return x.Retry |
| } |
| return nil |
| } |
| |
| func (x *Quest_Desc_Meta) GetTimeouts() *Quest_Desc_Meta_Timeouts { |
| if x != nil { |
| return x.Timeouts |
| } |
| return nil |
| } |
| |
| // Retry specifies the number of times in a row that DM should re-Execute |
| // an Attempt due to the provided abnormal result. |
| // |
| // NOTE: The proto tag numbers for these MUST be aligned with the |
| // enumeration values of AbnormalFinish.Status! |
| type Quest_Desc_Meta_Retry struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // The number of times in a row to retry Executions which have an |
| // ABNORMAL_FINISHED status of FAILED. |
| Failed uint32 `protobuf:"varint,1,opt,name=failed,proto3" json:"failed,omitempty"` |
| // The number of times in a row to retry Executions which have an |
| // ABNORMAL_FINISHED status of CRASHED. |
| Crashed uint32 `protobuf:"varint,2,opt,name=crashed,proto3" json:"crashed,omitempty"` |
| // The number of times in a row to retry Executions which have an |
| // ABNORMAL_FINISHED status of EXPIRED. |
| Expired uint32 `protobuf:"varint,3,opt,name=expired,proto3" json:"expired,omitempty"` |
| // The number of times in a row to retry Executions which have an |
| // ABNORMAL_FINISHED status of TIMED_OUT. |
| TimedOut uint32 `protobuf:"varint,4,opt,name=timed_out,json=timedOut,proto3" json:"timed_out,omitempty"` |
| } |
| |
| func (x *Quest_Desc_Meta_Retry) Reset() { |
| *x = Quest_Desc_Meta_Retry{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[13] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_Desc_Meta_Retry) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_Desc_Meta_Retry) ProtoMessage() {} |
| |
| func (x *Quest_Desc_Meta_Retry) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[13] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_Desc_Meta_Retry.ProtoReflect.Descriptor instead. |
| func (*Quest_Desc_Meta_Retry) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 1, 0, 0} |
| } |
| |
| func (x *Quest_Desc_Meta_Retry) GetFailed() uint32 { |
| if x != nil { |
| return x.Failed |
| } |
| return 0 |
| } |
| |
| func (x *Quest_Desc_Meta_Retry) GetCrashed() uint32 { |
| if x != nil { |
| return x.Crashed |
| } |
| return 0 |
| } |
| |
| func (x *Quest_Desc_Meta_Retry) GetExpired() uint32 { |
| if x != nil { |
| return x.Expired |
| } |
| return 0 |
| } |
| |
| func (x *Quest_Desc_Meta_Retry) GetTimedOut() uint32 { |
| if x != nil { |
| return x.TimedOut |
| } |
| return 0 |
| } |
| |
| // Timing describes the amount of time that Executions for this Quest |
| // should have, on the following timeline: |
| // Event: execution sent to distributor |
| // ^ "start" v |
| // Event: execution sends ActivateExecution |
| // ^ "run" v |
| // Event: execution sends halting RPC (either ActivateExecution or |
| // EnsureGraphData) |
| // ^ "stop" v |
| // Event: distributor gives execution result back to DM |
| // |
| // If the given timeout hits before the next event in the timeline, DM |
| // will mark the Execution as TIMED_OUT, and the appropriate retry policy |
| // will be applied. |
| // |
| // If a given timeout is unlimited, leave the duration unset or 0. |
| type Quest_Desc_Meta_Timeouts struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Start *durationpb.Duration `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"` |
| Run *durationpb.Duration `protobuf:"bytes,2,opt,name=run,proto3" json:"run,omitempty"` |
| Stop *durationpb.Duration `protobuf:"bytes,3,opt,name=stop,proto3" json:"stop,omitempty"` |
| } |
| |
| func (x *Quest_Desc_Meta_Timeouts) Reset() { |
| *x = Quest_Desc_Meta_Timeouts{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[14] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Quest_Desc_Meta_Timeouts) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Quest_Desc_Meta_Timeouts) ProtoMessage() {} |
| |
| func (x *Quest_Desc_Meta_Timeouts) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[14] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Quest_Desc_Meta_Timeouts.ProtoReflect.Descriptor instead. |
| func (*Quest_Desc_Meta_Timeouts) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{1, 1, 0, 1} |
| } |
| |
| func (x *Quest_Desc_Meta_Timeouts) GetStart() *durationpb.Duration { |
| if x != nil { |
| return x.Start |
| } |
| return nil |
| } |
| |
| func (x *Quest_Desc_Meta_Timeouts) GetRun() *durationpb.Duration { |
| if x != nil { |
| return x.Run |
| } |
| return nil |
| } |
| |
| func (x *Quest_Desc_Meta_Timeouts) GetStop() *durationpb.Duration { |
| if x != nil { |
| return x.Stop |
| } |
| return nil |
| } |
| |
| type Attempt_ID struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Quest string `protobuf:"bytes,1,opt,name=quest,proto3" json:"quest,omitempty"` |
| Id uint32 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"` |
| } |
| |
| func (x *Attempt_ID) Reset() { |
| *x = Attempt_ID{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[15] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_ID) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_ID) ProtoMessage() {} |
| |
| func (x *Attempt_ID) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[15] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_ID.ProtoReflect.Descriptor instead. |
| func (*Attempt_ID) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 0} |
| } |
| |
| func (x *Attempt_ID) GetQuest() string { |
| if x != nil { |
| return x.Quest |
| } |
| return "" |
| } |
| |
| func (x *Attempt_ID) GetId() uint32 { |
| if x != nil { |
| return x.Id |
| } |
| return 0 |
| } |
| |
| type Attempt_Data struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Created *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"` |
| Modified *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=modified,proto3" json:"modified,omitempty"` |
| NumExecutions uint32 `protobuf:"varint,3,opt,name=num_executions,json=numExecutions,proto3" json:"num_executions,omitempty"` |
| // Types that are assignable to AttemptType: |
| // *Attempt_Data_Scheduling_ |
| // *Attempt_Data_Executing_ |
| // *Attempt_Data_Waiting_ |
| // *Attempt_Data_Finished_ |
| // *Attempt_Data_AbnormalFinish |
| AttemptType isAttempt_Data_AttemptType `protobuf_oneof:"attempt_type"` |
| } |
| |
| func (x *Attempt_Data) Reset() { |
| *x = Attempt_Data{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[16] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_Data) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_Data) ProtoMessage() {} |
| |
| func (x *Attempt_Data) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[16] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_Data.ProtoReflect.Descriptor instead. |
| func (*Attempt_Data) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 1} |
| } |
| |
| func (x *Attempt_Data) GetCreated() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Created |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetModified() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Modified |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetNumExecutions() uint32 { |
| if x != nil { |
| return x.NumExecutions |
| } |
| return 0 |
| } |
| |
| func (m *Attempt_Data) GetAttemptType() isAttempt_Data_AttemptType { |
| if m != nil { |
| return m.AttemptType |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetScheduling() *Attempt_Data_Scheduling { |
| if x, ok := x.GetAttemptType().(*Attempt_Data_Scheduling_); ok { |
| return x.Scheduling |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetExecuting() *Attempt_Data_Executing { |
| if x, ok := x.GetAttemptType().(*Attempt_Data_Executing_); ok { |
| return x.Executing |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetWaiting() *Attempt_Data_Waiting { |
| if x, ok := x.GetAttemptType().(*Attempt_Data_Waiting_); ok { |
| return x.Waiting |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetFinished() *Attempt_Data_Finished { |
| if x, ok := x.GetAttemptType().(*Attempt_Data_Finished_); ok { |
| return x.Finished |
| } |
| return nil |
| } |
| |
| func (x *Attempt_Data) GetAbnormalFinish() *AbnormalFinish { |
| if x, ok := x.GetAttemptType().(*Attempt_Data_AbnormalFinish); ok { |
| return x.AbnormalFinish |
| } |
| return nil |
| } |
| |
| type isAttempt_Data_AttemptType interface { |
| isAttempt_Data_AttemptType() |
| } |
| |
| type Attempt_Data_Scheduling_ struct { |
| Scheduling *Attempt_Data_Scheduling `protobuf:"bytes,5,opt,name=scheduling,proto3,oneof"` |
| } |
| |
| type Attempt_Data_Executing_ struct { |
| Executing *Attempt_Data_Executing `protobuf:"bytes,6,opt,name=executing,proto3,oneof"` |
| } |
| |
| type Attempt_Data_Waiting_ struct { |
| Waiting *Attempt_Data_Waiting `protobuf:"bytes,7,opt,name=waiting,proto3,oneof"` |
| } |
| |
| type Attempt_Data_Finished_ struct { |
| Finished *Attempt_Data_Finished `protobuf:"bytes,8,opt,name=finished,proto3,oneof"` |
| } |
| |
| type Attempt_Data_AbnormalFinish struct { |
| AbnormalFinish *AbnormalFinish `protobuf:"bytes,9,opt,name=abnormal_finish,json=abnormalFinish,proto3,oneof"` |
| } |
| |
| func (*Attempt_Data_Scheduling_) isAttempt_Data_AttemptType() {} |
| |
| func (*Attempt_Data_Executing_) isAttempt_Data_AttemptType() {} |
| |
| func (*Attempt_Data_Waiting_) isAttempt_Data_AttemptType() {} |
| |
| func (*Attempt_Data_Finished_) isAttempt_Data_AttemptType() {} |
| |
| func (*Attempt_Data_AbnormalFinish) isAttempt_Data_AttemptType() {} |
| |
| type Attempt_Partial struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Data is true iff the AttemptData should have been filled, but wasn't |
| Data bool `protobuf:"varint,1,opt,name=data,proto3" json:"data,omitempty"` |
| // Executions is true iff the Executions were requested, but not all of |
| // them could be loaded. |
| Executions bool `protobuf:"varint,2,opt,name=executions,proto3" json:"executions,omitempty"` |
| // FwdDeps is true iff FwdDeps were requested, but not all of them could be |
| // loaded. |
| FwdDeps bool `protobuf:"varint,3,opt,name=fwd_deps,json=fwdDeps,proto3" json:"fwd_deps,omitempty"` |
| // BackDeps is true iff BackDeps were requested, but not all of them could be |
| // loaded. |
| BackDeps bool `protobuf:"varint,4,opt,name=back_deps,json=backDeps,proto3" json:"back_deps,omitempty"` |
| // result is set if AttemptResults were requested, and the attempt_type is |
| // Finished, but for some reason the result but wasn't loaded. |
| Result Attempt_Partial_Result `protobuf:"varint,5,opt,name=result,proto3,enum=dm.Attempt_Partial_Result" json:"result,omitempty"` |
| } |
| |
| func (x *Attempt_Partial) Reset() { |
| *x = Attempt_Partial{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[18] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_Partial) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_Partial) ProtoMessage() {} |
| |
| func (x *Attempt_Partial) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[18] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_Partial.ProtoReflect.Descriptor instead. |
| func (*Attempt_Partial) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 3} |
| } |
| |
| func (x *Attempt_Partial) GetData() bool { |
| if x != nil { |
| return x.Data |
| } |
| return false |
| } |
| |
| func (x *Attempt_Partial) GetExecutions() bool { |
| if x != nil { |
| return x.Executions |
| } |
| return false |
| } |
| |
| func (x *Attempt_Partial) GetFwdDeps() bool { |
| if x != nil { |
| return x.FwdDeps |
| } |
| return false |
| } |
| |
| func (x *Attempt_Partial) GetBackDeps() bool { |
| if x != nil { |
| return x.BackDeps |
| } |
| return false |
| } |
| |
| func (x *Attempt_Partial) GetResult() Attempt_Partial_Result { |
| if x != nil { |
| return x.Result |
| } |
| return Attempt_Partial_LOADED |
| } |
| |
| // This attempt is ready to be Executed, but hasn't been sent to the |
| // distributor yet. |
| type Attempt_Data_Scheduling struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| } |
| |
| func (x *Attempt_Data_Scheduling) Reset() { |
| *x = Attempt_Data_Scheduling{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[19] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_Data_Scheduling) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_Data_Scheduling) ProtoMessage() {} |
| |
| func (x *Attempt_Data_Scheduling) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[19] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_Data_Scheduling.ProtoReflect.Descriptor instead. |
| func (*Attempt_Data_Scheduling) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 1, 0} |
| } |
| |
| // This attempt has a live Execution (with the specified ID). Check the |
| // Execution state for more information. |
| type Attempt_Data_Executing struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| CurExecutionId uint32 `protobuf:"varint,1,opt,name=cur_execution_id,json=curExecutionId,proto3" json:"cur_execution_id,omitempty"` |
| } |
| |
| func (x *Attempt_Data_Executing) Reset() { |
| *x = Attempt_Data_Executing{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[20] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_Data_Executing) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_Data_Executing) ProtoMessage() {} |
| |
| func (x *Attempt_Data_Executing) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[20] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_Data_Executing.ProtoReflect.Descriptor instead. |
| func (*Attempt_Data_Executing) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 1, 1} |
| } |
| |
| func (x *Attempt_Data_Executing) GetCurExecutionId() uint32 { |
| if x != nil { |
| return x.CurExecutionId |
| } |
| return 0 |
| } |
| |
| // This attempt's last Execution stopped by adding dependencies. |
| type Attempt_Data_Waiting struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| NumWaiting uint32 `protobuf:"varint,1,opt,name=num_waiting,json=numWaiting,proto3" json:"num_waiting,omitempty"` |
| } |
| |
| func (x *Attempt_Data_Waiting) Reset() { |
| *x = Attempt_Data_Waiting{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[21] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_Data_Waiting) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_Data_Waiting) ProtoMessage() {} |
| |
| func (x *Attempt_Data_Waiting) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[21] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_Data_Waiting.ProtoReflect.Descriptor instead. |
| func (*Attempt_Data_Waiting) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 1, 2} |
| } |
| |
| func (x *Attempt_Data_Waiting) GetNumWaiting() uint32 { |
| if x != nil { |
| return x.NumWaiting |
| } |
| return 0 |
| } |
| |
| // This attempt is complete. |
| type Attempt_Data_Finished struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // The result of the Attempt. To obtain the distributor specific result |
| // for the last execution, make sure to include at least one Execution in |
| // your query. |
| // |
| // Only if `include.attempt.data == true`, will the response include |
| // data.object. |
| Data *JsonResult `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` |
| } |
| |
| func (x *Attempt_Data_Finished) Reset() { |
| *x = Attempt_Data_Finished{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[22] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Attempt_Data_Finished) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Attempt_Data_Finished) ProtoMessage() {} |
| |
| func (x *Attempt_Data_Finished) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[22] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Attempt_Data_Finished.ProtoReflect.Descriptor instead. |
| func (*Attempt_Data_Finished) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{4, 1, 3} |
| } |
| |
| func (x *Attempt_Data_Finished) GetData() *JsonResult { |
| if x != nil { |
| return x.Data |
| } |
| return nil |
| } |
| |
| // Execution_Auth is a tuple of the requesting ExecutionID and the activated |
| // Execution Token (see the ActivateExecution rpc). |
| type Execution_Auth struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Id *Execution_ID `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` |
| Token []byte `protobuf:"bytes,2,opt,name=token,proto3" json:"token,omitempty"` |
| } |
| |
| func (x *Execution_Auth) Reset() { |
| *x = Execution_Auth{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[23] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Auth) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Auth) ProtoMessage() {} |
| |
| func (x *Execution_Auth) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[23] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Auth.ProtoReflect.Descriptor instead. |
| func (*Execution_Auth) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 0} |
| } |
| |
| func (x *Execution_Auth) GetId() *Execution_ID { |
| if x != nil { |
| return x.Id |
| } |
| return nil |
| } |
| |
| func (x *Execution_Auth) GetToken() []byte { |
| if x != nil { |
| return x.Token |
| } |
| return nil |
| } |
| |
| type Execution_ID struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Quest string `protobuf:"bytes,1,opt,name=quest,proto3" json:"quest,omitempty"` |
| Attempt uint32 `protobuf:"varint,2,opt,name=attempt,proto3" json:"attempt,omitempty"` |
| Id uint32 `protobuf:"varint,3,opt,name=id,proto3" json:"id,omitempty"` |
| } |
| |
| func (x *Execution_ID) Reset() { |
| *x = Execution_ID{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[24] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_ID) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_ID) ProtoMessage() {} |
| |
| func (x *Execution_ID) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[24] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_ID.ProtoReflect.Descriptor instead. |
| func (*Execution_ID) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 1} |
| } |
| |
| func (x *Execution_ID) GetQuest() string { |
| if x != nil { |
| return x.Quest |
| } |
| return "" |
| } |
| |
| func (x *Execution_ID) GetAttempt() uint32 { |
| if x != nil { |
| return x.Attempt |
| } |
| return 0 |
| } |
| |
| func (x *Execution_ID) GetId() uint32 { |
| if x != nil { |
| return x.Id |
| } |
| return 0 |
| } |
| |
| type Execution_Data struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Created *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"` |
| Modified *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=modified,proto3" json:"modified,omitempty"` |
| DistributorInfo *Execution_Data_DistributorInfo `protobuf:"bytes,3,opt,name=distributor_info,json=distributorInfo,proto3" json:"distributor_info,omitempty"` |
| // Types that are assignable to ExecutionType: |
| // *Execution_Data_Scheduling_ |
| // *Execution_Data_Running_ |
| // *Execution_Data_Stopping_ |
| // *Execution_Data_Finished_ |
| // *Execution_Data_AbnormalFinish |
| ExecutionType isExecution_Data_ExecutionType `protobuf_oneof:"execution_type"` |
| } |
| |
| func (x *Execution_Data) Reset() { |
| *x = Execution_Data{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[25] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Data) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Data) ProtoMessage() {} |
| |
| func (x *Execution_Data) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[25] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Data.ProtoReflect.Descriptor instead. |
| func (*Execution_Data) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 2} |
| } |
| |
| func (x *Execution_Data) GetCreated() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Created |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetModified() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Modified |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetDistributorInfo() *Execution_Data_DistributorInfo { |
| if x != nil { |
| return x.DistributorInfo |
| } |
| return nil |
| } |
| |
| func (m *Execution_Data) GetExecutionType() isExecution_Data_ExecutionType { |
| if m != nil { |
| return m.ExecutionType |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetScheduling() *Execution_Data_Scheduling { |
| if x, ok := x.GetExecutionType().(*Execution_Data_Scheduling_); ok { |
| return x.Scheduling |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetRunning() *Execution_Data_Running { |
| if x, ok := x.GetExecutionType().(*Execution_Data_Running_); ok { |
| return x.Running |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetStopping() *Execution_Data_Stopping { |
| if x, ok := x.GetExecutionType().(*Execution_Data_Stopping_); ok { |
| return x.Stopping |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetFinished() *Execution_Data_Finished { |
| if x, ok := x.GetExecutionType().(*Execution_Data_Finished_); ok { |
| return x.Finished |
| } |
| return nil |
| } |
| |
| func (x *Execution_Data) GetAbnormalFinish() *AbnormalFinish { |
| if x, ok := x.GetExecutionType().(*Execution_Data_AbnormalFinish); ok { |
| return x.AbnormalFinish |
| } |
| return nil |
| } |
| |
| type isExecution_Data_ExecutionType interface { |
| isExecution_Data_ExecutionType() |
| } |
| |
| type Execution_Data_Scheduling_ struct { |
| Scheduling *Execution_Data_Scheduling `protobuf:"bytes,4,opt,name=scheduling,proto3,oneof"` |
| } |
| |
| type Execution_Data_Running_ struct { |
| Running *Execution_Data_Running `protobuf:"bytes,5,opt,name=running,proto3,oneof"` |
| } |
| |
| type Execution_Data_Stopping_ struct { |
| Stopping *Execution_Data_Stopping `protobuf:"bytes,6,opt,name=stopping,proto3,oneof"` |
| } |
| |
| type Execution_Data_Finished_ struct { |
| Finished *Execution_Data_Finished `protobuf:"bytes,7,opt,name=finished,proto3,oneof"` |
| } |
| |
| type Execution_Data_AbnormalFinish struct { |
| AbnormalFinish *AbnormalFinish `protobuf:"bytes,8,opt,name=abnormal_finish,json=abnormalFinish,proto3,oneof"` |
| } |
| |
| func (*Execution_Data_Scheduling_) isExecution_Data_ExecutionType() {} |
| |
| func (*Execution_Data_Running_) isExecution_Data_ExecutionType() {} |
| |
| func (*Execution_Data_Stopping_) isExecution_Data_ExecutionType() {} |
| |
| func (*Execution_Data_Finished_) isExecution_Data_ExecutionType() {} |
| |
| func (*Execution_Data_AbnormalFinish) isExecution_Data_ExecutionType() {} |
| |
| type Execution_Data_DistributorInfo struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| ConfigName string `protobuf:"bytes,1,opt,name=config_name,json=configName,proto3" json:"config_name,omitempty"` |
| ConfigVersion string `protobuf:"bytes,2,opt,name=config_version,json=configVersion,proto3" json:"config_version,omitempty"` |
| Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` |
| Url string `protobuf:"bytes,4,opt,name=url,proto3" json:"url,omitempty"` |
| } |
| |
| func (x *Execution_Data_DistributorInfo) Reset() { |
| *x = Execution_Data_DistributorInfo{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[26] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Data_DistributorInfo) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Data_DistributorInfo) ProtoMessage() {} |
| |
| func (x *Execution_Data_DistributorInfo) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[26] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Data_DistributorInfo.ProtoReflect.Descriptor instead. |
| func (*Execution_Data_DistributorInfo) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 2, 0} |
| } |
| |
| func (x *Execution_Data_DistributorInfo) GetConfigName() string { |
| if x != nil { |
| return x.ConfigName |
| } |
| return "" |
| } |
| |
| func (x *Execution_Data_DistributorInfo) GetConfigVersion() string { |
| if x != nil { |
| return x.ConfigVersion |
| } |
| return "" |
| } |
| |
| func (x *Execution_Data_DistributorInfo) GetToken() string { |
| if x != nil { |
| return x.Token |
| } |
| return "" |
| } |
| |
| func (x *Execution_Data_DistributorInfo) GetUrl() string { |
| if x != nil { |
| return x.Url |
| } |
| return "" |
| } |
| |
| type Execution_Data_Scheduling struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| } |
| |
| func (x *Execution_Data_Scheduling) Reset() { |
| *x = Execution_Data_Scheduling{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[27] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Data_Scheduling) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Data_Scheduling) ProtoMessage() {} |
| |
| func (x *Execution_Data_Scheduling) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[27] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Data_Scheduling.ProtoReflect.Descriptor instead. |
| func (*Execution_Data_Scheduling) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 2, 1} |
| } |
| |
| type Execution_Data_Running struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| } |
| |
| func (x *Execution_Data_Running) Reset() { |
| *x = Execution_Data_Running{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[28] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Data_Running) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Data_Running) ProtoMessage() {} |
| |
| func (x *Execution_Data_Running) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[28] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Data_Running.ProtoReflect.Descriptor instead. |
| func (*Execution_Data_Running) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 2, 2} |
| } |
| |
| type Execution_Data_Stopping struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| } |
| |
| func (x *Execution_Data_Stopping) Reset() { |
| *x = Execution_Data_Stopping{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[29] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Data_Stopping) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Data_Stopping) ProtoMessage() {} |
| |
| func (x *Execution_Data_Stopping) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[29] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Data_Stopping.ProtoReflect.Descriptor instead. |
| func (*Execution_Data_Stopping) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 2, 3} |
| } |
| |
| type Execution_Data_Finished struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Data *JsonResult `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` |
| } |
| |
| func (x *Execution_Data_Finished) Reset() { |
| *x = Execution_Data_Finished{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[30] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Execution_Data_Finished) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Execution_Data_Finished) ProtoMessage() {} |
| |
| func (x *Execution_Data_Finished) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[30] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Execution_Data_Finished.ProtoReflect.Descriptor instead. |
| func (*Execution_Data_Finished) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP(), []int{5, 2, 4} |
| } |
| |
| func (x *Execution_Data_Finished) GetData() *JsonResult { |
| if x != nil { |
| return x.Data |
| } |
| return nil |
| } |
| |
| var File_go_chromium_org_luci_dm_api_service_v1_graph_data_proto protoreflect.FileDescriptor |
| |
| var file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDesc = []byte{ |
| 0x0a, 0x37, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, |
| 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, |
| 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, |
| 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x64, 0x6d, 0x1a, 0x1e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, |
| 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, |
| 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, |
| 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, |
| 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, |
| 0x69, 0x63, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x22, 0xe8, 0x01, 0x0a, 0x0e, 0x41, 0x62, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x46, |
| 0x69, 0x6e, 0x69, 0x73, 0x68, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, |
| 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x62, 0x6e, 0x6f, 0x72, |
| 0x6d, 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, |
| 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, |
| 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, |
| 0x22, 0x8a, 0x01, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x49, |
| 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, |
| 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x41, 0x53, 0x48, 0x45, 0x44, 0x10, |
| 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0d, |
| 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45, 0x44, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x04, 0x12, 0x0d, 0x0a, |
| 0x09, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, |
| 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x49, |
| 0x53, 0x53, 0x49, 0x4e, 0x47, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x53, 0x55, 0x4c, |
| 0x54, 0x5f, 0x4d, 0x41, 0x4c, 0x46, 0x4f, 0x52, 0x4d, 0x45, 0x44, 0x10, 0x08, 0x22, 0xea, 0x08, |
| 0x0a, 0x05, 0x51, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x49, |
| 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x44, 0x4e, 0x45, 0x18, 0x02, 0x20, 0x01, |
| 0x28, 0x08, 0x52, 0x03, 0x44, 0x4e, 0x45, 0x12, 0x22, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, |
| 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, |
| 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x33, 0x0a, 0x08, 0x61, |
| 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, |
| 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, |
| 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, |
| 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, |
| 0x08, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x14, 0x0a, 0x02, 0x49, 0x44, |
| 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, |
| 0x1a, 0xdd, 0x04, 0x0a, 0x04, 0x44, 0x65, 0x73, 0x63, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x69, 0x73, |
| 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, |
| 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, 0x69, 0x73, 0x74, |
| 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x61, 0x6d, |
| 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, |
| 0x73, 0x12, 0x35, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, |
| 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, |
| 0x09, 0x52, 0x15, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x50, 0x61, |
| 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x27, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, |
| 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, 0x73, |
| 0x74, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 0x6d, 0x65, 0x74, |
| 0x61, 0x1a, 0x9c, 0x03, 0x0a, 0x04, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x73, |
| 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, |
| 0x61, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x05, 0x72, 0x65, 0x74, |
| 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, |
| 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, |
| 0x74, 0x72, 0x79, 0x52, 0x05, 0x72, 0x65, 0x74, 0x72, 0x79, 0x12, 0x38, 0x0a, 0x08, 0x74, 0x69, |
| 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, |
| 0x6d, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x2e, 0x4d, 0x65, 0x74, |
| 0x61, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x73, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, |
| 0x6f, 0x75, 0x74, 0x73, 0x1a, 0x70, 0x0a, 0x05, 0x52, 0x65, 0x74, 0x72, 0x79, 0x12, 0x16, 0x0a, |
| 0x06, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x66, |
| 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x61, 0x73, 0x68, 0x65, 0x64, |
| 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x72, 0x61, 0x73, 0x68, 0x65, 0x64, 0x12, |
| 0x18, 0x0a, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, |
| 0x52, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, |
| 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x69, |
| 0x6d, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x1a, 0x97, 0x01, 0x0a, 0x08, 0x54, 0x69, 0x6d, 0x65, 0x6f, |
| 0x75, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x73, |
| 0x74, 0x61, 0x72, 0x74, 0x12, 0x2b, 0x0a, 0x03, 0x72, 0x75, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, |
| 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, 0x72, 0x75, |
| 0x6e, 0x12, 0x2d, 0x0a, 0x04, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, |
| 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, |
| 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x73, 0x74, 0x6f, 0x70, |
| 0x1a, 0x68, 0x0a, 0x0c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, |
| 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, |
| 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, |
| 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, |
| 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, |
| 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, |
| 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x93, 0x01, 0x0a, 0x04, 0x44, |
| 0x61, 0x74, 0x61, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, |
| 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, |
| 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, |
| 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x64, 0x65, 0x73, |
| 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, |
| 0x73, 0x74, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x52, 0x04, 0x64, 0x65, 0x73, 0x63, 0x12, 0x31, 0x0a, |
| 0x08, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, |
| 0x16, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, |
| 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x42, 0x79, |
| 0x1a, 0x48, 0x0a, 0x0d, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, |
| 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, |
| 0x6b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x52, |
| 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x74, 0x0a, 0x0a, 0x4a, 0x73, |
| 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, |
| 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, |
| 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, |
| 0x73, 0x69, 0x7a, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, |
| 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, |
| 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
| 0x22, 0x69, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x22, 0x0a, 0x04, 0x64, 0x61, |
| 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6d, 0x2e, 0x4a, 0x73, |
| 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3b, |
| 0x0a, 0x0f, 0x61, 0x62, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, |
| 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x62, 0x6e, |
| 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x0e, 0x61, 0x62, 0x6e, |
| 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x22, 0xee, 0x0a, 0x0a, 0x07, |
| 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x12, 0x1e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, |
| 0x2e, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x44, 0x4e, 0x45, 0x18, 0x02, |
| 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x44, 0x4e, 0x45, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, |
| 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, |
| 0x65, 0x6d, 0x70, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, |
| 0x3b, 0x0a, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, |
| 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, |
| 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, |
| 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x08, |
| 0x66, 0x77, 0x64, 0x5f, 0x64, 0x65, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, |
| 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, |
| 0x07, 0x66, 0x77, 0x64, 0x44, 0x65, 0x70, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, |
| 0x5f, 0x64, 0x65, 0x70, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x64, 0x6d, |
| 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x08, 0x62, 0x61, |
| 0x63, 0x6b, 0x44, 0x65, 0x70, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, |
| 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, |
| 0x65, 0x6d, 0x70, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x07, 0x70, 0x61, |
| 0x72, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x2a, 0x0a, 0x02, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x71, |
| 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x73, |
| 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, |
| 0x64, 0x1a, 0xf5, 0x04, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x72, |
| 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, |
| 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, |
| 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, |
| 0x12, 0x36, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, |
| 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x75, 0x6d, 0x5f, |
| 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, |
| 0x52, 0x0d, 0x6e, 0x75, 0x6d, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, |
| 0x3d, 0x0a, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, |
| 0x2e, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, |
| 0x48, 0x00, 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x3a, |
| 0x0a, 0x09, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, |
| 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x2e, 0x44, |
| 0x61, 0x74, 0x61, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, |
| 0x09, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x34, 0x0a, 0x07, 0x77, 0x61, |
| 0x69, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6d, |
| 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x57, 0x61, |
| 0x69, 0x74, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, |
| 0x12, 0x37, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x2e, |
| 0x44, 0x61, 0x74, 0x61, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x48, 0x00, 0x52, |
| 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0f, 0x61, 0x62, 0x6e, |
| 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x18, 0x09, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x62, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, |
| 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x62, 0x6e, 0x6f, 0x72, 0x6d, |
| 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x1a, 0x0c, 0x0a, 0x0a, 0x53, 0x63, 0x68, 0x65, |
| 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x1a, 0x35, 0x0a, 0x09, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, |
| 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, |
| 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, |
| 0x75, 0x72, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x2a, 0x0a, |
| 0x07, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, |
| 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, |
| 0x75, 0x6d, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x1a, 0x2e, 0x0a, 0x08, 0x46, 0x69, 0x6e, |
| 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6d, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x73, |
| 0x75, 0x6c, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x0e, 0x0a, 0x0c, 0x61, 0x74, 0x74, |
| 0x65, 0x6d, 0x70, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x1a, 0x4c, 0x0a, 0x0f, 0x45, 0x78, 0x65, |
| 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, |
| 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23, |
| 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, |
| 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x76, 0x61, |
| 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xf8, 0x01, 0x0a, 0x07, 0x50, 0x61, 0x72, 0x74, |
| 0x69, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, |
| 0x08, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, |
| 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x78, 0x65, |
| 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x77, 0x64, 0x5f, 0x64, |
| 0x65, 0x70, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x66, 0x77, 0x64, 0x44, 0x65, |
| 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x64, 0x65, 0x70, 0x73, 0x18, |
| 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x44, 0x65, 0x70, 0x73, 0x12, |
| 0x32, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, |
| 0x1a, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x2e, 0x50, 0x61, 0x72, |
| 0x74, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, |
| 0x75, 0x6c, 0x74, 0x22, 0x4d, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0a, 0x0a, |
| 0x06, 0x4c, 0x4f, 0x41, 0x44, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x54, |
| 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x45, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x4f, 0x54, |
| 0x5f, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x02, 0x12, 0x13, 0x0a, |
| 0x0f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, |
| 0x10, 0x03, 0x22, 0x58, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x53, |
| 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x45, |
| 0x58, 0x45, 0x43, 0x55, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, |
| 0x49, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x49, 0x4e, 0x49, 0x53, |
| 0x48, 0x45, 0x44, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x42, 0x4e, 0x4f, 0x52, 0x4d, 0x41, |
| 0x4c, 0x5f, 0x46, 0x49, 0x4e, 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x04, 0x22, 0xad, 0x08, 0x0a, |
| 0x09, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x02, 0x69, 0x64, |
| 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, |
| 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x04, |
| 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6d, 0x2e, |
| 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, |
| 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x18, |
| 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x3e, |
| 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x20, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, |
| 0x6e, 0x2e, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, |
| 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x44, |
| 0x0a, 0x02, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x74, |
| 0x74, 0x65, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x74, 0x74, |
| 0x65, 0x6d, 0x70, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, |
| 0x52, 0x02, 0x69, 0x64, 0x1a, 0xdc, 0x05, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x34, 0x0a, |
| 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, |
| 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, |
| 0x74, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, |
| 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, |
| 0x70, 0x52, 0x08, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x4d, 0x0a, 0x10, 0x64, |
| 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, |
| 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, |
| 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, |
| 0x62, 0x75, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x64, 0x69, 0x73, 0x74, 0x72, |
| 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3f, 0x0a, 0x0a, 0x73, 0x63, |
| 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, |
| 0x2e, 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x61, |
| 0x74, 0x61, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, |
| 0x0a, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x36, 0x0a, 0x07, 0x72, |
| 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, |
| 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, |
| 0x2e, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x6e, |
| 0x69, 0x6e, 0x67, 0x12, 0x39, 0x0a, 0x08, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, |
| 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, |
| 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x69, |
| 0x6e, 0x67, 0x48, 0x00, 0x52, 0x08, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x39, |
| 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x1b, 0x2e, 0x64, 0x6d, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, |
| 0x44, 0x61, 0x74, 0x61, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x48, 0x00, 0x52, |
| 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0f, 0x61, 0x62, 0x6e, |
| 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6d, 0x2e, 0x41, 0x62, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, |
| 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x62, 0x6e, 0x6f, 0x72, 0x6d, |
| 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x1a, 0x81, 0x01, 0x0a, 0x0f, 0x44, 0x69, 0x73, |
| 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, |
| 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, |
| 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, |
| 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x65, 0x72, |
| 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, |
| 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x1a, 0x0c, 0x0a, 0x0a, |
| 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x75, |
| 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x1a, 0x0a, 0x0a, 0x08, 0x53, 0x74, 0x6f, 0x70, 0x70, 0x69, 0x6e, |
| 0x67, 0x1a, 0x2e, 0x0a, 0x08, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x22, 0x0a, |
| 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6d, |
| 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, |
| 0x61, 0x42, 0x10, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, |
| 0x79, 0x70, 0x65, 0x22, 0x57, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x0a, |
| 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, |
| 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x54, 0x4f, |
| 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x49, 0x4e, 0x49, 0x53, |
| 0x48, 0x45, 0x44, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x42, 0x4e, 0x4f, 0x52, 0x4d, 0x41, |
| 0x4c, 0x5f, 0x46, 0x49, 0x4e, 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x04, 0x22, 0xbe, 0x01, 0x0a, |
| 0x09, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x06, 0x71, 0x75, |
| 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6d, 0x2e, |
| 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x73, |
| 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x1d, 0x0a, |
| 0x0a, 0x68, 0x61, 0x64, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, |
| 0x08, 0x52, 0x09, 0x68, 0x61, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, |
| 0x68, 0x61, 0x64, 0x5f, 0x6d, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, |
| 0x68, 0x61, 0x64, 0x4d, 0x6f, 0x72, 0x65, 0x1a, 0x44, 0x0a, 0x0b, 0x51, 0x75, 0x65, 0x73, 0x74, |
| 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, |
| 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x64, 0x6d, 0x2e, 0x51, 0x75, 0x65, |
| 0x73, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x2b, 0x5a, |
| 0x29, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, |
| 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, |
| 0x76, 0x69, 0x63, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x64, 0x6d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x33, |
| } |
| |
| var ( |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescOnce sync.Once |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescData = file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDesc |
| ) |
| |
| func file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescGZIP() []byte { |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescOnce.Do(func() { |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescData) |
| }) |
| return file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDescData |
| } |
| |
| var file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes = make([]protoimpl.EnumInfo, 4) |
| var file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes = make([]protoimpl.MessageInfo, 32) |
| var file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_goTypes = []interface{}{ |
| (AbnormalFinish_Status)(0), // 0: dm.AbnormalFinish.Status |
| (Attempt_State)(0), // 1: dm.Attempt.State |
| (Attempt_Partial_Result)(0), // 2: dm.Attempt.Partial.Result |
| (Execution_State)(0), // 3: dm.Execution.State |
| (*AbnormalFinish)(nil), // 4: dm.AbnormalFinish |
| (*Quest)(nil), // 5: dm.Quest |
| (*JsonResult)(nil), // 6: dm.JsonResult |
| (*Result)(nil), // 7: dm.Result |
| (*Attempt)(nil), // 8: dm.Attempt |
| (*Execution)(nil), // 9: dm.Execution |
| (*GraphData)(nil), // 10: dm.GraphData |
| (*Quest_ID)(nil), // 11: dm.Quest.ID |
| (*Quest_Desc)(nil), // 12: dm.Quest.Desc |
| (*Quest_TemplateSpec)(nil), // 13: dm.Quest.TemplateSpec |
| (*Quest_Data)(nil), // 14: dm.Quest.Data |
| nil, // 15: dm.Quest.AttemptsEntry |
| (*Quest_Desc_Meta)(nil), // 16: dm.Quest.Desc.Meta |
| (*Quest_Desc_Meta_Retry)(nil), // 17: dm.Quest.Desc.Meta.Retry |
| (*Quest_Desc_Meta_Timeouts)(nil), // 18: dm.Quest.Desc.Meta.Timeouts |
| (*Attempt_ID)(nil), // 19: dm.Attempt.ID |
| (*Attempt_Data)(nil), // 20: dm.Attempt.Data |
| nil, // 21: dm.Attempt.ExecutionsEntry |
| (*Attempt_Partial)(nil), // 22: dm.Attempt.Partial |
| (*Attempt_Data_Scheduling)(nil), // 23: dm.Attempt.Data.Scheduling |
| (*Attempt_Data_Executing)(nil), // 24: dm.Attempt.Data.Executing |
| (*Attempt_Data_Waiting)(nil), // 25: dm.Attempt.Data.Waiting |
| (*Attempt_Data_Finished)(nil), // 26: dm.Attempt.Data.Finished |
| (*Execution_Auth)(nil), // 27: dm.Execution.Auth |
| (*Execution_ID)(nil), // 28: dm.Execution.ID |
| (*Execution_Data)(nil), // 29: dm.Execution.Data |
| (*Execution_Data_DistributorInfo)(nil), // 30: dm.Execution.Data.DistributorInfo |
| (*Execution_Data_Scheduling)(nil), // 31: dm.Execution.Data.Scheduling |
| (*Execution_Data_Running)(nil), // 32: dm.Execution.Data.Running |
| (*Execution_Data_Stopping)(nil), // 33: dm.Execution.Data.Stopping |
| (*Execution_Data_Finished)(nil), // 34: dm.Execution.Data.Finished |
| nil, // 35: dm.GraphData.QuestsEntry |
| (*timestamppb.Timestamp)(nil), // 36: google.protobuf.Timestamp |
| (*AttemptList)(nil), // 37: dm.AttemptList |
| (*durationpb.Duration)(nil), // 38: google.protobuf.Duration |
| } |
| var file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_depIdxs = []int32{ |
| 0, // 0: dm.AbnormalFinish.status:type_name -> dm.AbnormalFinish.Status |
| 11, // 1: dm.Quest.id:type_name -> dm.Quest.ID |
| 14, // 2: dm.Quest.data:type_name -> dm.Quest.Data |
| 15, // 3: dm.Quest.attempts:type_name -> dm.Quest.AttemptsEntry |
| 36, // 4: dm.JsonResult.expiration:type_name -> google.protobuf.Timestamp |
| 6, // 5: dm.Result.data:type_name -> dm.JsonResult |
| 4, // 6: dm.Result.abnormal_finish:type_name -> dm.AbnormalFinish |
| 19, // 7: dm.Attempt.id:type_name -> dm.Attempt.ID |
| 20, // 8: dm.Attempt.data:type_name -> dm.Attempt.Data |
| 21, // 9: dm.Attempt.executions:type_name -> dm.Attempt.ExecutionsEntry |
| 37, // 10: dm.Attempt.fwd_deps:type_name -> dm.AttemptList |
| 37, // 11: dm.Attempt.back_deps:type_name -> dm.AttemptList |
| 22, // 12: dm.Attempt.partial:type_name -> dm.Attempt.Partial |
| 28, // 13: dm.Execution.id:type_name -> dm.Execution.ID |
| 29, // 14: dm.Execution.data:type_name -> dm.Execution.Data |
| 35, // 15: dm.GraphData.quests:type_name -> dm.GraphData.QuestsEntry |
| 16, // 16: dm.Quest.Desc.meta:type_name -> dm.Quest.Desc.Meta |
| 36, // 17: dm.Quest.Data.created:type_name -> google.protobuf.Timestamp |
| 12, // 18: dm.Quest.Data.desc:type_name -> dm.Quest.Desc |
| 13, // 19: dm.Quest.Data.built_by:type_name -> dm.Quest.TemplateSpec |
| 8, // 20: dm.Quest.AttemptsEntry.value:type_name -> dm.Attempt |
| 17, // 21: dm.Quest.Desc.Meta.retry:type_name -> dm.Quest.Desc.Meta.Retry |
| 18, // 22: dm.Quest.Desc.Meta.timeouts:type_name -> dm.Quest.Desc.Meta.Timeouts |
| 38, // 23: dm.Quest.Desc.Meta.Timeouts.start:type_name -> google.protobuf.Duration |
| 38, // 24: dm.Quest.Desc.Meta.Timeouts.run:type_name -> google.protobuf.Duration |
| 38, // 25: dm.Quest.Desc.Meta.Timeouts.stop:type_name -> google.protobuf.Duration |
| 36, // 26: dm.Attempt.Data.created:type_name -> google.protobuf.Timestamp |
| 36, // 27: dm.Attempt.Data.modified:type_name -> google.protobuf.Timestamp |
| 23, // 28: dm.Attempt.Data.scheduling:type_name -> dm.Attempt.Data.Scheduling |
| 24, // 29: dm.Attempt.Data.executing:type_name -> dm.Attempt.Data.Executing |
| 25, // 30: dm.Attempt.Data.waiting:type_name -> dm.Attempt.Data.Waiting |
| 26, // 31: dm.Attempt.Data.finished:type_name -> dm.Attempt.Data.Finished |
| 4, // 32: dm.Attempt.Data.abnormal_finish:type_name -> dm.AbnormalFinish |
| 9, // 33: dm.Attempt.ExecutionsEntry.value:type_name -> dm.Execution |
| 2, // 34: dm.Attempt.Partial.result:type_name -> dm.Attempt.Partial.Result |
| 6, // 35: dm.Attempt.Data.Finished.data:type_name -> dm.JsonResult |
| 28, // 36: dm.Execution.Auth.id:type_name -> dm.Execution.ID |
| 36, // 37: dm.Execution.Data.created:type_name -> google.protobuf.Timestamp |
| 36, // 38: dm.Execution.Data.modified:type_name -> google.protobuf.Timestamp |
| 30, // 39: dm.Execution.Data.distributor_info:type_name -> dm.Execution.Data.DistributorInfo |
| 31, // 40: dm.Execution.Data.scheduling:type_name -> dm.Execution.Data.Scheduling |
| 32, // 41: dm.Execution.Data.running:type_name -> dm.Execution.Data.Running |
| 33, // 42: dm.Execution.Data.stopping:type_name -> dm.Execution.Data.Stopping |
| 34, // 43: dm.Execution.Data.finished:type_name -> dm.Execution.Data.Finished |
| 4, // 44: dm.Execution.Data.abnormal_finish:type_name -> dm.AbnormalFinish |
| 6, // 45: dm.Execution.Data.Finished.data:type_name -> dm.JsonResult |
| 5, // 46: dm.GraphData.QuestsEntry.value:type_name -> dm.Quest |
| 47, // [47:47] is the sub-list for method output_type |
| 47, // [47:47] is the sub-list for method input_type |
| 47, // [47:47] is the sub-list for extension type_name |
| 47, // [47:47] is the sub-list for extension extendee |
| 0, // [0:47] is the sub-list for field type_name |
| } |
| |
| func init() { file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_init() } |
| func file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_init() { |
| if File_go_chromium_org_luci_dm_api_service_v1_graph_data_proto != nil { |
| return |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_types_proto_init() |
| if !protoimpl.UnsafeEnabled { |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*AbnormalFinish); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*JsonResult); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Result); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*GraphData); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_ID); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_Desc); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_TemplateSpec); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_Data); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_Desc_Meta); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_Desc_Meta_Retry); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Quest_Desc_Meta_Timeouts); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_ID); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_Data); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_Partial); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_Data_Scheduling); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_Data_Executing); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_Data_Waiting); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Attempt_Data_Finished); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Auth); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_ID); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Data); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Data_DistributorInfo); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Data_Scheduling); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Data_Running); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Data_Stopping); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Execution_Data_Finished); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[16].OneofWrappers = []interface{}{ |
| (*Attempt_Data_Scheduling_)(nil), |
| (*Attempt_Data_Executing_)(nil), |
| (*Attempt_Data_Waiting_)(nil), |
| (*Attempt_Data_Finished_)(nil), |
| (*Attempt_Data_AbnormalFinish)(nil), |
| } |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes[25].OneofWrappers = []interface{}{ |
| (*Execution_Data_Scheduling_)(nil), |
| (*Execution_Data_Running_)(nil), |
| (*Execution_Data_Stopping_)(nil), |
| (*Execution_Data_Finished_)(nil), |
| (*Execution_Data_AbnormalFinish)(nil), |
| } |
| type x struct{} |
| out := protoimpl.TypeBuilder{ |
| File: protoimpl.DescBuilder{ |
| GoPackagePath: reflect.TypeOf(x{}).PkgPath(), |
| RawDescriptor: file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDesc, |
| NumEnums: 4, |
| NumMessages: 32, |
| NumExtensions: 0, |
| NumServices: 0, |
| }, |
| GoTypes: file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_goTypes, |
| DependencyIndexes: file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_depIdxs, |
| EnumInfos: file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_enumTypes, |
| MessageInfos: file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_msgTypes, |
| }.Build() |
| File_go_chromium_org_luci_dm_api_service_v1_graph_data_proto = out.File |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_rawDesc = nil |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_goTypes = nil |
| file_go_chromium_org_luci_dm_api_service_v1_graph_data_proto_depIdxs = nil |
| } |