// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.31.0 // protoc v4.25.1 // source: worker_repo.proto package proto import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" 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 GetNextContainerRequestRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` } func (x *GetNextContainerRequestRequest) Reset() { *x = GetNextContainerRequestRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetNextContainerRequestRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetNextContainerRequestRequest) ProtoMessage() {} func (x *GetNextContainerRequestRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 GetNextContainerRequestRequest.ProtoReflect.Descriptor instead. func (*GetNextContainerRequestRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{0} } func (x *GetNextContainerRequestRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } type GetNextContainerRequestResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ContainerRequest *ContainerRequest `protobuf:"bytes,2,opt,name=container_request,json=containerRequest,proto3" json:"container_request,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` DeliveryToken string `protobuf:"bytes,4,opt,name=delivery_token,json=deliveryToken,proto3" json:"delivery_token,omitempty"` CheckpointCompatibilityKey string `protobuf:"bytes,5,opt,name=checkpoint_compatibility_key,json=checkpointCompatibilityKey,proto3" json:"checkpoint_compatibility_key,omitempty"` } func (x *GetNextContainerRequestResponse) Reset() { *x = GetNextContainerRequestResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetNextContainerRequestResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetNextContainerRequestResponse) ProtoMessage() {} func (x *GetNextContainerRequestResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 GetNextContainerRequestResponse.ProtoReflect.Descriptor instead. func (*GetNextContainerRequestResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{1} } func (x *GetNextContainerRequestResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetNextContainerRequestResponse) GetContainerRequest() *ContainerRequest { if x != nil { return x.ContainerRequest } return nil } func (x *GetNextContainerRequestResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *GetNextContainerRequestResponse) GetDeliveryToken() string { if x != nil { return x.DeliveryToken } return "" } func (x *GetNextContainerRequestResponse) GetCheckpointCompatibilityKey() string { if x != nil { return x.CheckpointCompatibilityKey } return "" } type StreamWorkerEventsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` } func (x *StreamWorkerEventsRequest) Reset() { *x = StreamWorkerEventsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StreamWorkerEventsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*StreamWorkerEventsRequest) ProtoMessage() {} func (x *StreamWorkerEventsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 StreamWorkerEventsRequest.ProtoReflect.Descriptor instead. func (*StreamWorkerEventsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{2} } func (x *StreamWorkerEventsRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } type WorkerEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields EventId string `protobuf:"bytes,1,opt,name=event_id,json=eventId,proto3" json:"event_id,omitempty"` // Types that are assignable to Event: // // *WorkerEvent_StopContainer // *WorkerEvent_StopBuild Event isWorkerEvent_Event `protobuf_oneof:"event"` } func (x *WorkerEvent) Reset() { *x = WorkerEvent{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WorkerEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*WorkerEvent) ProtoMessage() {} func (x *WorkerEvent) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 WorkerEvent.ProtoReflect.Descriptor instead. func (*WorkerEvent) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{3} } func (x *WorkerEvent) GetEventId() string { if x != nil { return x.EventId } return "" } func (m *WorkerEvent) GetEvent() isWorkerEvent_Event { if m != nil { return m.Event } return nil } func (x *WorkerEvent) GetStopContainer() *StopContainerEvent { if x, ok := x.GetEvent().(*WorkerEvent_StopContainer); ok { return x.StopContainer } return nil } func (x *WorkerEvent) GetStopBuild() *StopBuildEvent { if x, ok := x.GetEvent().(*WorkerEvent_StopBuild); ok { return x.StopBuild } return nil } type isWorkerEvent_Event interface { isWorkerEvent_Event() } type WorkerEvent_StopContainer struct { StopContainer *StopContainerEvent `protobuf:"bytes,2,opt,name=stop_container,json=stopContainer,proto3,oneof"` } type WorkerEvent_StopBuild struct { StopBuild *StopBuildEvent `protobuf:"bytes,3,opt,name=stop_build,json=stopBuild,proto3,oneof"` } func (*WorkerEvent_StopContainer) isWorkerEvent_Event() {} func (*WorkerEvent_StopBuild) isWorkerEvent_Event() {} type StopContainerEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"` Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason,omitempty"` } func (x *StopContainerEvent) Reset() { *x = StopContainerEvent{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StopContainerEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*StopContainerEvent) ProtoMessage() {} func (x *StopContainerEvent) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 StopContainerEvent.ProtoReflect.Descriptor instead. func (*StopContainerEvent) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{4} } func (x *StopContainerEvent) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *StopContainerEvent) GetForce() bool { if x != nil { return x.Force } return false } func (x *StopContainerEvent) GetReason() string { if x != nil { return x.Reason } return "" } type StopBuildEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` } func (x *StopBuildEvent) Reset() { *x = StopBuildEvent{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StopBuildEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*StopBuildEvent) ProtoMessage() {} func (x *StopBuildEvent) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 StopBuildEvent.ProtoReflect.Descriptor instead. func (*StopBuildEvent) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{5} } func (x *StopBuildEvent) GetContainerId() string { if x != nil { return x.ContainerId } return "" } type SetImagePullLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` ImageId string `protobuf:"bytes,2,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` } func (x *SetImagePullLockRequest) Reset() { *x = SetImagePullLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetImagePullLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetImagePullLockRequest) ProtoMessage() {} func (x *SetImagePullLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 SetImagePullLockRequest.ProtoReflect.Descriptor instead. func (*SetImagePullLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{6} } func (x *SetImagePullLockRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *SetImagePullLockRequest) GetImageId() string { if x != nil { return x.ImageId } return "" } type SetImagePullLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *SetImagePullLockResponse) Reset() { *x = SetImagePullLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetImagePullLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetImagePullLockResponse) ProtoMessage() {} func (x *SetImagePullLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 SetImagePullLockResponse.ProtoReflect.Descriptor instead. func (*SetImagePullLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{7} } func (x *SetImagePullLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetImagePullLockResponse) GetToken() string { if x != nil { return x.Token } return "" } func (x *SetImagePullLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveImagePullLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` ImageId string `protobuf:"bytes,2,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` } func (x *RemoveImagePullLockRequest) Reset() { *x = RemoveImagePullLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveImagePullLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveImagePullLockRequest) ProtoMessage() {} func (x *RemoveImagePullLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RemoveImagePullLockRequest.ProtoReflect.Descriptor instead. func (*RemoveImagePullLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{8} } func (x *RemoveImagePullLockRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *RemoveImagePullLockRequest) GetImageId() string { if x != nil { return x.ImageId } return "" } func (x *RemoveImagePullLockRequest) GetToken() string { if x != nil { return x.Token } return "" } type RemoveImagePullLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveImagePullLockResponse) Reset() { *x = RemoveImagePullLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveImagePullLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveImagePullLockResponse) ProtoMessage() {} func (x *RemoveImagePullLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RemoveImagePullLockResponse.ProtoReflect.Descriptor instead. func (*RemoveImagePullLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{9} } func (x *RemoveImagePullLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveImagePullLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type AddContainerToWorkerRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` PoolName string `protobuf:"bytes,3,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` PodHostname string `protobuf:"bytes,4,opt,name=pod_hostname,json=podHostname,proto3" json:"pod_hostname,omitempty"` DeliveryToken string `protobuf:"bytes,5,opt,name=delivery_token,json=deliveryToken,proto3" json:"delivery_token,omitempty"` } func (x *AddContainerToWorkerRequest) Reset() { *x = AddContainerToWorkerRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddContainerToWorkerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddContainerToWorkerRequest) ProtoMessage() {} func (x *AddContainerToWorkerRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 AddContainerToWorkerRequest.ProtoReflect.Descriptor instead. func (*AddContainerToWorkerRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{10} } func (x *AddContainerToWorkerRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *AddContainerToWorkerRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *AddContainerToWorkerRequest) GetPoolName() string { if x != nil { return x.PoolName } return "" } func (x *AddContainerToWorkerRequest) GetPodHostname() string { if x != nil { return x.PodHostname } return "" } func (x *AddContainerToWorkerRequest) GetDeliveryToken() string { if x != nil { return x.DeliveryToken } return "" } type AddContainerToWorkerResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *AddContainerToWorkerResponse) Reset() { *x = AddContainerToWorkerResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddContainerToWorkerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddContainerToWorkerResponse) ProtoMessage() {} func (x *AddContainerToWorkerResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[11] 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 AddContainerToWorkerResponse.ProtoReflect.Descriptor instead. func (*AddContainerToWorkerResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{11} } func (x *AddContainerToWorkerResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *AddContainerToWorkerResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } // ClaimContainer acknowledges a delivered container request, refreshes the // container's pending lease, and vends its runtime credentials in one round // trip. It replaces the AddContainerToWorker -> GetContainerState -> // UpdateContainerStatus -> GetContainerRuntimeCredentials sequence. type ClaimContainerRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` PoolName string `protobuf:"bytes,3,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` PodHostname string `protobuf:"bytes,4,opt,name=pod_hostname,json=podHostname,proto3" json:"pod_hostname,omitempty"` DeliveryToken string `protobuf:"bytes,5,opt,name=delivery_token,json=deliveryToken,proto3" json:"delivery_token,omitempty"` // Optional. When set, credentials are vended after the claim succeeds. Credentials *GetContainerRuntimeCredentialsRequest `protobuf:"bytes,6,opt,name=credentials,proto3" json:"credentials,omitempty"` // Optional startup resources. They are published only after delivery is // accepted; older gateways ignore them and the worker publishes them itself. WorkerAddress *SetWorkerAddressRequest `protobuf:"bytes,7,opt,name=worker_address,json=workerAddress,proto3" json:"worker_address,omitempty"` Network *MoveContainerIpRequest `protobuf:"bytes,8,opt,name=network,proto3" json:"network,omitempty"` } func (x *ClaimContainerRequest) Reset() { *x = ClaimContainerRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ClaimContainerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ClaimContainerRequest) ProtoMessage() {} func (x *ClaimContainerRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 ClaimContainerRequest.ProtoReflect.Descriptor instead. func (*ClaimContainerRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{12} } func (x *ClaimContainerRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *ClaimContainerRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *ClaimContainerRequest) GetPoolName() string { if x != nil { return x.PoolName } return "" } func (x *ClaimContainerRequest) GetPodHostname() string { if x != nil { return x.PodHostname } return "" } func (x *ClaimContainerRequest) GetDeliveryToken() string { if x != nil { return x.DeliveryToken } return "" } func (x *ClaimContainerRequest) GetCredentials() *GetContainerRuntimeCredentialsRequest { if x != nil { return x.Credentials } return nil } func (x *ClaimContainerRequest) GetWorkerAddress() *SetWorkerAddressRequest { if x != nil { return x.WorkerAddress } return nil } func (x *ClaimContainerRequest) GetNetwork() *MoveContainerIpRequest { if x != nil { return x.Network } return nil } type ClaimContainerResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // claimed is true once the delivery was acknowledged, even when a later step // failed. A worker that claimed a container owns its failure reporting; one // that did not must only release its reserved capacity. Claimed bool `protobuf:"varint,3,opt,name=claimed,proto3" json:"claimed,omitempty"` State *ContainerState `protobuf:"bytes,4,opt,name=state,proto3" json:"state,omitempty"` Credentials *GetContainerRuntimeCredentialsResponse `protobuf:"bytes,5,opt,name=credentials,proto3" json:"credentials,omitempty"` StartupPrepared bool `protobuf:"varint,6,opt,name=startup_prepared,json=startupPrepared,proto3" json:"startup_prepared,omitempty"` } func (x *ClaimContainerResponse) Reset() { *x = ClaimContainerResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ClaimContainerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ClaimContainerResponse) ProtoMessage() {} func (x *ClaimContainerResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 ClaimContainerResponse.ProtoReflect.Descriptor instead. func (*ClaimContainerResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{13} } func (x *ClaimContainerResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *ClaimContainerResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *ClaimContainerResponse) GetClaimed() bool { if x != nil { return x.Claimed } return false } func (x *ClaimContainerResponse) GetState() *ContainerState { if x != nil { return x.State } return nil } func (x *ClaimContainerResponse) GetCredentials() *GetContainerRuntimeCredentialsResponse { if x != nil { return x.Credentials } return nil } func (x *ClaimContainerResponse) GetStartupPrepared() bool { if x != nil { return x.StartupPrepared } return false } type RemoveContainerFromWorkerRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` PoolName string `protobuf:"bytes,3,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` PodHostname string `protobuf:"bytes,4,opt,name=pod_hostname,json=podHostname,proto3" json:"pod_hostname,omitempty"` } func (x *RemoveContainerFromWorkerRequest) Reset() { *x = RemoveContainerFromWorkerRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveContainerFromWorkerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveContainerFromWorkerRequest) ProtoMessage() {} func (x *RemoveContainerFromWorkerRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RemoveContainerFromWorkerRequest.ProtoReflect.Descriptor instead. func (*RemoveContainerFromWorkerRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{14} } func (x *RemoveContainerFromWorkerRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *RemoveContainerFromWorkerRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *RemoveContainerFromWorkerRequest) GetPoolName() string { if x != nil { return x.PoolName } return "" } func (x *RemoveContainerFromWorkerRequest) GetPodHostname() string { if x != nil { return x.PodHostname } return "" } type RemoveContainerFromWorkerResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveContainerFromWorkerResponse) Reset() { *x = RemoveContainerFromWorkerResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveContainerFromWorkerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveContainerFromWorkerResponse) ProtoMessage() {} func (x *RemoveContainerFromWorkerResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RemoveContainerFromWorkerResponse.ProtoReflect.Descriptor instead. func (*RemoveContainerFromWorkerResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{15} } func (x *RemoveContainerFromWorkerResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveContainerFromWorkerResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type GetWorkerByIdRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` } func (x *GetWorkerByIdRequest) Reset() { *x = GetWorkerByIdRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetWorkerByIdRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetWorkerByIdRequest) ProtoMessage() {} func (x *GetWorkerByIdRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 GetWorkerByIdRequest.ProtoReflect.Descriptor instead. func (*GetWorkerByIdRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{16} } func (x *GetWorkerByIdRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } type GetWorkerByIdResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Worker *Worker `protobuf:"bytes,2,opt,name=worker,proto3" json:"worker,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *GetWorkerByIdResponse) Reset() { *x = GetWorkerByIdResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetWorkerByIdResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetWorkerByIdResponse) ProtoMessage() {} func (x *GetWorkerByIdResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[17] 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 GetWorkerByIdResponse.ProtoReflect.Descriptor instead. func (*GetWorkerByIdResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{17} } func (x *GetWorkerByIdResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetWorkerByIdResponse) GetWorker() *Worker { if x != nil { return x.Worker } return nil } func (x *GetWorkerByIdResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type ToggleWorkerAvailableRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` Generation string `protobuf:"bytes,2,opt,name=generation,proto3" json:"generation,omitempty"` } func (x *ToggleWorkerAvailableRequest) Reset() { *x = ToggleWorkerAvailableRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ToggleWorkerAvailableRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ToggleWorkerAvailableRequest) ProtoMessage() {} func (x *ToggleWorkerAvailableRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 ToggleWorkerAvailableRequest.ProtoReflect.Descriptor instead. func (*ToggleWorkerAvailableRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{18} } func (x *ToggleWorkerAvailableRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *ToggleWorkerAvailableRequest) GetGeneration() string { if x != nil { return x.Generation } return "" } type ToggleWorkerAvailableResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *ToggleWorkerAvailableResponse) Reset() { *x = ToggleWorkerAvailableResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ToggleWorkerAvailableResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ToggleWorkerAvailableResponse) ProtoMessage() {} func (x *ToggleWorkerAvailableResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 ToggleWorkerAvailableResponse.ProtoReflect.Descriptor instead. func (*ToggleWorkerAvailableResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{19} } func (x *ToggleWorkerAvailableResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *ToggleWorkerAvailableResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type DisableWorkerRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` Cordon bool `protobuf:"varint,2,opt,name=cordon,proto3" json:"cordon,omitempty"` } func (x *DisableWorkerRequest) Reset() { *x = DisableWorkerRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DisableWorkerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DisableWorkerRequest) ProtoMessage() {} func (x *DisableWorkerRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 DisableWorkerRequest.ProtoReflect.Descriptor instead. func (*DisableWorkerRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{20} } func (x *DisableWorkerRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *DisableWorkerRequest) GetCordon() bool { if x != nil { return x.Cordon } return false } type DisableWorkerResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *DisableWorkerResponse) Reset() { *x = DisableWorkerResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DisableWorkerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*DisableWorkerResponse) ProtoMessage() {} func (x *DisableWorkerResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 DisableWorkerResponse.ProtoReflect.Descriptor instead. func (*DisableWorkerResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{21} } func (x *DisableWorkerResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *DisableWorkerResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveWorkerRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` } func (x *RemoveWorkerRequest) Reset() { *x = RemoveWorkerRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveWorkerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveWorkerRequest) ProtoMessage() {} func (x *RemoveWorkerRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RemoveWorkerRequest.ProtoReflect.Descriptor instead. func (*RemoveWorkerRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{22} } func (x *RemoveWorkerRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } type RemoveWorkerResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveWorkerResponse) Reset() { *x = RemoveWorkerResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveWorkerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveWorkerResponse) ProtoMessage() {} func (x *RemoveWorkerResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RemoveWorkerResponse.ProtoReflect.Descriptor instead. func (*RemoveWorkerResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{23} } func (x *RemoveWorkerResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveWorkerResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type UpdateWorkerCapacityRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` CapacityChange int64 `protobuf:"varint,2,opt,name=capacity_change,json=capacityChange,proto3" json:"capacity_change,omitempty"` ContainerRequest *ContainerRequest `protobuf:"bytes,3,opt,name=container_request,json=containerRequest,proto3" json:"container_request,omitempty"` } func (x *UpdateWorkerCapacityRequest) Reset() { *x = UpdateWorkerCapacityRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateWorkerCapacityRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateWorkerCapacityRequest) ProtoMessage() {} func (x *UpdateWorkerCapacityRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 UpdateWorkerCapacityRequest.ProtoReflect.Descriptor instead. func (*UpdateWorkerCapacityRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{24} } func (x *UpdateWorkerCapacityRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *UpdateWorkerCapacityRequest) GetCapacityChange() int64 { if x != nil { return x.CapacityChange } return 0 } func (x *UpdateWorkerCapacityRequest) GetContainerRequest() *ContainerRequest { if x != nil { return x.ContainerRequest } return nil } type UpdateWorkerCapacityResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *UpdateWorkerCapacityResponse) Reset() { *x = UpdateWorkerCapacityResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpdateWorkerCapacityResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpdateWorkerCapacityResponse) ProtoMessage() {} func (x *UpdateWorkerCapacityResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 UpdateWorkerCapacityResponse.ProtoReflect.Descriptor instead. func (*UpdateWorkerCapacityResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{25} } func (x *UpdateWorkerCapacityResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *UpdateWorkerCapacityResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type SetWorkerKeepAliveRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` MachineId string `protobuf:"bytes,2,opt,name=machine_id,json=machineId,proto3" json:"machine_id,omitempty"` // idle is set when the worker runs no containers. Only an idle worker can // spin down, so only an idle worker needs pool_headroom answered; busy // workers' keepalives skip the pool scan. Idle bool `protobuf:"varint,3,opt,name=idle,proto3" json:"idle,omitempty"` CheckpointCompatibilityKey string `protobuf:"bytes,4,opt,name=checkpoint_compatibility_key,json=checkpointCompatibilityKey,proto3" json:"checkpoint_compatibility_key,omitempty"` CpuTierProtocol uint32 `protobuf:"varint,5,opt,name=cpu_tier_protocol,json=cpuTierProtocol,proto3" json:"cpu_tier_protocol,omitempty"` } func (x *SetWorkerKeepAliveRequest) Reset() { *x = SetWorkerKeepAliveRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetWorkerKeepAliveRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetWorkerKeepAliveRequest) ProtoMessage() {} func (x *SetWorkerKeepAliveRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 SetWorkerKeepAliveRequest.ProtoReflect.Descriptor instead. func (*SetWorkerKeepAliveRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{26} } func (x *SetWorkerKeepAliveRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *SetWorkerKeepAliveRequest) GetMachineId() string { if x != nil { return x.MachineId } return "" } func (x *SetWorkerKeepAliveRequest) GetIdle() bool { if x != nil { return x.Idle } return false } func (x *SetWorkerKeepAliveRequest) GetCheckpointCompatibilityKey() string { if x != nil { return x.CheckpointCompatibilityKey } return "" } func (x *SetWorkerKeepAliveRequest) GetCpuTierProtocol() uint32 { if x != nil { return x.CpuTierProtocol } return 0 } type SetWorkerKeepAliveResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // pool_headroom is set when the pool's free capacity would fall below its // configured minimum without this worker. The worker keeps running through // its idle spindown timeout while this is set. PoolHeadroom bool `protobuf:"varint,3,opt,name=pool_headroom,json=poolHeadroom,proto3" json:"pool_headroom,omitempty"` } func (x *SetWorkerKeepAliveResponse) Reset() { *x = SetWorkerKeepAliveResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetWorkerKeepAliveResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetWorkerKeepAliveResponse) ProtoMessage() {} func (x *SetWorkerKeepAliveResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 SetWorkerKeepAliveResponse.ProtoReflect.Descriptor instead. func (*SetWorkerKeepAliveResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{27} } func (x *SetWorkerKeepAliveResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetWorkerKeepAliveResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *SetWorkerKeepAliveResponse) GetPoolHeadroom() bool { if x != nil { return x.PoolHeadroom } return false } type CacheCoordinatorHost struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields LogicalHostId string `protobuf:"bytes,1,opt,name=logical_host_id,json=logicalHostId,proto3" json:"logical_host_id,omitempty"` RegistrationId string `protobuf:"bytes,2,opt,name=registration_id,json=registrationId,proto3" json:"registration_id,omitempty"` PoolName string `protobuf:"bytes,3,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` Locality string `protobuf:"bytes,4,opt,name=locality,proto3" json:"locality,omitempty"` NodeId string `protobuf:"bytes,5,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"` CachePathId string `protobuf:"bytes,6,opt,name=cache_path_id,json=cachePathId,proto3" json:"cache_path_id,omitempty"` Addr string `protobuf:"bytes,8,opt,name=addr,proto3" json:"addr,omitempty"` PrivateAddr string `protobuf:"bytes,9,opt,name=private_addr,json=privateAddr,proto3" json:"private_addr,omitempty"` CapacityUsagePct float32 `protobuf:"fixed32,10,opt,name=capacity_usage_pct,json=capacityUsagePct,proto3" json:"capacity_usage_pct,omitempty"` } func (x *CacheCoordinatorHost) Reset() { *x = CacheCoordinatorHost{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CacheCoordinatorHost) String() string { return protoimpl.X.MessageStringOf(x) } func (*CacheCoordinatorHost) ProtoMessage() {} func (x *CacheCoordinatorHost) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 CacheCoordinatorHost.ProtoReflect.Descriptor instead. func (*CacheCoordinatorHost) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{28} } func (x *CacheCoordinatorHost) GetLogicalHostId() string { if x != nil { return x.LogicalHostId } return "" } func (x *CacheCoordinatorHost) GetRegistrationId() string { if x != nil { return x.RegistrationId } return "" } func (x *CacheCoordinatorHost) GetPoolName() string { if x != nil { return x.PoolName } return "" } func (x *CacheCoordinatorHost) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *CacheCoordinatorHost) GetNodeId() string { if x != nil { return x.NodeId } return "" } func (x *CacheCoordinatorHost) GetCachePathId() string { if x != nil { return x.CachePathId } return "" } func (x *CacheCoordinatorHost) GetAddr() string { if x != nil { return x.Addr } return "" } func (x *CacheCoordinatorHost) GetPrivateAddr() string { if x != nil { return x.PrivateAddr } return "" } func (x *CacheCoordinatorHost) GetCapacityUsagePct() float32 { if x != nil { return x.CapacityUsagePct } return 0 } type RegisterCacheHostRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Host *CacheCoordinatorHost `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` TtlSeconds int32 `protobuf:"varint,2,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"` } func (x *RegisterCacheHostRequest) Reset() { *x = RegisterCacheHostRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RegisterCacheHostRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RegisterCacheHostRequest) ProtoMessage() {} func (x *RegisterCacheHostRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RegisterCacheHostRequest.ProtoReflect.Descriptor instead. func (*RegisterCacheHostRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{29} } func (x *RegisterCacheHostRequest) GetHost() *CacheCoordinatorHost { if x != nil { return x.Host } return nil } func (x *RegisterCacheHostRequest) GetTtlSeconds() int32 { if x != nil { return x.TtlSeconds } return 0 } type RegisterCacheHostResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RegisterCacheHostResponse) Reset() { *x = RegisterCacheHostResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RegisterCacheHostResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RegisterCacheHostResponse) ProtoMessage() {} func (x *RegisterCacheHostResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_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 RegisterCacheHostResponse.ProtoReflect.Descriptor instead. func (*RegisterCacheHostResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{30} } func (x *RegisterCacheHostResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RegisterCacheHostResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type UnregisterCacheHostRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields LogicalHostId string `protobuf:"bytes,1,opt,name=logical_host_id,json=logicalHostId,proto3" json:"logical_host_id,omitempty"` RegistrationId string `protobuf:"bytes,2,opt,name=registration_id,json=registrationId,proto3" json:"registration_id,omitempty"` PoolName string `protobuf:"bytes,3,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` Locality string `protobuf:"bytes,4,opt,name=locality,proto3" json:"locality,omitempty"` } func (x *UnregisterCacheHostRequest) Reset() { *x = UnregisterCacheHostRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UnregisterCacheHostRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UnregisterCacheHostRequest) ProtoMessage() {} func (x *UnregisterCacheHostRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[31] 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 UnregisterCacheHostRequest.ProtoReflect.Descriptor instead. func (*UnregisterCacheHostRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{31} } func (x *UnregisterCacheHostRequest) GetLogicalHostId() string { if x != nil { return x.LogicalHostId } return "" } func (x *UnregisterCacheHostRequest) GetRegistrationId() string { if x != nil { return x.RegistrationId } return "" } func (x *UnregisterCacheHostRequest) GetPoolName() string { if x != nil { return x.PoolName } return "" } func (x *UnregisterCacheHostRequest) GetLocality() string { if x != nil { return x.Locality } return "" } type UnregisterCacheHostResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *UnregisterCacheHostResponse) Reset() { *x = UnregisterCacheHostResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UnregisterCacheHostResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*UnregisterCacheHostResponse) ProtoMessage() {} func (x *UnregisterCacheHostResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[32] 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 UnregisterCacheHostResponse.ProtoReflect.Descriptor instead. func (*UnregisterCacheHostResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{32} } func (x *UnregisterCacheHostResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *UnregisterCacheHostResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type ListCacheHostsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PoolName string `protobuf:"bytes,1,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` Locality string `protobuf:"bytes,2,opt,name=locality,proto3" json:"locality,omitempty"` } func (x *ListCacheHostsRequest) Reset() { *x = ListCacheHostsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListCacheHostsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListCacheHostsRequest) ProtoMessage() {} func (x *ListCacheHostsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[33] 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 ListCacheHostsRequest.ProtoReflect.Descriptor instead. func (*ListCacheHostsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{33} } func (x *ListCacheHostsRequest) GetPoolName() string { if x != nil { return x.PoolName } return "" } func (x *ListCacheHostsRequest) GetLocality() string { if x != nil { return x.Locality } return "" } type ListCacheHostsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Hosts []*CacheCoordinatorHost `protobuf:"bytes,2,rep,name=hosts,proto3" json:"hosts,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *ListCacheHostsResponse) Reset() { *x = ListCacheHostsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListCacheHostsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListCacheHostsResponse) ProtoMessage() {} func (x *ListCacheHostsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[34] 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 ListCacheHostsResponse.ProtoReflect.Descriptor instead. func (*ListCacheHostsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{34} } func (x *ListCacheHostsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *ListCacheHostsResponse) GetHosts() []*CacheCoordinatorHost { if x != nil { return x.Hosts } return nil } func (x *ListCacheHostsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type SetCacheClientLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` HostId string `protobuf:"bytes,2,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"` } func (x *SetCacheClientLockRequest) Reset() { *x = SetCacheClientLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetCacheClientLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetCacheClientLockRequest) ProtoMessage() {} func (x *SetCacheClientLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[35] 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 SetCacheClientLockRequest.ProtoReflect.Descriptor instead. func (*SetCacheClientLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{35} } func (x *SetCacheClientLockRequest) GetHash() string { if x != nil { return x.Hash } return "" } func (x *SetCacheClientLockRequest) GetHostId() string { if x != nil { return x.HostId } return "" } type SetCacheClientLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *SetCacheClientLockResponse) Reset() { *x = SetCacheClientLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetCacheClientLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetCacheClientLockResponse) ProtoMessage() {} func (x *SetCacheClientLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[36] 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 SetCacheClientLockResponse.ProtoReflect.Descriptor instead. func (*SetCacheClientLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{36} } func (x *SetCacheClientLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetCacheClientLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveCacheClientLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` HostId string `protobuf:"bytes,2,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"` } func (x *RemoveCacheClientLockRequest) Reset() { *x = RemoveCacheClientLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheClientLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheClientLockRequest) ProtoMessage() {} func (x *RemoveCacheClientLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[37] 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 RemoveCacheClientLockRequest.ProtoReflect.Descriptor instead. func (*RemoveCacheClientLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{37} } func (x *RemoveCacheClientLockRequest) GetHash() string { if x != nil { return x.Hash } return "" } func (x *RemoveCacheClientLockRequest) GetHostId() string { if x != nil { return x.HostId } return "" } type RemoveCacheClientLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveCacheClientLockResponse) Reset() { *x = RemoveCacheClientLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheClientLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheClientLockResponse) ProtoMessage() {} func (x *RemoveCacheClientLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[38] 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 RemoveCacheClientLockResponse.ProtoReflect.Descriptor instead. func (*RemoveCacheClientLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{38} } func (x *RemoveCacheClientLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveCacheClientLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type SetCacheStoreFromContentLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` SourcePath string `protobuf:"bytes,2,opt,name=source_path,json=sourcePath,proto3" json:"source_path,omitempty"` } func (x *SetCacheStoreFromContentLockRequest) Reset() { *x = SetCacheStoreFromContentLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetCacheStoreFromContentLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetCacheStoreFromContentLockRequest) ProtoMessage() {} func (x *SetCacheStoreFromContentLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[39] 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 SetCacheStoreFromContentLockRequest.ProtoReflect.Descriptor instead. func (*SetCacheStoreFromContentLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{39} } func (x *SetCacheStoreFromContentLockRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *SetCacheStoreFromContentLockRequest) GetSourcePath() string { if x != nil { return x.SourcePath } return "" } type SetCacheStoreFromContentLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *SetCacheStoreFromContentLockResponse) Reset() { *x = SetCacheStoreFromContentLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetCacheStoreFromContentLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetCacheStoreFromContentLockResponse) ProtoMessage() {} func (x *SetCacheStoreFromContentLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[40] 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 SetCacheStoreFromContentLockResponse.ProtoReflect.Descriptor instead. func (*SetCacheStoreFromContentLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{40} } func (x *SetCacheStoreFromContentLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetCacheStoreFromContentLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RecentCacheStub struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkspaceId string `protobuf:"bytes,1,opt,name=workspace_id,json=workspaceId,proto3" json:"workspace_id,omitempty"` StubId string `protobuf:"bytes,2,opt,name=stub_id,json=stubId,proto3" json:"stub_id,omitempty"` LastSeenUnix int64 `protobuf:"varint,3,opt,name=last_seen_unix,json=lastSeenUnix,proto3" json:"last_seen_unix,omitempty"` } func (x *RecentCacheStub) Reset() { *x = RecentCacheStub{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RecentCacheStub) String() string { return protoimpl.X.MessageStringOf(x) } func (*RecentCacheStub) ProtoMessage() {} func (x *RecentCacheStub) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[41] 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 RecentCacheStub.ProtoReflect.Descriptor instead. func (*RecentCacheStub) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{41} } func (x *RecentCacheStub) GetWorkspaceId() string { if x != nil { return x.WorkspaceId } return "" } func (x *RecentCacheStub) GetStubId() string { if x != nil { return x.StubId } return "" } func (x *RecentCacheStub) GetLastSeenUnix() int64 { if x != nil { return x.LastSeenUnix } return 0 } type AddRecentCacheStubRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` WorkspaceId string `protobuf:"bytes,2,opt,name=workspace_id,json=workspaceId,proto3" json:"workspace_id,omitempty"` StubId string `protobuf:"bytes,3,opt,name=stub_id,json=stubId,proto3" json:"stub_id,omitempty"` TtlSeconds int64 `protobuf:"varint,4,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"` } func (x *AddRecentCacheStubRequest) Reset() { *x = AddRecentCacheStubRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddRecentCacheStubRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddRecentCacheStubRequest) ProtoMessage() {} func (x *AddRecentCacheStubRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[42] 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 AddRecentCacheStubRequest.ProtoReflect.Descriptor instead. func (*AddRecentCacheStubRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{42} } func (x *AddRecentCacheStubRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *AddRecentCacheStubRequest) GetWorkspaceId() string { if x != nil { return x.WorkspaceId } return "" } func (x *AddRecentCacheStubRequest) GetStubId() string { if x != nil { return x.StubId } return "" } func (x *AddRecentCacheStubRequest) GetTtlSeconds() int64 { if x != nil { return x.TtlSeconds } return 0 } type AddRecentCacheStubResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *AddRecentCacheStubResponse) Reset() { *x = AddRecentCacheStubResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddRecentCacheStubResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddRecentCacheStubResponse) ProtoMessage() {} func (x *AddRecentCacheStubResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[43] 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 AddRecentCacheStubResponse.ProtoReflect.Descriptor instead. func (*AddRecentCacheStubResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{43} } func (x *AddRecentCacheStubResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *AddRecentCacheStubResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type ListRecentCacheStubsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` TtlSeconds int64 `protobuf:"varint,2,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"` Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"` } func (x *ListRecentCacheStubsRequest) Reset() { *x = ListRecentCacheStubsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListRecentCacheStubsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRecentCacheStubsRequest) ProtoMessage() {} func (x *ListRecentCacheStubsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[44] 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 ListRecentCacheStubsRequest.ProtoReflect.Descriptor instead. func (*ListRecentCacheStubsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{44} } func (x *ListRecentCacheStubsRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *ListRecentCacheStubsRequest) GetTtlSeconds() int64 { if x != nil { return x.TtlSeconds } return 0 } func (x *ListRecentCacheStubsRequest) GetLimit() int32 { if x != nil { return x.Limit } return 0 } type ListRecentCacheStubsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` Stubs []*RecentCacheStub `protobuf:"bytes,3,rep,name=stubs,proto3" json:"stubs,omitempty"` } func (x *ListRecentCacheStubsResponse) Reset() { *x = ListRecentCacheStubsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListRecentCacheStubsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRecentCacheStubsResponse) ProtoMessage() {} func (x *ListRecentCacheStubsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[45] 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 ListRecentCacheStubsResponse.ProtoReflect.Descriptor instead. func (*ListRecentCacheStubsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{45} } func (x *ListRecentCacheStubsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *ListRecentCacheStubsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *ListRecentCacheStubsResponse) GetStubs() []*RecentCacheStub { if x != nil { return x.Stubs } return nil } type MarkCacheStubReportedRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` StubId string `protobuf:"bytes,2,opt,name=stub_id,json=stubId,proto3" json:"stub_id,omitempty"` TtlSeconds int64 `protobuf:"varint,3,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"` } func (x *MarkCacheStubReportedRequest) Reset() { *x = MarkCacheStubReportedRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MarkCacheStubReportedRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MarkCacheStubReportedRequest) ProtoMessage() {} func (x *MarkCacheStubReportedRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[46] 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 MarkCacheStubReportedRequest.ProtoReflect.Descriptor instead. func (*MarkCacheStubReportedRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{46} } func (x *MarkCacheStubReportedRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *MarkCacheStubReportedRequest) GetStubId() string { if x != nil { return x.StubId } return "" } func (x *MarkCacheStubReportedRequest) GetTtlSeconds() int64 { if x != nil { return x.TtlSeconds } return 0 } type MarkCacheStubReportedResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` Claimed bool `protobuf:"varint,3,opt,name=claimed,proto3" json:"claimed,omitempty"` } func (x *MarkCacheStubReportedResponse) Reset() { *x = MarkCacheStubReportedResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MarkCacheStubReportedResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MarkCacheStubReportedResponse) ProtoMessage() {} func (x *MarkCacheStubReportedResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[47] 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 MarkCacheStubReportedResponse.ProtoReflect.Descriptor instead. func (*MarkCacheStubReportedResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{47} } func (x *MarkCacheStubReportedResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *MarkCacheStubReportedResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *MarkCacheStubReportedResponse) GetClaimed() bool { if x != nil { return x.Claimed } return false } type AcquireCacheReconcileLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` LogicalHost string `protobuf:"bytes,2,opt,name=logical_host,json=logicalHost,proto3" json:"logical_host,omitempty"` Hash string `protobuf:"bytes,3,opt,name=hash,proto3" json:"hash,omitempty"` TtlSeconds int64 `protobuf:"varint,4,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"` } func (x *AcquireCacheReconcileLockRequest) Reset() { *x = AcquireCacheReconcileLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AcquireCacheReconcileLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AcquireCacheReconcileLockRequest) ProtoMessage() {} func (x *AcquireCacheReconcileLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[48] 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 AcquireCacheReconcileLockRequest.ProtoReflect.Descriptor instead. func (*AcquireCacheReconcileLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{48} } func (x *AcquireCacheReconcileLockRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *AcquireCacheReconcileLockRequest) GetLogicalHost() string { if x != nil { return x.LogicalHost } return "" } func (x *AcquireCacheReconcileLockRequest) GetHash() string { if x != nil { return x.Hash } return "" } func (x *AcquireCacheReconcileLockRequest) GetTtlSeconds() int64 { if x != nil { return x.TtlSeconds } return 0 } type AcquireCacheReconcileLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` Acquired bool `protobuf:"varint,3,opt,name=acquired,proto3" json:"acquired,omitempty"` } func (x *AcquireCacheReconcileLockResponse) Reset() { *x = AcquireCacheReconcileLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AcquireCacheReconcileLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AcquireCacheReconcileLockResponse) ProtoMessage() {} func (x *AcquireCacheReconcileLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[49] 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 AcquireCacheReconcileLockResponse.ProtoReflect.Descriptor instead. func (*AcquireCacheReconcileLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{49} } func (x *AcquireCacheReconcileLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *AcquireCacheReconcileLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *AcquireCacheReconcileLockResponse) GetAcquired() bool { if x != nil { return x.Acquired } return false } type ReleaseCacheReconcileLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` LogicalHost string `protobuf:"bytes,2,opt,name=logical_host,json=logicalHost,proto3" json:"logical_host,omitempty"` Hash string `protobuf:"bytes,3,opt,name=hash,proto3" json:"hash,omitempty"` } func (x *ReleaseCacheReconcileLockRequest) Reset() { *x = ReleaseCacheReconcileLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ReleaseCacheReconcileLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ReleaseCacheReconcileLockRequest) ProtoMessage() {} func (x *ReleaseCacheReconcileLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[50] 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 ReleaseCacheReconcileLockRequest.ProtoReflect.Descriptor instead. func (*ReleaseCacheReconcileLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{50} } func (x *ReleaseCacheReconcileLockRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *ReleaseCacheReconcileLockRequest) GetLogicalHost() string { if x != nil { return x.LogicalHost } return "" } func (x *ReleaseCacheReconcileLockRequest) GetHash() string { if x != nil { return x.Hash } return "" } type ReleaseCacheReconcileLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *ReleaseCacheReconcileLockResponse) Reset() { *x = ReleaseCacheReconcileLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ReleaseCacheReconcileLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ReleaseCacheReconcileLockResponse) ProtoMessage() {} func (x *ReleaseCacheReconcileLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[51] 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 ReleaseCacheReconcileLockResponse.ProtoReflect.Descriptor instead. func (*ReleaseCacheReconcileLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{51} } func (x *ReleaseCacheReconcileLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *ReleaseCacheReconcileLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type CacheWorkspaceStorageCredentials struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields EndpointUrl string `protobuf:"bytes,1,opt,name=endpoint_url,json=endpointUrl,proto3" json:"endpoint_url,omitempty"` Region string `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"` BucketName string `protobuf:"bytes,3,opt,name=bucket_name,json=bucketName,proto3" json:"bucket_name,omitempty"` AccessKey string `protobuf:"bytes,4,opt,name=access_key,json=accessKey,proto3" json:"access_key,omitempty"` SecretKey string `protobuf:"bytes,5,opt,name=secret_key,json=secretKey,proto3" json:"secret_key,omitempty"` ForcePathStyle bool `protobuf:"varint,6,opt,name=force_path_style,json=forcePathStyle,proto3" json:"force_path_style,omitempty"` } func (x *CacheWorkspaceStorageCredentials) Reset() { *x = CacheWorkspaceStorageCredentials{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CacheWorkspaceStorageCredentials) String() string { return protoimpl.X.MessageStringOf(x) } func (*CacheWorkspaceStorageCredentials) ProtoMessage() {} func (x *CacheWorkspaceStorageCredentials) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[52] 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 CacheWorkspaceStorageCredentials.ProtoReflect.Descriptor instead. func (*CacheWorkspaceStorageCredentials) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{52} } func (x *CacheWorkspaceStorageCredentials) GetEndpointUrl() string { if x != nil { return x.EndpointUrl } return "" } func (x *CacheWorkspaceStorageCredentials) GetRegion() string { if x != nil { return x.Region } return "" } func (x *CacheWorkspaceStorageCredentials) GetBucketName() string { if x != nil { return x.BucketName } return "" } func (x *CacheWorkspaceStorageCredentials) GetAccessKey() string { if x != nil { return x.AccessKey } return "" } func (x *CacheWorkspaceStorageCredentials) GetSecretKey() string { if x != nil { return x.SecretKey } return "" } func (x *CacheWorkspaceStorageCredentials) GetForcePathStyle() bool { if x != nil { return x.ForcePathStyle } return false } type GetCacheOriginCredentialsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkspaceId string `protobuf:"bytes,1,opt,name=workspace_id,json=workspaceId,proto3" json:"workspace_id,omitempty"` StubId string `protobuf:"bytes,2,opt,name=stub_id,json=stubId,proto3" json:"stub_id,omitempty"` Registry string `protobuf:"bytes,3,opt,name=registry,proto3" json:"registry,omitempty"` ImageId string `protobuf:"bytes,4,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` // Publish a filesystem export under this stub's generated image ID. ImageArchiveUploadId string `protobuf:"bytes,5,opt,name=image_archive_upload_id,json=imageArchiveUploadId,proto3" json:"image_archive_upload_id,omitempty"` ImageArchiveUploadData bool `protobuf:"varint,6,opt,name=image_archive_upload_data,json=imageArchiveUploadData,proto3" json:"image_archive_upload_data,omitempty"` } func (x *GetCacheOriginCredentialsRequest) Reset() { *x = GetCacheOriginCredentialsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCacheOriginCredentialsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCacheOriginCredentialsRequest) ProtoMessage() {} func (x *GetCacheOriginCredentialsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[53] 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 GetCacheOriginCredentialsRequest.ProtoReflect.Descriptor instead. func (*GetCacheOriginCredentialsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{53} } func (x *GetCacheOriginCredentialsRequest) GetWorkspaceId() string { if x != nil { return x.WorkspaceId } return "" } func (x *GetCacheOriginCredentialsRequest) GetStubId() string { if x != nil { return x.StubId } return "" } func (x *GetCacheOriginCredentialsRequest) GetRegistry() string { if x != nil { return x.Registry } return "" } func (x *GetCacheOriginCredentialsRequest) GetImageId() string { if x != nil { return x.ImageId } return "" } func (x *GetCacheOriginCredentialsRequest) GetImageArchiveUploadId() string { if x != nil { return x.ImageArchiveUploadId } return "" } func (x *GetCacheOriginCredentialsRequest) GetImageArchiveUploadData() bool { if x != nil { return x.ImageArchiveUploadData } return false } type GetCacheOriginCredentialsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // Opaque registry credentials blob (same format as runtime image credentials). // Short-lived and used in-memory by the worker only; never persisted. RegistryCredentials string `protobuf:"bytes,3,opt,name=registry_credentials,json=registryCredentials,proto3" json:"registry_credentials,omitempty"` WorkspaceStorage *CacheWorkspaceStorageCredentials `protobuf:"bytes,4,opt,name=workspace_storage,json=workspaceStorage,proto3" json:"workspace_storage,omitempty"` ImageArchiveStorage *CacheWorkspaceStorageCredentials `protobuf:"bytes,5,opt,name=image_archive_storage,json=imageArchiveStorage,proto3" json:"image_archive_storage,omitempty"` ImageArchiveObjectKey string `protobuf:"bytes,6,opt,name=image_archive_object_key,json=imageArchiveObjectKey,proto3" json:"image_archive_object_key,omitempty"` ImageArchiveUrl string `protobuf:"bytes,7,opt,name=image_archive_url,json=imageArchiveUrl,proto3" json:"image_archive_url,omitempty"` // Presigned URL for the CLIP v1 data archive (".clip"), used by // private-pool workers that have no S3 credentials to lazily restore or // reconcile v1 archive data. ImageArchiveDataUrl string `protobuf:"bytes,8,opt,name=image_archive_data_url,json=imageArchiveDataUrl,proto3" json:"image_archive_data_url,omitempty"` ImageArchiveUploadUrl string `protobuf:"bytes,9,opt,name=image_archive_upload_url,json=imageArchiveUploadUrl,proto3" json:"image_archive_upload_url,omitempty"` // Publishing settings also refresh agents with an older saved bootstrap. BuildRegistry string `protobuf:"bytes,10,opt,name=build_registry,json=buildRegistry,proto3" json:"build_registry,omitempty"` BuildRepositoryName string `protobuf:"bytes,11,opt,name=build_repository_name,json=buildRepositoryName,proto3" json:"build_repository_name,omitempty"` BuildRegistryInsecure bool `protobuf:"varint,12,opt,name=build_registry_insecure,json=buildRegistryInsecure,proto3" json:"build_registry_insecure,omitempty"` } func (x *GetCacheOriginCredentialsResponse) Reset() { *x = GetCacheOriginCredentialsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCacheOriginCredentialsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCacheOriginCredentialsResponse) ProtoMessage() {} func (x *GetCacheOriginCredentialsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[54] 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 GetCacheOriginCredentialsResponse.ProtoReflect.Descriptor instead. func (*GetCacheOriginCredentialsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{54} } func (x *GetCacheOriginCredentialsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetCacheOriginCredentialsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *GetCacheOriginCredentialsResponse) GetRegistryCredentials() string { if x != nil { return x.RegistryCredentials } return "" } func (x *GetCacheOriginCredentialsResponse) GetWorkspaceStorage() *CacheWorkspaceStorageCredentials { if x != nil { return x.WorkspaceStorage } return nil } func (x *GetCacheOriginCredentialsResponse) GetImageArchiveStorage() *CacheWorkspaceStorageCredentials { if x != nil { return x.ImageArchiveStorage } return nil } func (x *GetCacheOriginCredentialsResponse) GetImageArchiveObjectKey() string { if x != nil { return x.ImageArchiveObjectKey } return "" } func (x *GetCacheOriginCredentialsResponse) GetImageArchiveUrl() string { if x != nil { return x.ImageArchiveUrl } return "" } func (x *GetCacheOriginCredentialsResponse) GetImageArchiveDataUrl() string { if x != nil { return x.ImageArchiveDataUrl } return "" } func (x *GetCacheOriginCredentialsResponse) GetImageArchiveUploadUrl() string { if x != nil { return x.ImageArchiveUploadUrl } return "" } func (x *GetCacheOriginCredentialsResponse) GetBuildRegistry() string { if x != nil { return x.BuildRegistry } return "" } func (x *GetCacheOriginCredentialsResponse) GetBuildRepositoryName() string { if x != nil { return x.BuildRepositoryName } return "" } func (x *GetCacheOriginCredentialsResponse) GetBuildRegistryInsecure() bool { if x != nil { return x.BuildRegistryInsecure } return false } type RuntimeMountCredentialRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MountPath string `protobuf:"bytes,1,opt,name=mount_path,json=mountPath,proto3" json:"mount_path,omitempty"` BucketName string `protobuf:"bytes,2,opt,name=bucket_name,json=bucketName,proto3" json:"bucket_name,omitempty"` } func (x *RuntimeMountCredentialRequest) Reset() { *x = RuntimeMountCredentialRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RuntimeMountCredentialRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RuntimeMountCredentialRequest) ProtoMessage() {} func (x *RuntimeMountCredentialRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[55] 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 RuntimeMountCredentialRequest.ProtoReflect.Descriptor instead. func (*RuntimeMountCredentialRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{55} } func (x *RuntimeMountCredentialRequest) GetMountPath() string { if x != nil { return x.MountPath } return "" } func (x *RuntimeMountCredentialRequest) GetBucketName() string { if x != nil { return x.BucketName } return "" } type RuntimeMountCredentials struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MountPath string `protobuf:"bytes,1,opt,name=mount_path,json=mountPath,proto3" json:"mount_path,omitempty"` Config *MountPointConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"` } func (x *RuntimeMountCredentials) Reset() { *x = RuntimeMountCredentials{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RuntimeMountCredentials) String() string { return protoimpl.X.MessageStringOf(x) } func (*RuntimeMountCredentials) ProtoMessage() {} func (x *RuntimeMountCredentials) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[56] 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 RuntimeMountCredentials.ProtoReflect.Descriptor instead. func (*RuntimeMountCredentials) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{56} } func (x *RuntimeMountCredentials) GetMountPath() string { if x != nil { return x.MountPath } return "" } func (x *RuntimeMountCredentials) GetConfig() *MountPointConfig { if x != nil { return x.Config } return nil } type GetContainerRuntimeCredentialsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkspaceId string `protobuf:"bytes,1,opt,name=workspace_id,json=workspaceId,proto3" json:"workspace_id,omitempty"` StubId string `protobuf:"bytes,2,opt,name=stub_id,json=stubId,proto3" json:"stub_id,omitempty"` ContainerId string `protobuf:"bytes,3,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` SecretNames []string `protobuf:"bytes,4,rep,name=secret_names,json=secretNames,proto3" json:"secret_names,omitempty"` RuntimeToken bool `protobuf:"varint,5,opt,name=runtime_token,json=runtimeToken,proto3" json:"runtime_token,omitempty"` WorkspaceStorage bool `protobuf:"varint,6,opt,name=workspace_storage,json=workspaceStorage,proto3" json:"workspace_storage,omitempty"` MountCredentials []*RuntimeMountCredentialRequest `protobuf:"bytes,7,rep,name=mount_credentials,json=mountCredentials,proto3" json:"mount_credentials,omitempty"` BindingNames []string `protobuf:"bytes,8,rep,name=binding_names,json=bindingNames,proto3" json:"binding_names,omitempty"` } func (x *GetContainerRuntimeCredentialsRequest) Reset() { *x = GetContainerRuntimeCredentialsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerRuntimeCredentialsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerRuntimeCredentialsRequest) ProtoMessage() {} func (x *GetContainerRuntimeCredentialsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[57] 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 GetContainerRuntimeCredentialsRequest.ProtoReflect.Descriptor instead. func (*GetContainerRuntimeCredentialsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{57} } func (x *GetContainerRuntimeCredentialsRequest) GetWorkspaceId() string { if x != nil { return x.WorkspaceId } return "" } func (x *GetContainerRuntimeCredentialsRequest) GetStubId() string { if x != nil { return x.StubId } return "" } func (x *GetContainerRuntimeCredentialsRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *GetContainerRuntimeCredentialsRequest) GetSecretNames() []string { if x != nil { return x.SecretNames } return nil } func (x *GetContainerRuntimeCredentialsRequest) GetRuntimeToken() bool { if x != nil { return x.RuntimeToken } return false } func (x *GetContainerRuntimeCredentialsRequest) GetWorkspaceStorage() bool { if x != nil { return x.WorkspaceStorage } return false } func (x *GetContainerRuntimeCredentialsRequest) GetMountCredentials() []*RuntimeMountCredentialRequest { if x != nil { return x.MountCredentials } return nil } func (x *GetContainerRuntimeCredentialsRequest) GetBindingNames() []string { if x != nil { return x.BindingNames } return nil } type GetContainerRuntimeCredentialsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` Env []string `protobuf:"bytes,3,rep,name=env,proto3" json:"env,omitempty"` WorkspaceStorage *CacheWorkspaceStorageCredentials `protobuf:"bytes,4,opt,name=workspace_storage,json=workspaceStorage,proto3" json:"workspace_storage,omitempty"` MountCredentials []*RuntimeMountCredentials `protobuf:"bytes,5,rep,name=mount_credentials,json=mountCredentials,proto3" json:"mount_credentials,omitempty"` SecretBindings []*SecretBinding `protobuf:"bytes,6,rep,name=secret_bindings,json=secretBindings,proto3" json:"secret_bindings,omitempty"` } func (x *GetContainerRuntimeCredentialsResponse) Reset() { *x = GetContainerRuntimeCredentialsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerRuntimeCredentialsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerRuntimeCredentialsResponse) ProtoMessage() {} func (x *GetContainerRuntimeCredentialsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[58] 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 GetContainerRuntimeCredentialsResponse.ProtoReflect.Descriptor instead. func (*GetContainerRuntimeCredentialsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{58} } func (x *GetContainerRuntimeCredentialsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetContainerRuntimeCredentialsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *GetContainerRuntimeCredentialsResponse) GetEnv() []string { if x != nil { return x.Env } return nil } func (x *GetContainerRuntimeCredentialsResponse) GetWorkspaceStorage() *CacheWorkspaceStorageCredentials { if x != nil { return x.WorkspaceStorage } return nil } func (x *GetContainerRuntimeCredentialsResponse) GetMountCredentials() []*RuntimeMountCredentials { if x != nil { return x.MountCredentials } return nil } func (x *GetContainerRuntimeCredentialsResponse) GetSecretBindings() []*SecretBinding { if x != nil { return x.SecretBindings } return nil } type PruneStaleCacheCheckpointsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` ActiveStubIds []string `protobuf:"bytes,2,rep,name=active_stub_ids,json=activeStubIds,proto3" json:"active_stub_ids,omitempty"` } func (x *PruneStaleCacheCheckpointsRequest) Reset() { *x = PruneStaleCacheCheckpointsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PruneStaleCacheCheckpointsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PruneStaleCacheCheckpointsRequest) ProtoMessage() {} func (x *PruneStaleCacheCheckpointsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[59] 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 PruneStaleCacheCheckpointsRequest.ProtoReflect.Descriptor instead. func (*PruneStaleCacheCheckpointsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{59} } func (x *PruneStaleCacheCheckpointsRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *PruneStaleCacheCheckpointsRequest) GetActiveStubIds() []string { if x != nil { return x.ActiveStubIds } return nil } type PruneStaleCacheCheckpointsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` Pruned int32 `protobuf:"varint,3,opt,name=pruned,proto3" json:"pruned,omitempty"` } func (x *PruneStaleCacheCheckpointsResponse) Reset() { *x = PruneStaleCacheCheckpointsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PruneStaleCacheCheckpointsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PruneStaleCacheCheckpointsResponse) ProtoMessage() {} func (x *PruneStaleCacheCheckpointsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[60] 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 PruneStaleCacheCheckpointsResponse.ProtoReflect.Descriptor instead. func (*PruneStaleCacheCheckpointsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{60} } func (x *PruneStaleCacheCheckpointsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *PruneStaleCacheCheckpointsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *PruneStaleCacheCheckpointsResponse) GetPruned() int32 { if x != nil { return x.Pruned } return 0 } type RemoveCacheStoreFromContentLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` SourcePath string `protobuf:"bytes,2,opt,name=source_path,json=sourcePath,proto3" json:"source_path,omitempty"` } func (x *RemoveCacheStoreFromContentLockRequest) Reset() { *x = RemoveCacheStoreFromContentLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheStoreFromContentLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheStoreFromContentLockRequest) ProtoMessage() {} func (x *RemoveCacheStoreFromContentLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[61] 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 RemoveCacheStoreFromContentLockRequest.ProtoReflect.Descriptor instead. func (*RemoveCacheStoreFromContentLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{61} } func (x *RemoveCacheStoreFromContentLockRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *RemoveCacheStoreFromContentLockRequest) GetSourcePath() string { if x != nil { return x.SourcePath } return "" } type RemoveCacheStoreFromContentLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveCacheStoreFromContentLockResponse) Reset() { *x = RemoveCacheStoreFromContentLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheStoreFromContentLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheStoreFromContentLockResponse) ProtoMessage() {} func (x *RemoveCacheStoreFromContentLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[62] 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 RemoveCacheStoreFromContentLockResponse.ProtoReflect.Descriptor instead. func (*RemoveCacheStoreFromContentLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{62} } func (x *RemoveCacheStoreFromContentLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveCacheStoreFromContentLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RefreshCacheStoreFromContentLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Locality string `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` SourcePath string `protobuf:"bytes,2,opt,name=source_path,json=sourcePath,proto3" json:"source_path,omitempty"` } func (x *RefreshCacheStoreFromContentLockRequest) Reset() { *x = RefreshCacheStoreFromContentLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RefreshCacheStoreFromContentLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RefreshCacheStoreFromContentLockRequest) ProtoMessage() {} func (x *RefreshCacheStoreFromContentLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[63] 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 RefreshCacheStoreFromContentLockRequest.ProtoReflect.Descriptor instead. func (*RefreshCacheStoreFromContentLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{63} } func (x *RefreshCacheStoreFromContentLockRequest) GetLocality() string { if x != nil { return x.Locality } return "" } func (x *RefreshCacheStoreFromContentLockRequest) GetSourcePath() string { if x != nil { return x.SourcePath } return "" } type RefreshCacheStoreFromContentLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RefreshCacheStoreFromContentLockResponse) Reset() { *x = RefreshCacheStoreFromContentLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RefreshCacheStoreFromContentLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RefreshCacheStoreFromContentLockResponse) ProtoMessage() {} func (x *RefreshCacheStoreFromContentLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[64] 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 RefreshCacheStoreFromContentLockResponse.ProtoReflect.Descriptor instead. func (*RefreshCacheStoreFromContentLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{64} } func (x *RefreshCacheStoreFromContentLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RefreshCacheStoreFromContentLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type WorkerCacheFSMetadata struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Pid string `protobuf:"bytes,1,opt,name=pid,proto3" json:"pid,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` Path string `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"` Hash string `protobuf:"bytes,5,opt,name=hash,proto3" json:"hash,omitempty"` Ino uint64 `protobuf:"varint,6,opt,name=ino,proto3" json:"ino,omitempty"` Size uint64 `protobuf:"varint,7,opt,name=size,proto3" json:"size,omitempty"` Blocks uint64 `protobuf:"varint,8,opt,name=blocks,proto3" json:"blocks,omitempty"` Atime uint64 `protobuf:"varint,9,opt,name=atime,proto3" json:"atime,omitempty"` Mtime uint64 `protobuf:"varint,10,opt,name=mtime,proto3" json:"mtime,omitempty"` Ctime uint64 `protobuf:"varint,11,opt,name=ctime,proto3" json:"ctime,omitempty"` Atimensec uint32 `protobuf:"varint,12,opt,name=atimensec,proto3" json:"atimensec,omitempty"` Mtimensec uint32 `protobuf:"varint,13,opt,name=mtimensec,proto3" json:"mtimensec,omitempty"` Ctimensec uint32 `protobuf:"varint,14,opt,name=ctimensec,proto3" json:"ctimensec,omitempty"` Mode uint32 `protobuf:"varint,15,opt,name=mode,proto3" json:"mode,omitempty"` Nlink uint32 `protobuf:"varint,16,opt,name=nlink,proto3" json:"nlink,omitempty"` Rdev uint32 `protobuf:"varint,17,opt,name=rdev,proto3" json:"rdev,omitempty"` Blksize uint32 `protobuf:"varint,18,opt,name=blksize,proto3" json:"blksize,omitempty"` Padding uint32 `protobuf:"varint,19,opt,name=padding,proto3" json:"padding,omitempty"` Uid uint32 `protobuf:"varint,20,opt,name=uid,proto3" json:"uid,omitempty"` Gid uint32 `protobuf:"varint,21,opt,name=gid,proto3" json:"gid,omitempty"` Gen uint64 `protobuf:"varint,22,opt,name=gen,proto3" json:"gen,omitempty"` } func (x *WorkerCacheFSMetadata) Reset() { *x = WorkerCacheFSMetadata{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WorkerCacheFSMetadata) String() string { return protoimpl.X.MessageStringOf(x) } func (*WorkerCacheFSMetadata) ProtoMessage() {} func (x *WorkerCacheFSMetadata) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[65] 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 WorkerCacheFSMetadata.ProtoReflect.Descriptor instead. func (*WorkerCacheFSMetadata) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{65} } func (x *WorkerCacheFSMetadata) GetPid() string { if x != nil { return x.Pid } return "" } func (x *WorkerCacheFSMetadata) GetId() string { if x != nil { return x.Id } return "" } func (x *WorkerCacheFSMetadata) GetName() string { if x != nil { return x.Name } return "" } func (x *WorkerCacheFSMetadata) GetPath() string { if x != nil { return x.Path } return "" } func (x *WorkerCacheFSMetadata) GetHash() string { if x != nil { return x.Hash } return "" } func (x *WorkerCacheFSMetadata) GetIno() uint64 { if x != nil { return x.Ino } return 0 } func (x *WorkerCacheFSMetadata) GetSize() uint64 { if x != nil { return x.Size } return 0 } func (x *WorkerCacheFSMetadata) GetBlocks() uint64 { if x != nil { return x.Blocks } return 0 } func (x *WorkerCacheFSMetadata) GetAtime() uint64 { if x != nil { return x.Atime } return 0 } func (x *WorkerCacheFSMetadata) GetMtime() uint64 { if x != nil { return x.Mtime } return 0 } func (x *WorkerCacheFSMetadata) GetCtime() uint64 { if x != nil { return x.Ctime } return 0 } func (x *WorkerCacheFSMetadata) GetAtimensec() uint32 { if x != nil { return x.Atimensec } return 0 } func (x *WorkerCacheFSMetadata) GetMtimensec() uint32 { if x != nil { return x.Mtimensec } return 0 } func (x *WorkerCacheFSMetadata) GetCtimensec() uint32 { if x != nil { return x.Ctimensec } return 0 } func (x *WorkerCacheFSMetadata) GetMode() uint32 { if x != nil { return x.Mode } return 0 } func (x *WorkerCacheFSMetadata) GetNlink() uint32 { if x != nil { return x.Nlink } return 0 } func (x *WorkerCacheFSMetadata) GetRdev() uint32 { if x != nil { return x.Rdev } return 0 } func (x *WorkerCacheFSMetadata) GetBlksize() uint32 { if x != nil { return x.Blksize } return 0 } func (x *WorkerCacheFSMetadata) GetPadding() uint32 { if x != nil { return x.Padding } return 0 } func (x *WorkerCacheFSMetadata) GetUid() uint32 { if x != nil { return x.Uid } return 0 } func (x *WorkerCacheFSMetadata) GetGid() uint32 { if x != nil { return x.Gid } return 0 } func (x *WorkerCacheFSMetadata) GetGen() uint64 { if x != nil { return x.Gen } return 0 } type SetCacheFsNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Metadata *WorkerCacheFSMetadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *SetCacheFsNodeRequest) Reset() { *x = SetCacheFsNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetCacheFsNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetCacheFsNodeRequest) ProtoMessage() {} func (x *SetCacheFsNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[66] 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 SetCacheFsNodeRequest.ProtoReflect.Descriptor instead. func (*SetCacheFsNodeRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{66} } func (x *SetCacheFsNodeRequest) GetId() string { if x != nil { return x.Id } return "" } func (x *SetCacheFsNodeRequest) GetMetadata() *WorkerCacheFSMetadata { if x != nil { return x.Metadata } return nil } type SetCacheFsNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *SetCacheFsNodeResponse) Reset() { *x = SetCacheFsNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetCacheFsNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetCacheFsNodeResponse) ProtoMessage() {} func (x *SetCacheFsNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[67] 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 SetCacheFsNodeResponse.ProtoReflect.Descriptor instead. func (*SetCacheFsNodeResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{67} } func (x *SetCacheFsNodeResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetCacheFsNodeResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type GetCacheFsNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *GetCacheFsNodeRequest) Reset() { *x = GetCacheFsNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCacheFsNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCacheFsNodeRequest) ProtoMessage() {} func (x *GetCacheFsNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[68] 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 GetCacheFsNodeRequest.ProtoReflect.Descriptor instead. func (*GetCacheFsNodeRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{68} } func (x *GetCacheFsNodeRequest) GetId() string { if x != nil { return x.Id } return "" } type GetCacheFsNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Metadata *WorkerCacheFSMetadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *GetCacheFsNodeResponse) Reset() { *x = GetCacheFsNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCacheFsNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCacheFsNodeResponse) ProtoMessage() {} func (x *GetCacheFsNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[69] 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 GetCacheFsNodeResponse.ProtoReflect.Descriptor instead. func (*GetCacheFsNodeResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{69} } func (x *GetCacheFsNodeResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetCacheFsNodeResponse) GetMetadata() *WorkerCacheFSMetadata { if x != nil { return x.Metadata } return nil } func (x *GetCacheFsNodeResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type AddCacheFsNodeChildRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Pid string `protobuf:"bytes,1,opt,name=pid,proto3" json:"pid,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` } func (x *AddCacheFsNodeChildRequest) Reset() { *x = AddCacheFsNodeChildRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddCacheFsNodeChildRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddCacheFsNodeChildRequest) ProtoMessage() {} func (x *AddCacheFsNodeChildRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[70] 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 AddCacheFsNodeChildRequest.ProtoReflect.Descriptor instead. func (*AddCacheFsNodeChildRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{70} } func (x *AddCacheFsNodeChildRequest) GetPid() string { if x != nil { return x.Pid } return "" } func (x *AddCacheFsNodeChildRequest) GetId() string { if x != nil { return x.Id } return "" } type AddCacheFsNodeChildResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *AddCacheFsNodeChildResponse) Reset() { *x = AddCacheFsNodeChildResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddCacheFsNodeChildResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddCacheFsNodeChildResponse) ProtoMessage() {} func (x *AddCacheFsNodeChildResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[71] 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 AddCacheFsNodeChildResponse.ProtoReflect.Descriptor instead. func (*AddCacheFsNodeChildResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{71} } func (x *AddCacheFsNodeChildResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *AddCacheFsNodeChildResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveCacheFsNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *RemoveCacheFsNodeRequest) Reset() { *x = RemoveCacheFsNodeRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheFsNodeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheFsNodeRequest) ProtoMessage() {} func (x *RemoveCacheFsNodeRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[72] 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 RemoveCacheFsNodeRequest.ProtoReflect.Descriptor instead. func (*RemoveCacheFsNodeRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{72} } func (x *RemoveCacheFsNodeRequest) GetId() string { if x != nil { return x.Id } return "" } type RemoveCacheFsNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveCacheFsNodeResponse) Reset() { *x = RemoveCacheFsNodeResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheFsNodeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheFsNodeResponse) ProtoMessage() {} func (x *RemoveCacheFsNodeResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[73] 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 RemoveCacheFsNodeResponse.ProtoReflect.Descriptor instead. func (*RemoveCacheFsNodeResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{73} } func (x *RemoveCacheFsNodeResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveCacheFsNodeResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveCacheFsNodeChildRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Pid string `protobuf:"bytes,1,opt,name=pid,proto3" json:"pid,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` } func (x *RemoveCacheFsNodeChildRequest) Reset() { *x = RemoveCacheFsNodeChildRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheFsNodeChildRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheFsNodeChildRequest) ProtoMessage() {} func (x *RemoveCacheFsNodeChildRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[74] 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 RemoveCacheFsNodeChildRequest.ProtoReflect.Descriptor instead. func (*RemoveCacheFsNodeChildRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{74} } func (x *RemoveCacheFsNodeChildRequest) GetPid() string { if x != nil { return x.Pid } return "" } func (x *RemoveCacheFsNodeChildRequest) GetId() string { if x != nil { return x.Id } return "" } type RemoveCacheFsNodeChildResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveCacheFsNodeChildResponse) Reset() { *x = RemoveCacheFsNodeChildResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveCacheFsNodeChildResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveCacheFsNodeChildResponse) ProtoMessage() {} func (x *RemoveCacheFsNodeChildResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[75] 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 RemoveCacheFsNodeChildResponse.ProtoReflect.Descriptor instead. func (*RemoveCacheFsNodeChildResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{75} } func (x *RemoveCacheFsNodeChildResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveCacheFsNodeChildResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type GetCacheFsNodeChildrenRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *GetCacheFsNodeChildrenRequest) Reset() { *x = GetCacheFsNodeChildrenRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCacheFsNodeChildrenRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCacheFsNodeChildrenRequest) ProtoMessage() {} func (x *GetCacheFsNodeChildrenRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[76] 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 GetCacheFsNodeChildrenRequest.ProtoReflect.Descriptor instead. func (*GetCacheFsNodeChildrenRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{76} } func (x *GetCacheFsNodeChildrenRequest) GetId() string { if x != nil { return x.Id } return "" } type GetCacheFsNodeChildrenResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Children []*WorkerCacheFSMetadata `protobuf:"bytes,2,rep,name=children,proto3" json:"children,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *GetCacheFsNodeChildrenResponse) Reset() { *x = GetCacheFsNodeChildrenResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCacheFsNodeChildrenResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCacheFsNodeChildrenResponse) ProtoMessage() {} func (x *GetCacheFsNodeChildrenResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[77] 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 GetCacheFsNodeChildrenResponse.ProtoReflect.Descriptor instead. func (*GetCacheFsNodeChildrenResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{77} } func (x *GetCacheFsNodeChildrenResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetCacheFsNodeChildrenResponse) GetChildren() []*WorkerCacheFSMetadata { if x != nil { return x.Children } return nil } func (x *GetCacheFsNodeChildrenResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type SetNetworkLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` Ttl int32 `protobuf:"varint,2,opt,name=ttl,proto3" json:"ttl,omitempty"` Retries int32 `protobuf:"varint,3,opt,name=retries,proto3" json:"retries,omitempty"` } func (x *SetNetworkLockRequest) Reset() { *x = SetNetworkLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetNetworkLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetNetworkLockRequest) ProtoMessage() {} func (x *SetNetworkLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[78] 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 SetNetworkLockRequest.ProtoReflect.Descriptor instead. func (*SetNetworkLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{78} } func (x *SetNetworkLockRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } func (x *SetNetworkLockRequest) GetTtl() int32 { if x != nil { return x.Ttl } return 0 } func (x *SetNetworkLockRequest) GetRetries() int32 { if x != nil { return x.Retries } return 0 } type SetNetworkLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *SetNetworkLockResponse) Reset() { *x = SetNetworkLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetNetworkLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetNetworkLockResponse) ProtoMessage() {} func (x *SetNetworkLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[79] 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 SetNetworkLockResponse.ProtoReflect.Descriptor instead. func (*SetNetworkLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{79} } func (x *SetNetworkLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetNetworkLockResponse) GetToken() string { if x != nil { return x.Token } return "" } func (x *SetNetworkLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveNetworkLockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token,omitempty"` } func (x *RemoveNetworkLockRequest) Reset() { *x = RemoveNetworkLockRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveNetworkLockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveNetworkLockRequest) ProtoMessage() {} func (x *RemoveNetworkLockRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[80] 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 RemoveNetworkLockRequest.ProtoReflect.Descriptor instead. func (*RemoveNetworkLockRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{80} } func (x *RemoveNetworkLockRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } func (x *RemoveNetworkLockRequest) GetToken() string { if x != nil { return x.Token } return "" } type RemoveNetworkLockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveNetworkLockResponse) Reset() { *x = RemoveNetworkLockResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveNetworkLockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveNetworkLockResponse) ProtoMessage() {} func (x *RemoveNetworkLockResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[81] 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 RemoveNetworkLockResponse.ProtoReflect.Descriptor instead. func (*RemoveNetworkLockResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{81} } func (x *RemoveNetworkLockResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveNetworkLockResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type SetContainerIpRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` IpAddress string `protobuf:"bytes,3,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` } func (x *SetContainerIpRequest) Reset() { *x = SetContainerIpRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetContainerIpRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetContainerIpRequest) ProtoMessage() {} func (x *SetContainerIpRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[82] 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 SetContainerIpRequest.ProtoReflect.Descriptor instead. func (*SetContainerIpRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{82} } func (x *SetContainerIpRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } func (x *SetContainerIpRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *SetContainerIpRequest) GetIpAddress() string { if x != nil { return x.IpAddress } return "" } type SetContainerIpResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *SetContainerIpResponse) Reset() { *x = SetContainerIpResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SetContainerIpResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetContainerIpResponse) ProtoMessage() {} func (x *SetContainerIpResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[83] 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 SetContainerIpResponse.ProtoReflect.Descriptor instead. func (*SetContainerIpResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{83} } func (x *SetContainerIpResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *SetContainerIpResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type MoveContainerIpRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` FromContainerId string `protobuf:"bytes,2,opt,name=from_container_id,json=fromContainerId,proto3" json:"from_container_id,omitempty"` ToContainerId string `protobuf:"bytes,3,opt,name=to_container_id,json=toContainerId,proto3" json:"to_container_id,omitempty"` IpAddress string `protobuf:"bytes,4,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` } func (x *MoveContainerIpRequest) Reset() { *x = MoveContainerIpRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MoveContainerIpRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MoveContainerIpRequest) ProtoMessage() {} func (x *MoveContainerIpRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[84] 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 MoveContainerIpRequest.ProtoReflect.Descriptor instead. func (*MoveContainerIpRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{84} } func (x *MoveContainerIpRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } func (x *MoveContainerIpRequest) GetFromContainerId() string { if x != nil { return x.FromContainerId } return "" } func (x *MoveContainerIpRequest) GetToContainerId() string { if x != nil { return x.ToContainerId } return "" } func (x *MoveContainerIpRequest) GetIpAddress() string { if x != nil { return x.IpAddress } return "" } type MoveContainerIpResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *MoveContainerIpResponse) Reset() { *x = MoveContainerIpResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MoveContainerIpResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MoveContainerIpResponse) ProtoMessage() {} func (x *MoveContainerIpResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[85] 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 MoveContainerIpResponse.ProtoReflect.Descriptor instead. func (*MoveContainerIpResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{85} } func (x *MoveContainerIpResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *MoveContainerIpResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type GetContainerIpRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` } func (x *GetContainerIpRequest) Reset() { *x = GetContainerIpRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerIpRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerIpRequest) ProtoMessage() {} func (x *GetContainerIpRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[86] 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 GetContainerIpRequest.ProtoReflect.Descriptor instead. func (*GetContainerIpRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{86} } func (x *GetContainerIpRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } func (x *GetContainerIpRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } type GetContainerIpResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *GetContainerIpResponse) Reset() { *x = GetContainerIpResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerIpResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerIpResponse) ProtoMessage() {} func (x *GetContainerIpResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[87] 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 GetContainerIpResponse.ProtoReflect.Descriptor instead. func (*GetContainerIpResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{87} } func (x *GetContainerIpResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetContainerIpResponse) GetIpAddress() string { if x != nil { return x.IpAddress } return "" } func (x *GetContainerIpResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type GetContainerIpsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` } func (x *GetContainerIpsRequest) Reset() { *x = GetContainerIpsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerIpsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerIpsRequest) ProtoMessage() {} func (x *GetContainerIpsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[88] 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 GetContainerIpsRequest.ProtoReflect.Descriptor instead. func (*GetContainerIpsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{88} } func (x *GetContainerIpsRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } type GetContainerIpsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Ips []string `protobuf:"bytes,2,rep,name=ips,proto3" json:"ips,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *GetContainerIpsResponse) Reset() { *x = GetContainerIpsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerIpsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerIpsResponse) ProtoMessage() {} func (x *GetContainerIpsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[89] 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 GetContainerIpsResponse.ProtoReflect.Descriptor instead. func (*GetContainerIpsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{89} } func (x *GetContainerIpsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetContainerIpsResponse) GetIps() []string { if x != nil { return x.Ips } return nil } func (x *GetContainerIpsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type ContainerIpAssignment struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` } func (x *ContainerIpAssignment) Reset() { *x = ContainerIpAssignment{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ContainerIpAssignment) String() string { return protoimpl.X.MessageStringOf(x) } func (*ContainerIpAssignment) ProtoMessage() {} func (x *ContainerIpAssignment) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[90] 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 ContainerIpAssignment.ProtoReflect.Descriptor instead. func (*ContainerIpAssignment) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{90} } func (x *ContainerIpAssignment) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *ContainerIpAssignment) GetIpAddress() string { if x != nil { return x.IpAddress } return "" } type GetContainerIpAssignmentsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` } func (x *GetContainerIpAssignmentsRequest) Reset() { *x = GetContainerIpAssignmentsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerIpAssignmentsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerIpAssignmentsRequest) ProtoMessage() {} func (x *GetContainerIpAssignmentsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[91] 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 GetContainerIpAssignmentsRequest.ProtoReflect.Descriptor instead. func (*GetContainerIpAssignmentsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{91} } func (x *GetContainerIpAssignmentsRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } type GetContainerIpAssignmentsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Assignments []*ContainerIpAssignment `protobuf:"bytes,2,rep,name=assignments,proto3" json:"assignments,omitempty"` ErrorMsg string `protobuf:"bytes,3,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *GetContainerIpAssignmentsResponse) Reset() { *x = GetContainerIpAssignmentsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetContainerIpAssignmentsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetContainerIpAssignmentsResponse) ProtoMessage() {} func (x *GetContainerIpAssignmentsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[92] 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 GetContainerIpAssignmentsResponse.ProtoReflect.Descriptor instead. func (*GetContainerIpAssignmentsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{92} } func (x *GetContainerIpAssignmentsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetContainerIpAssignmentsResponse) GetAssignments() []*ContainerIpAssignment { if x != nil { return x.Assignments } return nil } func (x *GetContainerIpAssignmentsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type RemoveContainerIpRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkPrefix string `protobuf:"bytes,1,opt,name=network_prefix,json=networkPrefix,proto3" json:"network_prefix,omitempty"` ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` } func (x *RemoveContainerIpRequest) Reset() { *x = RemoveContainerIpRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveContainerIpRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveContainerIpRequest) ProtoMessage() {} func (x *RemoveContainerIpRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[93] 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 RemoveContainerIpRequest.ProtoReflect.Descriptor instead. func (*RemoveContainerIpRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{93} } func (x *RemoveContainerIpRequest) GetNetworkPrefix() string { if x != nil { return x.NetworkPrefix } return "" } func (x *RemoveContainerIpRequest) GetContainerId() string { if x != nil { return x.ContainerId } return "" } type RemoveContainerIpResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *RemoveContainerIpResponse) Reset() { *x = RemoveContainerIpResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RemoveContainerIpResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveContainerIpResponse) ProtoMessage() {} func (x *RemoveContainerIpResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[94] 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 RemoveContainerIpResponse.ProtoReflect.Descriptor instead. func (*RemoveContainerIpResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{94} } func (x *RemoveContainerIpResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *RemoveContainerIpResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type PushContainerLifecycleEventsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` Events [][]byte `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"` } func (x *PushContainerLifecycleEventsRequest) Reset() { *x = PushContainerLifecycleEventsRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PushContainerLifecycleEventsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PushContainerLifecycleEventsRequest) ProtoMessage() {} func (x *PushContainerLifecycleEventsRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[95] 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 PushContainerLifecycleEventsRequest.ProtoReflect.Descriptor instead. func (*PushContainerLifecycleEventsRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{95} } func (x *PushContainerLifecycleEventsRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } func (x *PushContainerLifecycleEventsRequest) GetEvents() [][]byte { if x != nil { return x.Events } return nil } type PushContainerLifecycleEventsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } func (x *PushContainerLifecycleEventsResponse) Reset() { *x = PushContainerLifecycleEventsResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PushContainerLifecycleEventsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PushContainerLifecycleEventsResponse) ProtoMessage() {} func (x *PushContainerLifecycleEventsResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[96] 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 PushContainerLifecycleEventsResponse.ProtoReflect.Descriptor instead. func (*PushContainerLifecycleEventsResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{96} } func (x *PushContainerLifecycleEventsResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *PushContainerLifecycleEventsResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } type GetWorkerMeteringConfigRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` } func (x *GetWorkerMeteringConfigRequest) Reset() { *x = GetWorkerMeteringConfigRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetWorkerMeteringConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetWorkerMeteringConfigRequest) ProtoMessage() {} func (x *GetWorkerMeteringConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[97] 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 GetWorkerMeteringConfigRequest.ProtoReflect.Descriptor instead. func (*GetWorkerMeteringConfigRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{97} } func (x *GetWorkerMeteringConfigRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } type GetWorkerMeteringConfigResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // The control plane's metering configuration (types.MonitoringConfig.Metering) as JSON. MeteringJson string `protobuf:"bytes,3,opt,name=metering_json,json=meteringJson,proto3" json:"metering_json,omitempty"` } func (x *GetWorkerMeteringConfigResponse) Reset() { *x = GetWorkerMeteringConfigResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetWorkerMeteringConfigResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetWorkerMeteringConfigResponse) ProtoMessage() {} func (x *GetWorkerMeteringConfigResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[98] 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 GetWorkerMeteringConfigResponse.ProtoReflect.Descriptor instead. func (*GetWorkerMeteringConfigResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{98} } func (x *GetWorkerMeteringConfigResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetWorkerMeteringConfigResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *GetWorkerMeteringConfigResponse) GetMeteringJson() string { if x != nil { return x.MeteringJson } return "" } type GetWorkerServiceProxyConfigRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields WorkerId string `protobuf:"bytes,1,opt,name=worker_id,json=workerId,proto3" json:"worker_id,omitempty"` } func (x *GetWorkerServiceProxyConfigRequest) Reset() { *x = GetWorkerServiceProxyConfigRequest{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetWorkerServiceProxyConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetWorkerServiceProxyConfigRequest) ProtoMessage() {} func (x *GetWorkerServiceProxyConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[99] 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 GetWorkerServiceProxyConfigRequest.ProtoReflect.Descriptor instead. func (*GetWorkerServiceProxyConfigRequest) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{99} } func (x *GetWorkerServiceProxyConfigRequest) GetWorkerId() string { if x != nil { return x.WorkerId } return "" } type GetWorkerServiceProxyConfigResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` // The gateway's TCP listener as the public reaches it. ExternalHost string `protobuf:"bytes,3,opt,name=external_host,json=externalHost,proto3" json:"external_host,omitempty"` ExternalPort int32 `protobuf:"varint,4,opt,name=external_port,json=externalPort,proto3" json:"external_port,omitempty"` // Whether its certificate is publicly trusted, so workers verify it. VerifyTls bool `protobuf:"varint,5,opt,name=verify_tls,json=verifyTls,proto3" json:"verify_tls,omitempty"` } func (x *GetWorkerServiceProxyConfigResponse) Reset() { *x = GetWorkerServiceProxyConfigResponse{} if protoimpl.UnsafeEnabled { mi := &file_worker_repo_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetWorkerServiceProxyConfigResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetWorkerServiceProxyConfigResponse) ProtoMessage() {} func (x *GetWorkerServiceProxyConfigResponse) ProtoReflect() protoreflect.Message { mi := &file_worker_repo_proto_msgTypes[100] 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 GetWorkerServiceProxyConfigResponse.ProtoReflect.Descriptor instead. func (*GetWorkerServiceProxyConfigResponse) Descriptor() ([]byte, []int) { return file_worker_repo_proto_rawDescGZIP(), []int{100} } func (x *GetWorkerServiceProxyConfigResponse) GetOk() bool { if x != nil { return x.Ok } return false } func (x *GetWorkerServiceProxyConfigResponse) GetErrorMsg() string { if x != nil { return x.ErrorMsg } return "" } func (x *GetWorkerServiceProxyConfigResponse) GetExternalHost() string { if x != nil { return x.ExternalHost } return "" } func (x *GetWorkerServiceProxyConfigResponse) GetExternalPort() int32 { if x != nil { return x.ExternalPort } return 0 } func (x *GetWorkerServiceProxyConfigResponse) GetVerifyTls() bool { if x != nil { return x.VerifyTls } return false } var File_worker_repo_proto protoreflect.FileDescriptor var file_worker_repo_proto_rawDesc = []byte{ 0x0a, 0x11, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0b, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3d, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0xfd, 0x01, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x44, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x40, 0x0a, 0x1c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x22, 0x38, 0x0a, 0x19, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0xa1, 0x01, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x0e, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x73, 0x74, 0x6f, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x0a, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x09, 0x73, 0x74, 0x6f, 0x70, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x65, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x33, 0x0a, 0x0e, 0x53, 0x74, 0x6f, 0x70, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x22, 0x51, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x18, 0x53, 0x65, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x6a, 0x0a, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x4a, 0x0a, 0x1b, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xc4, 0x01, 0x0a, 0x1b, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x6f, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x64, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6f, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x4b, 0x0a, 0x1c, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x6f, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xfc, 0x02, 0x0a, 0x15, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x64, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6f, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x48, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3f, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x53, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0d, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x31, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x82, 0x02, 0x0a, 0x16, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x22, 0xa2, 0x01, 0x0a, 0x20, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x64, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6f, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x50, 0x0a, 0x21, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x33, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0x6b, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x25, 0x0a, 0x06, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x06, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x5b, 0x0a, 0x1c, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x0a, 0x1d, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x4b, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x72, 0x64, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x63, 0x6f, 0x72, 0x64, 0x6f, 0x6e, 0x22, 0x44, 0x0a, 0x15, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x32, 0x0a, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0x43, 0x0a, 0x14, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xa9, 0x01, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x44, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xd9, 0x01, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x64, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x1c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x70, 0x75, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x70, 0x75, 0x54, 0x69, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0x6e, 0x0a, 0x1a, 0x53, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6f, 0x6f, 0x6c, 0x48, 0x65, 0x61, 0x64, 0x72, 0x6f, 0x6f, 0x6d, 0x22, 0xc8, 0x02, 0x0a, 0x14, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x50, 0x61, 0x74, 0x68, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x50, 0x63, 0x74, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x22, 0x66, 0x0a, 0x18, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x48, 0x0a, 0x19, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xa6, 0x01, 0x0a, 0x1a, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x22, 0x4a, 0x0a, 0x1b, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x50, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x22, 0x72, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x2b, 0x0a, 0x05, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x48, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x1a, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x4b, 0x0a, 0x1c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x22, 0x4c, 0x0a, 0x1d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x62, 0x0a, 0x23, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x53, 0x0a, 0x24, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x73, 0x0a, 0x0f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x75, 0x62, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x55, 0x6e, 0x69, 0x78, 0x22, 0x94, 0x01, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x49, 0x0a, 0x1a, 0x41, 0x64, 0x64, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x70, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x73, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x26, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x22, 0x74, 0x0a, 0x1c, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x66, 0x0a, 0x1d, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x22, 0x96, 0x01, 0x0a, 0x20, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x74, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x74, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x6c, 0x0a, 0x21, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x75, 0x0a, 0x20, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x50, 0x0a, 0x21, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xe6, 0x01, 0x0a, 0x20, 0x43, 0x61, 0x63, 0x68, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x87, 0x02, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x17, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, 0x90, 0x05, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x31, 0x0a, 0x14, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x4e, 0x0a, 0x11, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x55, 0x0a, 0x15, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x13, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x44, 0x61, 0x74, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x37, 0x0a, 0x18, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x5f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x22, 0x5f, 0x0a, 0x1d, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x69, 0x0a, 0x17, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xed, 0x02, 0x0a, 0x25, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x75, 0x62, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x4b, 0x0a, 0x11, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x10, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xbd, 0x02, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x4e, 0x0a, 0x11, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x10, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3d, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x67, 0x0a, 0x21, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x74, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x74, 0x75, 0x62, 0x49, 0x64, 0x73, 0x22, 0x69, 0x0a, 0x22, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x75, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x72, 0x75, 0x6e, 0x65, 0x64, 0x22, 0x65, 0x0a, 0x26, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x56, 0x0a, 0x27, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x66, 0x0a, 0x27, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x57, 0x0a, 0x28, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xf7, 0x03, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x53, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x6e, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x69, 0x6e, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x61, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x64, 0x65, 0x76, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x64, 0x65, 0x76, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x6b, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x6c, 0x6b, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x65, 0x6e, 0x18, 0x16, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x65, 0x6e, 0x22, 0x5b, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x53, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x45, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x27, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x79, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x32, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x53, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x3e, 0x0a, 0x1a, 0x41, 0x64, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4a, 0x0a, 0x1b, 0x41, 0x64, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x2a, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x41, 0x0a, 0x1d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4d, 0x0a, 0x1e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x2f, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x81, 0x01, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x32, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x53, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x6a, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x57, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x48, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x80, 0x01, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x45, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xb2, 0x01, 0x0a, 0x16, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x46, 0x0a, 0x17, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x61, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x22, 0x64, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x3f, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0x58, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x69, 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x59, 0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x49, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0x8a, 0x01, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x38, 0x0a, 0x0b, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x64, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x22, 0x48, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x5a, 0x0a, 0x23, 0x50, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x53, 0x0a, 0x24, 0x50, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x3d, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0x73, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0x41, 0x0a, 0x22, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x5f, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x54, 0x6c, 0x73, 0x32, 0xad, 0x1f, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x60, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x6d, 0x0a, 0x1c, 0x50, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x24, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5e, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6a, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x00, 0x30, 0x01, 0x12, 0x49, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x18, 0x2e, 0x53, 0x65, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x53, 0x65, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x1b, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x55, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x6f, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x6f, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x6f, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x64, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x21, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x40, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x12, 0x15, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x58, 0x0a, 0x15, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x2e, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x40, 0x0a, 0x0d, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x55, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x1c, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4f, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x1a, 0x2e, 0x53, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x53, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x11, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x19, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x13, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x1b, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4f, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x1a, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x58, 0x0a, 0x15, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6d, 0x0a, 0x1c, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x24, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x76, 0x0a, 0x1f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x27, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x79, 0x0a, 0x20, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x28, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4f, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x12, 0x1a, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x55, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x73, 0x12, 0x1c, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x58, 0x0a, 0x15, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x1d, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x74, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x64, 0x0a, 0x19, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x21, 0x2e, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x64, 0x0a, 0x19, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x21, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x64, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x21, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x73, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x26, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x67, 0x0a, 0x1a, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x22, 0x2e, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x12, 0x1b, 0x2e, 0x41, 0x64, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x41, 0x64, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x19, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5b, 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x12, 0x1e, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5b, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x1e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x46, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x16, 0x2e, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x19, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x12, 0x16, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x0f, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x12, 0x17, 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x12, 0x16, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x73, 0x12, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x64, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x12, 0x19, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x23, 0x5a, 0x21, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x65, 0x61, 0x6d, 0x2d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x65, 0x74, 0x61, 0x39, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_worker_repo_proto_rawDescOnce sync.Once file_worker_repo_proto_rawDescData = file_worker_repo_proto_rawDesc ) func file_worker_repo_proto_rawDescGZIP() []byte { file_worker_repo_proto_rawDescOnce.Do(func() { file_worker_repo_proto_rawDescData = protoimpl.X.CompressGZIP(file_worker_repo_proto_rawDescData) }) return file_worker_repo_proto_rawDescData } var file_worker_repo_proto_msgTypes = make([]protoimpl.MessageInfo, 101) var file_worker_repo_proto_goTypes = []interface{}{ (*GetNextContainerRequestRequest)(nil), // 0: GetNextContainerRequestRequest (*GetNextContainerRequestResponse)(nil), // 1: GetNextContainerRequestResponse (*StreamWorkerEventsRequest)(nil), // 2: StreamWorkerEventsRequest (*WorkerEvent)(nil), // 3: WorkerEvent (*StopContainerEvent)(nil), // 4: StopContainerEvent (*StopBuildEvent)(nil), // 5: StopBuildEvent (*SetImagePullLockRequest)(nil), // 6: SetImagePullLockRequest (*SetImagePullLockResponse)(nil), // 7: SetImagePullLockResponse (*RemoveImagePullLockRequest)(nil), // 8: RemoveImagePullLockRequest (*RemoveImagePullLockResponse)(nil), // 9: RemoveImagePullLockResponse (*AddContainerToWorkerRequest)(nil), // 10: AddContainerToWorkerRequest (*AddContainerToWorkerResponse)(nil), // 11: AddContainerToWorkerResponse (*ClaimContainerRequest)(nil), // 12: ClaimContainerRequest (*ClaimContainerResponse)(nil), // 13: ClaimContainerResponse (*RemoveContainerFromWorkerRequest)(nil), // 14: RemoveContainerFromWorkerRequest (*RemoveContainerFromWorkerResponse)(nil), // 15: RemoveContainerFromWorkerResponse (*GetWorkerByIdRequest)(nil), // 16: GetWorkerByIdRequest (*GetWorkerByIdResponse)(nil), // 17: GetWorkerByIdResponse (*ToggleWorkerAvailableRequest)(nil), // 18: ToggleWorkerAvailableRequest (*ToggleWorkerAvailableResponse)(nil), // 19: ToggleWorkerAvailableResponse (*DisableWorkerRequest)(nil), // 20: DisableWorkerRequest (*DisableWorkerResponse)(nil), // 21: DisableWorkerResponse (*RemoveWorkerRequest)(nil), // 22: RemoveWorkerRequest (*RemoveWorkerResponse)(nil), // 23: RemoveWorkerResponse (*UpdateWorkerCapacityRequest)(nil), // 24: UpdateWorkerCapacityRequest (*UpdateWorkerCapacityResponse)(nil), // 25: UpdateWorkerCapacityResponse (*SetWorkerKeepAliveRequest)(nil), // 26: SetWorkerKeepAliveRequest (*SetWorkerKeepAliveResponse)(nil), // 27: SetWorkerKeepAliveResponse (*CacheCoordinatorHost)(nil), // 28: CacheCoordinatorHost (*RegisterCacheHostRequest)(nil), // 29: RegisterCacheHostRequest (*RegisterCacheHostResponse)(nil), // 30: RegisterCacheHostResponse (*UnregisterCacheHostRequest)(nil), // 31: UnregisterCacheHostRequest (*UnregisterCacheHostResponse)(nil), // 32: UnregisterCacheHostResponse (*ListCacheHostsRequest)(nil), // 33: ListCacheHostsRequest (*ListCacheHostsResponse)(nil), // 34: ListCacheHostsResponse (*SetCacheClientLockRequest)(nil), // 35: SetCacheClientLockRequest (*SetCacheClientLockResponse)(nil), // 36: SetCacheClientLockResponse (*RemoveCacheClientLockRequest)(nil), // 37: RemoveCacheClientLockRequest (*RemoveCacheClientLockResponse)(nil), // 38: RemoveCacheClientLockResponse (*SetCacheStoreFromContentLockRequest)(nil), // 39: SetCacheStoreFromContentLockRequest (*SetCacheStoreFromContentLockResponse)(nil), // 40: SetCacheStoreFromContentLockResponse (*RecentCacheStub)(nil), // 41: RecentCacheStub (*AddRecentCacheStubRequest)(nil), // 42: AddRecentCacheStubRequest (*AddRecentCacheStubResponse)(nil), // 43: AddRecentCacheStubResponse (*ListRecentCacheStubsRequest)(nil), // 44: ListRecentCacheStubsRequest (*ListRecentCacheStubsResponse)(nil), // 45: ListRecentCacheStubsResponse (*MarkCacheStubReportedRequest)(nil), // 46: MarkCacheStubReportedRequest (*MarkCacheStubReportedResponse)(nil), // 47: MarkCacheStubReportedResponse (*AcquireCacheReconcileLockRequest)(nil), // 48: AcquireCacheReconcileLockRequest (*AcquireCacheReconcileLockResponse)(nil), // 49: AcquireCacheReconcileLockResponse (*ReleaseCacheReconcileLockRequest)(nil), // 50: ReleaseCacheReconcileLockRequest (*ReleaseCacheReconcileLockResponse)(nil), // 51: ReleaseCacheReconcileLockResponse (*CacheWorkspaceStorageCredentials)(nil), // 52: CacheWorkspaceStorageCredentials (*GetCacheOriginCredentialsRequest)(nil), // 53: GetCacheOriginCredentialsRequest (*GetCacheOriginCredentialsResponse)(nil), // 54: GetCacheOriginCredentialsResponse (*RuntimeMountCredentialRequest)(nil), // 55: RuntimeMountCredentialRequest (*RuntimeMountCredentials)(nil), // 56: RuntimeMountCredentials (*GetContainerRuntimeCredentialsRequest)(nil), // 57: GetContainerRuntimeCredentialsRequest (*GetContainerRuntimeCredentialsResponse)(nil), // 58: GetContainerRuntimeCredentialsResponse (*PruneStaleCacheCheckpointsRequest)(nil), // 59: PruneStaleCacheCheckpointsRequest (*PruneStaleCacheCheckpointsResponse)(nil), // 60: PruneStaleCacheCheckpointsResponse (*RemoveCacheStoreFromContentLockRequest)(nil), // 61: RemoveCacheStoreFromContentLockRequest (*RemoveCacheStoreFromContentLockResponse)(nil), // 62: RemoveCacheStoreFromContentLockResponse (*RefreshCacheStoreFromContentLockRequest)(nil), // 63: RefreshCacheStoreFromContentLockRequest (*RefreshCacheStoreFromContentLockResponse)(nil), // 64: RefreshCacheStoreFromContentLockResponse (*WorkerCacheFSMetadata)(nil), // 65: WorkerCacheFSMetadata (*SetCacheFsNodeRequest)(nil), // 66: SetCacheFsNodeRequest (*SetCacheFsNodeResponse)(nil), // 67: SetCacheFsNodeResponse (*GetCacheFsNodeRequest)(nil), // 68: GetCacheFsNodeRequest (*GetCacheFsNodeResponse)(nil), // 69: GetCacheFsNodeResponse (*AddCacheFsNodeChildRequest)(nil), // 70: AddCacheFsNodeChildRequest (*AddCacheFsNodeChildResponse)(nil), // 71: AddCacheFsNodeChildResponse (*RemoveCacheFsNodeRequest)(nil), // 72: RemoveCacheFsNodeRequest (*RemoveCacheFsNodeResponse)(nil), // 73: RemoveCacheFsNodeResponse (*RemoveCacheFsNodeChildRequest)(nil), // 74: RemoveCacheFsNodeChildRequest (*RemoveCacheFsNodeChildResponse)(nil), // 75: RemoveCacheFsNodeChildResponse (*GetCacheFsNodeChildrenRequest)(nil), // 76: GetCacheFsNodeChildrenRequest (*GetCacheFsNodeChildrenResponse)(nil), // 77: GetCacheFsNodeChildrenResponse (*SetNetworkLockRequest)(nil), // 78: SetNetworkLockRequest (*SetNetworkLockResponse)(nil), // 79: SetNetworkLockResponse (*RemoveNetworkLockRequest)(nil), // 80: RemoveNetworkLockRequest (*RemoveNetworkLockResponse)(nil), // 81: RemoveNetworkLockResponse (*SetContainerIpRequest)(nil), // 82: SetContainerIpRequest (*SetContainerIpResponse)(nil), // 83: SetContainerIpResponse (*MoveContainerIpRequest)(nil), // 84: MoveContainerIpRequest (*MoveContainerIpResponse)(nil), // 85: MoveContainerIpResponse (*GetContainerIpRequest)(nil), // 86: GetContainerIpRequest (*GetContainerIpResponse)(nil), // 87: GetContainerIpResponse (*GetContainerIpsRequest)(nil), // 88: GetContainerIpsRequest (*GetContainerIpsResponse)(nil), // 89: GetContainerIpsResponse (*ContainerIpAssignment)(nil), // 90: ContainerIpAssignment (*GetContainerIpAssignmentsRequest)(nil), // 91: GetContainerIpAssignmentsRequest (*GetContainerIpAssignmentsResponse)(nil), // 92: GetContainerIpAssignmentsResponse (*RemoveContainerIpRequest)(nil), // 93: RemoveContainerIpRequest (*RemoveContainerIpResponse)(nil), // 94: RemoveContainerIpResponse (*PushContainerLifecycleEventsRequest)(nil), // 95: PushContainerLifecycleEventsRequest (*PushContainerLifecycleEventsResponse)(nil), // 96: PushContainerLifecycleEventsResponse (*GetWorkerMeteringConfigRequest)(nil), // 97: GetWorkerMeteringConfigRequest (*GetWorkerMeteringConfigResponse)(nil), // 98: GetWorkerMeteringConfigResponse (*GetWorkerServiceProxyConfigRequest)(nil), // 99: GetWorkerServiceProxyConfigRequest (*GetWorkerServiceProxyConfigResponse)(nil), // 100: GetWorkerServiceProxyConfigResponse (*ContainerRequest)(nil), // 101: types.ContainerRequest (*SetWorkerAddressRequest)(nil), // 102: SetWorkerAddressRequest (*ContainerState)(nil), // 103: types.ContainerState (*Worker)(nil), // 104: types.Worker (*MountPointConfig)(nil), // 105: types.MountPointConfig (*SecretBinding)(nil), // 106: types.SecretBinding } var file_worker_repo_proto_depIdxs = []int32{ 101, // 0: GetNextContainerRequestResponse.container_request:type_name -> types.ContainerRequest 4, // 1: WorkerEvent.stop_container:type_name -> StopContainerEvent 5, // 2: WorkerEvent.stop_build:type_name -> StopBuildEvent 57, // 3: ClaimContainerRequest.credentials:type_name -> GetContainerRuntimeCredentialsRequest 102, // 4: ClaimContainerRequest.worker_address:type_name -> SetWorkerAddressRequest 84, // 5: ClaimContainerRequest.network:type_name -> MoveContainerIpRequest 103, // 6: ClaimContainerResponse.state:type_name -> types.ContainerState 58, // 7: ClaimContainerResponse.credentials:type_name -> GetContainerRuntimeCredentialsResponse 104, // 8: GetWorkerByIdResponse.worker:type_name -> types.Worker 101, // 9: UpdateWorkerCapacityRequest.container_request:type_name -> types.ContainerRequest 28, // 10: RegisterCacheHostRequest.host:type_name -> CacheCoordinatorHost 28, // 11: ListCacheHostsResponse.hosts:type_name -> CacheCoordinatorHost 41, // 12: ListRecentCacheStubsResponse.stubs:type_name -> RecentCacheStub 52, // 13: GetCacheOriginCredentialsResponse.workspace_storage:type_name -> CacheWorkspaceStorageCredentials 52, // 14: GetCacheOriginCredentialsResponse.image_archive_storage:type_name -> CacheWorkspaceStorageCredentials 105, // 15: RuntimeMountCredentials.config:type_name -> types.MountPointConfig 55, // 16: GetContainerRuntimeCredentialsRequest.mount_credentials:type_name -> RuntimeMountCredentialRequest 52, // 17: GetContainerRuntimeCredentialsResponse.workspace_storage:type_name -> CacheWorkspaceStorageCredentials 56, // 18: GetContainerRuntimeCredentialsResponse.mount_credentials:type_name -> RuntimeMountCredentials 106, // 19: GetContainerRuntimeCredentialsResponse.secret_bindings:type_name -> types.SecretBinding 65, // 20: SetCacheFsNodeRequest.metadata:type_name -> WorkerCacheFSMetadata 65, // 21: GetCacheFsNodeResponse.metadata:type_name -> WorkerCacheFSMetadata 65, // 22: GetCacheFsNodeChildrenResponse.children:type_name -> WorkerCacheFSMetadata 90, // 23: GetContainerIpAssignmentsResponse.assignments:type_name -> ContainerIpAssignment 0, // 24: WorkerRepositoryService.GetNextContainerRequest:input_type -> GetNextContainerRequestRequest 95, // 25: WorkerRepositoryService.PushContainerLifecycleEvents:input_type -> PushContainerLifecycleEventsRequest 97, // 26: WorkerRepositoryService.GetWorkerMeteringConfig:input_type -> GetWorkerMeteringConfigRequest 99, // 27: WorkerRepositoryService.GetWorkerServiceProxyConfig:input_type -> GetWorkerServiceProxyConfigRequest 2, // 28: WorkerRepositoryService.StreamWorkerEvents:input_type -> StreamWorkerEventsRequest 6, // 29: WorkerRepositoryService.SetImagePullLock:input_type -> SetImagePullLockRequest 8, // 30: WorkerRepositoryService.RemoveImagePullLock:input_type -> RemoveImagePullLockRequest 10, // 31: WorkerRepositoryService.AddContainerToWorker:input_type -> AddContainerToWorkerRequest 12, // 32: WorkerRepositoryService.ClaimContainer:input_type -> ClaimContainerRequest 14, // 33: WorkerRepositoryService.RemoveContainerFromWorker:input_type -> RemoveContainerFromWorkerRequest 16, // 34: WorkerRepositoryService.GetWorkerById:input_type -> GetWorkerByIdRequest 18, // 35: WorkerRepositoryService.ToggleWorkerAvailable:input_type -> ToggleWorkerAvailableRequest 20, // 36: WorkerRepositoryService.DisableWorker:input_type -> DisableWorkerRequest 22, // 37: WorkerRepositoryService.RemoveWorker:input_type -> RemoveWorkerRequest 24, // 38: WorkerRepositoryService.UpdateWorkerCapacity:input_type -> UpdateWorkerCapacityRequest 26, // 39: WorkerRepositoryService.SetWorkerKeepAlive:input_type -> SetWorkerKeepAliveRequest 29, // 40: WorkerRepositoryService.RegisterCacheHost:input_type -> RegisterCacheHostRequest 31, // 41: WorkerRepositoryService.UnregisterCacheHost:input_type -> UnregisterCacheHostRequest 33, // 42: WorkerRepositoryService.ListCacheHosts:input_type -> ListCacheHostsRequest 35, // 43: WorkerRepositoryService.SetCacheClientLock:input_type -> SetCacheClientLockRequest 37, // 44: WorkerRepositoryService.RemoveCacheClientLock:input_type -> RemoveCacheClientLockRequest 39, // 45: WorkerRepositoryService.SetCacheStoreFromContentLock:input_type -> SetCacheStoreFromContentLockRequest 61, // 46: WorkerRepositoryService.RemoveCacheStoreFromContentLock:input_type -> RemoveCacheStoreFromContentLockRequest 63, // 47: WorkerRepositoryService.RefreshCacheStoreFromContentLock:input_type -> RefreshCacheStoreFromContentLockRequest 42, // 48: WorkerRepositoryService.AddRecentCacheStub:input_type -> AddRecentCacheStubRequest 44, // 49: WorkerRepositoryService.ListRecentCacheStubs:input_type -> ListRecentCacheStubsRequest 46, // 50: WorkerRepositoryService.MarkCacheStubReported:input_type -> MarkCacheStubReportedRequest 48, // 51: WorkerRepositoryService.AcquireCacheReconcileLock:input_type -> AcquireCacheReconcileLockRequest 50, // 52: WorkerRepositoryService.ReleaseCacheReconcileLock:input_type -> ReleaseCacheReconcileLockRequest 53, // 53: WorkerRepositoryService.GetCacheOriginCredentials:input_type -> GetCacheOriginCredentialsRequest 57, // 54: WorkerRepositoryService.GetContainerRuntimeCredentials:input_type -> GetContainerRuntimeCredentialsRequest 59, // 55: WorkerRepositoryService.PruneStaleCacheCheckpoints:input_type -> PruneStaleCacheCheckpointsRequest 66, // 56: WorkerRepositoryService.SetCacheFsNode:input_type -> SetCacheFsNodeRequest 68, // 57: WorkerRepositoryService.GetCacheFsNode:input_type -> GetCacheFsNodeRequest 70, // 58: WorkerRepositoryService.AddCacheFsNodeChild:input_type -> AddCacheFsNodeChildRequest 72, // 59: WorkerRepositoryService.RemoveCacheFsNode:input_type -> RemoveCacheFsNodeRequest 74, // 60: WorkerRepositoryService.RemoveCacheFsNodeChild:input_type -> RemoveCacheFsNodeChildRequest 76, // 61: WorkerRepositoryService.GetCacheFsNodeChildren:input_type -> GetCacheFsNodeChildrenRequest 78, // 62: WorkerRepositoryService.SetNetworkLock:input_type -> SetNetworkLockRequest 80, // 63: WorkerRepositoryService.RemoveNetworkLock:input_type -> RemoveNetworkLockRequest 82, // 64: WorkerRepositoryService.SetContainerIp:input_type -> SetContainerIpRequest 84, // 65: WorkerRepositoryService.MoveContainerIp:input_type -> MoveContainerIpRequest 86, // 66: WorkerRepositoryService.GetContainerIp:input_type -> GetContainerIpRequest 88, // 67: WorkerRepositoryService.GetContainerIps:input_type -> GetContainerIpsRequest 91, // 68: WorkerRepositoryService.GetContainerIpAssignments:input_type -> GetContainerIpAssignmentsRequest 93, // 69: WorkerRepositoryService.RemoveContainerIp:input_type -> RemoveContainerIpRequest 1, // 70: WorkerRepositoryService.GetNextContainerRequest:output_type -> GetNextContainerRequestResponse 96, // 71: WorkerRepositoryService.PushContainerLifecycleEvents:output_type -> PushContainerLifecycleEventsResponse 98, // 72: WorkerRepositoryService.GetWorkerMeteringConfig:output_type -> GetWorkerMeteringConfigResponse 100, // 73: WorkerRepositoryService.GetWorkerServiceProxyConfig:output_type -> GetWorkerServiceProxyConfigResponse 3, // 74: WorkerRepositoryService.StreamWorkerEvents:output_type -> WorkerEvent 7, // 75: WorkerRepositoryService.SetImagePullLock:output_type -> SetImagePullLockResponse 9, // 76: WorkerRepositoryService.RemoveImagePullLock:output_type -> RemoveImagePullLockResponse 11, // 77: WorkerRepositoryService.AddContainerToWorker:output_type -> AddContainerToWorkerResponse 13, // 78: WorkerRepositoryService.ClaimContainer:output_type -> ClaimContainerResponse 15, // 79: WorkerRepositoryService.RemoveContainerFromWorker:output_type -> RemoveContainerFromWorkerResponse 17, // 80: WorkerRepositoryService.GetWorkerById:output_type -> GetWorkerByIdResponse 19, // 81: WorkerRepositoryService.ToggleWorkerAvailable:output_type -> ToggleWorkerAvailableResponse 21, // 82: WorkerRepositoryService.DisableWorker:output_type -> DisableWorkerResponse 23, // 83: WorkerRepositoryService.RemoveWorker:output_type -> RemoveWorkerResponse 25, // 84: WorkerRepositoryService.UpdateWorkerCapacity:output_type -> UpdateWorkerCapacityResponse 27, // 85: WorkerRepositoryService.SetWorkerKeepAlive:output_type -> SetWorkerKeepAliveResponse 30, // 86: WorkerRepositoryService.RegisterCacheHost:output_type -> RegisterCacheHostResponse 32, // 87: WorkerRepositoryService.UnregisterCacheHost:output_type -> UnregisterCacheHostResponse 34, // 88: WorkerRepositoryService.ListCacheHosts:output_type -> ListCacheHostsResponse 36, // 89: WorkerRepositoryService.SetCacheClientLock:output_type -> SetCacheClientLockResponse 38, // 90: WorkerRepositoryService.RemoveCacheClientLock:output_type -> RemoveCacheClientLockResponse 40, // 91: WorkerRepositoryService.SetCacheStoreFromContentLock:output_type -> SetCacheStoreFromContentLockResponse 62, // 92: WorkerRepositoryService.RemoveCacheStoreFromContentLock:output_type -> RemoveCacheStoreFromContentLockResponse 64, // 93: WorkerRepositoryService.RefreshCacheStoreFromContentLock:output_type -> RefreshCacheStoreFromContentLockResponse 43, // 94: WorkerRepositoryService.AddRecentCacheStub:output_type -> AddRecentCacheStubResponse 45, // 95: WorkerRepositoryService.ListRecentCacheStubs:output_type -> ListRecentCacheStubsResponse 47, // 96: WorkerRepositoryService.MarkCacheStubReported:output_type -> MarkCacheStubReportedResponse 49, // 97: WorkerRepositoryService.AcquireCacheReconcileLock:output_type -> AcquireCacheReconcileLockResponse 51, // 98: WorkerRepositoryService.ReleaseCacheReconcileLock:output_type -> ReleaseCacheReconcileLockResponse 54, // 99: WorkerRepositoryService.GetCacheOriginCredentials:output_type -> GetCacheOriginCredentialsResponse 58, // 100: WorkerRepositoryService.GetContainerRuntimeCredentials:output_type -> GetContainerRuntimeCredentialsResponse 60, // 101: WorkerRepositoryService.PruneStaleCacheCheckpoints:output_type -> PruneStaleCacheCheckpointsResponse 67, // 102: WorkerRepositoryService.SetCacheFsNode:output_type -> SetCacheFsNodeResponse 69, // 103: WorkerRepositoryService.GetCacheFsNode:output_type -> GetCacheFsNodeResponse 71, // 104: WorkerRepositoryService.AddCacheFsNodeChild:output_type -> AddCacheFsNodeChildResponse 73, // 105: WorkerRepositoryService.RemoveCacheFsNode:output_type -> RemoveCacheFsNodeResponse 75, // 106: WorkerRepositoryService.RemoveCacheFsNodeChild:output_type -> RemoveCacheFsNodeChildResponse 77, // 107: WorkerRepositoryService.GetCacheFsNodeChildren:output_type -> GetCacheFsNodeChildrenResponse 79, // 108: WorkerRepositoryService.SetNetworkLock:output_type -> SetNetworkLockResponse 81, // 109: WorkerRepositoryService.RemoveNetworkLock:output_type -> RemoveNetworkLockResponse 83, // 110: WorkerRepositoryService.SetContainerIp:output_type -> SetContainerIpResponse 85, // 111: WorkerRepositoryService.MoveContainerIp:output_type -> MoveContainerIpResponse 87, // 112: WorkerRepositoryService.GetContainerIp:output_type -> GetContainerIpResponse 89, // 113: WorkerRepositoryService.GetContainerIps:output_type -> GetContainerIpsResponse 92, // 114: WorkerRepositoryService.GetContainerIpAssignments:output_type -> GetContainerIpAssignmentsResponse 94, // 115: WorkerRepositoryService.RemoveContainerIp:output_type -> RemoveContainerIpResponse 70, // [70:116] is the sub-list for method output_type 24, // [24:70] is the sub-list for method input_type 24, // [24:24] is the sub-list for extension type_name 24, // [24:24] is the sub-list for extension extendee 0, // [0:24] is the sub-list for field type_name } func init() { file_worker_repo_proto_init() } func file_worker_repo_proto_init() { if File_worker_repo_proto != nil { return } file_types_proto_init() file_container_repo_proto_init() if !protoimpl.UnsafeEnabled { file_worker_repo_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNextContainerRequestRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNextContainerRequestResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StreamWorkerEventsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WorkerEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StopContainerEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StopBuildEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetImagePullLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetImagePullLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveImagePullLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveImagePullLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddContainerToWorkerRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddContainerToWorkerResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ClaimContainerRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ClaimContainerResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveContainerFromWorkerRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveContainerFromWorkerResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkerByIdRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkerByIdResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ToggleWorkerAvailableRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ToggleWorkerAvailableResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DisableWorkerRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DisableWorkerResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveWorkerRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveWorkerResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateWorkerCapacityRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateWorkerCapacityResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetWorkerKeepAliveRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetWorkerKeepAliveResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CacheCoordinatorHost); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RegisterCacheHostRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RegisterCacheHostResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UnregisterCacheHostRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UnregisterCacheHostResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListCacheHostsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListCacheHostsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetCacheClientLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetCacheClientLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheClientLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheClientLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetCacheStoreFromContentLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetCacheStoreFromContentLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RecentCacheStub); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddRecentCacheStubRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddRecentCacheStubResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListRecentCacheStubsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListRecentCacheStubsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MarkCacheStubReportedRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MarkCacheStubReportedResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AcquireCacheReconcileLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AcquireCacheReconcileLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReleaseCacheReconcileLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReleaseCacheReconcileLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CacheWorkspaceStorageCredentials); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCacheOriginCredentialsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCacheOriginCredentialsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RuntimeMountCredentialRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RuntimeMountCredentials); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerRuntimeCredentialsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerRuntimeCredentialsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PruneStaleCacheCheckpointsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PruneStaleCacheCheckpointsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheStoreFromContentLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheStoreFromContentLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RefreshCacheStoreFromContentLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RefreshCacheStoreFromContentLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WorkerCacheFSMetadata); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetCacheFsNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetCacheFsNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCacheFsNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCacheFsNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddCacheFsNodeChildRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddCacheFsNodeChildResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheFsNodeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheFsNodeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheFsNodeChildRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveCacheFsNodeChildResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCacheFsNodeChildrenRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCacheFsNodeChildrenResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetNetworkLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetNetworkLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveNetworkLockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveNetworkLockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetContainerIpRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetContainerIpResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MoveContainerIpRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MoveContainerIpResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerIpRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerIpResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerIpsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerIpsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContainerIpAssignment); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerIpAssignmentsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContainerIpAssignmentsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveContainerIpRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveContainerIpResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PushContainerLifecycleEventsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PushContainerLifecycleEventsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkerMeteringConfigRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkerMeteringConfigResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkerServiceProxyConfigRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_worker_repo_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkerServiceProxyConfigResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } file_worker_repo_proto_msgTypes[3].OneofWrappers = []interface{}{ (*WorkerEvent_StopContainer)(nil), (*WorkerEvent_StopBuild)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_worker_repo_proto_rawDesc, NumEnums: 0, NumMessages: 101, NumExtensions: 0, NumServices: 1, }, GoTypes: file_worker_repo_proto_goTypes, DependencyIndexes: file_worker_repo_proto_depIdxs, MessageInfos: file_worker_repo_proto_msgTypes, }.Build() File_worker_repo_proto = out.File file_worker_repo_proto_rawDesc = nil file_worker_repo_proto_goTypes = nil file_worker_repo_proto_depIdxs = nil }