api/pkg/apis/dfdaemon/v2/dfdaemon.pb.go

4009 lines
173 KiB
Go

//
// Copyright 2022 The Dragonfly Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.1
// protoc v3.21.6
// source: pkg/apis/dfdaemon/v2/dfdaemon.proto
package dfdaemon
import (
v2 "d7y.io/api/v2/pkg/apis/common/v2"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
durationpb "google.golang.org/protobuf/types/known/durationpb"
emptypb "google.golang.org/protobuf/types/known/emptypb"
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)
)
// DownloadTaskRequest represents request of DownloadTask.
type DownloadTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Download information.
Download *v2.Download `protobuf:"bytes,1,opt,name=download,proto3" json:"download,omitempty"`
}
func (x *DownloadTaskRequest) Reset() {
*x = DownloadTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadTaskRequest) ProtoMessage() {}
func (x *DownloadTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadTaskRequest.ProtoReflect.Descriptor instead.
func (*DownloadTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{0}
}
func (x *DownloadTaskRequest) GetDownload() *v2.Download {
if x != nil {
return x.Download
}
return nil
}
// DownloadTaskStartedResponse represents task download started response of DownloadTaskResponse.
type DownloadTaskStartedResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task content length.
ContentLength uint64 `protobuf:"varint,1,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
// Range is url range of request. If protocol is http, range
// is parsed from http header. If other protocol, range comes
// from download range field.
Range *v2.Range `protobuf:"bytes,2,opt,name=range,proto3,oneof" json:"range,omitempty"`
// Task response headers.
ResponseHeader map[string]string `protobuf:"bytes,3,rep,name=response_header,json=responseHeader,proto3" json:"response_header,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Need to download pieces.
Pieces []*v2.Piece `protobuf:"bytes,4,rep,name=pieces,proto3" json:"pieces,omitempty"`
}
func (x *DownloadTaskStartedResponse) Reset() {
*x = DownloadTaskStartedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadTaskStartedResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadTaskStartedResponse) ProtoMessage() {}
func (x *DownloadTaskStartedResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadTaskStartedResponse.ProtoReflect.Descriptor instead.
func (*DownloadTaskStartedResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{1}
}
func (x *DownloadTaskStartedResponse) GetContentLength() uint64 {
if x != nil {
return x.ContentLength
}
return 0
}
func (x *DownloadTaskStartedResponse) GetRange() *v2.Range {
if x != nil {
return x.Range
}
return nil
}
func (x *DownloadTaskStartedResponse) GetResponseHeader() map[string]string {
if x != nil {
return x.ResponseHeader
}
return nil
}
func (x *DownloadTaskStartedResponse) GetPieces() []*v2.Piece {
if x != nil {
return x.Pieces
}
return nil
}
// DownloadPieceFinishedResponse represents piece download finished response of DownloadTaskResponse.
type DownloadPieceFinishedResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Finished piece of task.
Piece *v2.Piece `protobuf:"bytes,1,opt,name=piece,proto3" json:"piece,omitempty"`
}
func (x *DownloadPieceFinishedResponse) Reset() {
*x = DownloadPieceFinishedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPieceFinishedResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPieceFinishedResponse) ProtoMessage() {}
func (x *DownloadPieceFinishedResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPieceFinishedResponse.ProtoReflect.Descriptor instead.
func (*DownloadPieceFinishedResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{2}
}
func (x *DownloadPieceFinishedResponse) GetPiece() *v2.Piece {
if x != nil {
return x.Piece
}
return nil
}
// DownloadTaskResponse represents response of DownloadTask.
type DownloadTaskResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Peer id.
PeerId string `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
// Types that are assignable to Response:
//
// *DownloadTaskResponse_DownloadTaskStartedResponse
// *DownloadTaskResponse_DownloadPieceFinishedResponse
Response isDownloadTaskResponse_Response `protobuf_oneof:"response"`
}
func (x *DownloadTaskResponse) Reset() {
*x = DownloadTaskResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadTaskResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadTaskResponse) ProtoMessage() {}
func (x *DownloadTaskResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadTaskResponse.ProtoReflect.Descriptor instead.
func (*DownloadTaskResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{3}
}
func (x *DownloadTaskResponse) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *DownloadTaskResponse) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadTaskResponse) GetPeerId() string {
if x != nil {
return x.PeerId
}
return ""
}
func (m *DownloadTaskResponse) GetResponse() isDownloadTaskResponse_Response {
if m != nil {
return m.Response
}
return nil
}
func (x *DownloadTaskResponse) GetDownloadTaskStartedResponse() *DownloadTaskStartedResponse {
if x, ok := x.GetResponse().(*DownloadTaskResponse_DownloadTaskStartedResponse); ok {
return x.DownloadTaskStartedResponse
}
return nil
}
func (x *DownloadTaskResponse) GetDownloadPieceFinishedResponse() *DownloadPieceFinishedResponse {
if x, ok := x.GetResponse().(*DownloadTaskResponse_DownloadPieceFinishedResponse); ok {
return x.DownloadPieceFinishedResponse
}
return nil
}
type isDownloadTaskResponse_Response interface {
isDownloadTaskResponse_Response()
}
type DownloadTaskResponse_DownloadTaskStartedResponse struct {
DownloadTaskStartedResponse *DownloadTaskStartedResponse `protobuf:"bytes,4,opt,name=download_task_started_response,json=downloadTaskStartedResponse,proto3,oneof"`
}
type DownloadTaskResponse_DownloadPieceFinishedResponse struct {
DownloadPieceFinishedResponse *DownloadPieceFinishedResponse `protobuf:"bytes,5,opt,name=download_piece_finished_response,json=downloadPieceFinishedResponse,proto3,oneof"`
}
func (*DownloadTaskResponse_DownloadTaskStartedResponse) isDownloadTaskResponse_Response() {}
func (*DownloadTaskResponse_DownloadPieceFinishedResponse) isDownloadTaskResponse_Response() {}
// SyncPiecesRequest represents request of SyncPieces.
type SyncPiecesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Interested piece numbers.
InterestedPieceNumbers []uint32 `protobuf:"varint,3,rep,packed,name=interested_piece_numbers,json=interestedPieceNumbers,proto3" json:"interested_piece_numbers,omitempty"`
}
func (x *SyncPiecesRequest) Reset() {
*x = SyncPiecesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncPiecesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncPiecesRequest) ProtoMessage() {}
func (x *SyncPiecesRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncPiecesRequest.ProtoReflect.Descriptor instead.
func (*SyncPiecesRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{4}
}
func (x *SyncPiecesRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *SyncPiecesRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *SyncPiecesRequest) GetInterestedPieceNumbers() []uint32 {
if x != nil {
return x.InterestedPieceNumbers
}
return nil
}
// SyncPiecesResponse represents response of SyncPieces.
type SyncPiecesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Exist piece number.
Number uint32 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
// Piece offset.
Offset uint64 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
// Piece length.
Length uint64 `protobuf:"varint,3,opt,name=length,proto3" json:"length,omitempty"`
}
func (x *SyncPiecesResponse) Reset() {
*x = SyncPiecesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncPiecesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncPiecesResponse) ProtoMessage() {}
func (x *SyncPiecesResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncPiecesResponse.ProtoReflect.Descriptor instead.
func (*SyncPiecesResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{5}
}
func (x *SyncPiecesResponse) GetNumber() uint32 {
if x != nil {
return x.Number
}
return 0
}
func (x *SyncPiecesResponse) GetOffset() uint64 {
if x != nil {
return x.Offset
}
return 0
}
func (x *SyncPiecesResponse) GetLength() uint64 {
if x != nil {
return x.Length
}
return 0
}
// DownloadPieceRequest represents request of DownloadPiece.
type DownloadPieceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Piece number.
PieceNumber uint32 `protobuf:"varint,3,opt,name=piece_number,json=pieceNumber,proto3" json:"piece_number,omitempty"`
}
func (x *DownloadPieceRequest) Reset() {
*x = DownloadPieceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPieceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPieceRequest) ProtoMessage() {}
func (x *DownloadPieceRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPieceRequest.ProtoReflect.Descriptor instead.
func (*DownloadPieceRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{6}
}
func (x *DownloadPieceRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *DownloadPieceRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadPieceRequest) GetPieceNumber() uint32 {
if x != nil {
return x.PieceNumber
}
return 0
}
// DownloadPieceResponse represents response of DownloadPieces.
type DownloadPieceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Piece information.
Piece *v2.Piece `protobuf:"bytes,1,opt,name=piece,proto3" json:"piece,omitempty"`
// Piece metadata digest, it is used to verify the integrity of the piece metadata.
Digest *string `protobuf:"bytes,2,opt,name=digest,proto3,oneof" json:"digest,omitempty"`
}
func (x *DownloadPieceResponse) Reset() {
*x = DownloadPieceResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPieceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPieceResponse) ProtoMessage() {}
func (x *DownloadPieceResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPieceResponse.ProtoReflect.Descriptor instead.
func (*DownloadPieceResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{7}
}
func (x *DownloadPieceResponse) GetPiece() *v2.Piece {
if x != nil {
return x.Piece
}
return nil
}
func (x *DownloadPieceResponse) GetDigest() string {
if x != nil && x.Digest != nil {
return *x.Digest
}
return ""
}
// StatTaskRequest represents request of StatTask.
type StatTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Remote IP represents the IP address of the client initiating the stat request.
RemoteIp *string `protobuf:"bytes,2,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
// local_only specifies whether to query task information from local client only.
// If true, the query will be restricted to the local client.
// By default (false), the query may be forwarded to the scheduler
// for a cluster-wide search.
LocalOnly bool `protobuf:"varint,3,opt,name=local_only,json=localOnly,proto3" json:"local_only,omitempty"`
}
func (x *StatTaskRequest) Reset() {
*x = StatTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StatTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StatTaskRequest) ProtoMessage() {}
func (x *StatTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 StatTaskRequest.ProtoReflect.Descriptor instead.
func (*StatTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{8}
}
func (x *StatTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *StatTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
func (x *StatTaskRequest) GetLocalOnly() bool {
if x != nil {
return x.LocalOnly
}
return false
}
// ListTaskEntriesRequest represents request of ListTaskEntries.
type ListTaskEntriesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// URL to be listed the entries.
Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
// HTTP header to be sent with the request.
RequestHeader map[string]string `protobuf:"bytes,3,rep,name=request_header,json=requestHeader,proto3" json:"request_header,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// List timeout.
Timeout *durationpb.Duration `protobuf:"bytes,4,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
// certificate_chain is the client certs with DER format for the backend client to list the entries.
CertificateChain [][]byte `protobuf:"bytes,5,rep,name=certificate_chain,json=certificateChain,proto3" json:"certificate_chain,omitempty"`
// Object storage protocol information.
ObjectStorage *v2.ObjectStorage `protobuf:"bytes,6,opt,name=object_storage,json=objectStorage,proto3,oneof" json:"object_storage,omitempty"`
// HDFS protocol information.
Hdfs *v2.HDFS `protobuf:"bytes,7,opt,name=hdfs,proto3,oneof" json:"hdfs,omitempty"`
// Remote IP represents the IP address of the client initiating the list request.
RemoteIp *string `protobuf:"bytes,8,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *ListTaskEntriesRequest) Reset() {
*x = ListTaskEntriesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListTaskEntriesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListTaskEntriesRequest) ProtoMessage() {}
func (x *ListTaskEntriesRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 ListTaskEntriesRequest.ProtoReflect.Descriptor instead.
func (*ListTaskEntriesRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{9}
}
func (x *ListTaskEntriesRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *ListTaskEntriesRequest) GetUrl() string {
if x != nil {
return x.Url
}
return ""
}
func (x *ListTaskEntriesRequest) GetRequestHeader() map[string]string {
if x != nil {
return x.RequestHeader
}
return nil
}
func (x *ListTaskEntriesRequest) GetTimeout() *durationpb.Duration {
if x != nil {
return x.Timeout
}
return nil
}
func (x *ListTaskEntriesRequest) GetCertificateChain() [][]byte {
if x != nil {
return x.CertificateChain
}
return nil
}
func (x *ListTaskEntriesRequest) GetObjectStorage() *v2.ObjectStorage {
if x != nil {
return x.ObjectStorage
}
return nil
}
func (x *ListTaskEntriesRequest) GetHdfs() *v2.HDFS {
if x != nil {
return x.Hdfs
}
return nil
}
func (x *ListTaskEntriesRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// ListTaskEntriesResponse represents response of ListTaskEntries.
type ListTaskEntriesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Content length is the content length of the response
ContentLength uint64 `protobuf:"varint,1,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
// HTTP header to be sent with the request.
ResponseHeader map[string]string `protobuf:"bytes,2,rep,name=response_header,json=responseHeader,proto3" json:"response_header,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Backend HTTP status code.
StatusCode *int32 `protobuf:"varint,3,opt,name=status_code,json=statusCode,proto3,oneof" json:"status_code,omitempty"`
// / Entries is the information of the entries in the directory.
Entries []*Entry `protobuf:"bytes,4,rep,name=entries,proto3" json:"entries,omitempty"`
}
func (x *ListTaskEntriesResponse) Reset() {
*x = ListTaskEntriesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListTaskEntriesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListTaskEntriesResponse) ProtoMessage() {}
func (x *ListTaskEntriesResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 ListTaskEntriesResponse.ProtoReflect.Descriptor instead.
func (*ListTaskEntriesResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{10}
}
func (x *ListTaskEntriesResponse) GetContentLength() uint64 {
if x != nil {
return x.ContentLength
}
return 0
}
func (x *ListTaskEntriesResponse) GetResponseHeader() map[string]string {
if x != nil {
return x.ResponseHeader
}
return nil
}
func (x *ListTaskEntriesResponse) GetStatusCode() int32 {
if x != nil && x.StatusCode != nil {
return *x.StatusCode
}
return 0
}
func (x *ListTaskEntriesResponse) GetEntries() []*Entry {
if x != nil {
return x.Entries
}
return nil
}
// Entry represents an entry in a directory.
type Entry struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// URL of the entry.
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
// Size of the entry.
ContentLength uint64 `protobuf:"varint,2,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
// Is directory or not.
IsDir bool `protobuf:"varint,3,opt,name=is_dir,json=isDir,proto3" json:"is_dir,omitempty"`
}
func (x *Entry) Reset() {
*x = Entry{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Entry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Entry) ProtoMessage() {}
func (x *Entry) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 Entry.ProtoReflect.Descriptor instead.
func (*Entry) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{11}
}
func (x *Entry) GetUrl() string {
if x != nil {
return x.Url
}
return ""
}
func (x *Entry) GetContentLength() uint64 {
if x != nil {
return x.ContentLength
}
return 0
}
func (x *Entry) GetIsDir() bool {
if x != nil {
return x.IsDir
}
return false
}
// DeleteTaskRequest represents request of DeleteTask.
type DeleteTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Remote IP represents the IP address of the client initiating the delete request.
RemoteIp *string `protobuf:"bytes,2,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *DeleteTaskRequest) Reset() {
*x = DeleteTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteTaskRequest) ProtoMessage() {}
func (x *DeleteTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DeleteTaskRequest.ProtoReflect.Descriptor instead.
func (*DeleteTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{12}
}
func (x *DeleteTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DeleteTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// DownloadCacheTaskRequest represents request of DownloadCacheTask.
type DownloadCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Download information.
Download *v2.CacheDownload `protobuf:"bytes,1,opt,name=download,proto3" json:"download,omitempty"`
}
func (x *DownloadCacheTaskRequest) Reset() {
*x = DownloadCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadCacheTaskRequest) ProtoMessage() {}
func (x *DownloadCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*DownloadCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{13}
}
func (x *DownloadCacheTaskRequest) GetDownload() *v2.CacheDownload {
if x != nil {
return x.Download
}
return nil
}
// DownloadCacheTaskStartedResponse represents cache task download started response of DownloadCacheTaskResponse.
type DownloadCacheTaskStartedResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task content length.
ContentLength uint64 `protobuf:"varint,1,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
// Range is url range of request. If protocol is http, range
// is parsed from http header. If other protocol, range comes
// from download range field.
Range *v2.Range `protobuf:"bytes,2,opt,name=range,proto3,oneof" json:"range,omitempty"`
// Task response headers.
ResponseHeader map[string]string `protobuf:"bytes,3,rep,name=response_header,json=responseHeader,proto3" json:"response_header,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Need to download pieces.
Pieces []*v2.Piece `protobuf:"bytes,4,rep,name=pieces,proto3" json:"pieces,omitempty"`
}
func (x *DownloadCacheTaskStartedResponse) Reset() {
*x = DownloadCacheTaskStartedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadCacheTaskStartedResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadCacheTaskStartedResponse) ProtoMessage() {}
func (x *DownloadCacheTaskStartedResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadCacheTaskStartedResponse.ProtoReflect.Descriptor instead.
func (*DownloadCacheTaskStartedResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{14}
}
func (x *DownloadCacheTaskStartedResponse) GetContentLength() uint64 {
if x != nil {
return x.ContentLength
}
return 0
}
func (x *DownloadCacheTaskStartedResponse) GetRange() *v2.Range {
if x != nil {
return x.Range
}
return nil
}
func (x *DownloadCacheTaskStartedResponse) GetResponseHeader() map[string]string {
if x != nil {
return x.ResponseHeader
}
return nil
}
func (x *DownloadCacheTaskStartedResponse) GetPieces() []*v2.Piece {
if x != nil {
return x.Pieces
}
return nil
}
// DownloadCacheTaskResponse represents response of DownloadCacheTask.
type DownloadCacheTaskResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Peer id.
PeerId string `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
// Types that are assignable to Response:
//
// *DownloadCacheTaskResponse_DownloadCacheTaskStartedResponse
// *DownloadCacheTaskResponse_DownloadPieceFinishedResponse
Response isDownloadCacheTaskResponse_Response `protobuf_oneof:"response"`
}
func (x *DownloadCacheTaskResponse) Reset() {
*x = DownloadCacheTaskResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadCacheTaskResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadCacheTaskResponse) ProtoMessage() {}
func (x *DownloadCacheTaskResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadCacheTaskResponse.ProtoReflect.Descriptor instead.
func (*DownloadCacheTaskResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{15}
}
func (x *DownloadCacheTaskResponse) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *DownloadCacheTaskResponse) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadCacheTaskResponse) GetPeerId() string {
if x != nil {
return x.PeerId
}
return ""
}
func (m *DownloadCacheTaskResponse) GetResponse() isDownloadCacheTaskResponse_Response {
if m != nil {
return m.Response
}
return nil
}
func (x *DownloadCacheTaskResponse) GetDownloadCacheTaskStartedResponse() *DownloadCacheTaskStartedResponse {
if x, ok := x.GetResponse().(*DownloadCacheTaskResponse_DownloadCacheTaskStartedResponse); ok {
return x.DownloadCacheTaskStartedResponse
}
return nil
}
func (x *DownloadCacheTaskResponse) GetDownloadPieceFinishedResponse() *DownloadPieceFinishedResponse {
if x, ok := x.GetResponse().(*DownloadCacheTaskResponse_DownloadPieceFinishedResponse); ok {
return x.DownloadPieceFinishedResponse
}
return nil
}
type isDownloadCacheTaskResponse_Response interface {
isDownloadCacheTaskResponse_Response()
}
type DownloadCacheTaskResponse_DownloadCacheTaskStartedResponse struct {
DownloadCacheTaskStartedResponse *DownloadCacheTaskStartedResponse `protobuf:"bytes,4,opt,name=download_cache_task_started_response,json=downloadCacheTaskStartedResponse,proto3,oneof"`
}
type DownloadCacheTaskResponse_DownloadPieceFinishedResponse struct {
DownloadPieceFinishedResponse *DownloadPieceFinishedResponse `protobuf:"bytes,5,opt,name=download_piece_finished_response,json=downloadPieceFinishedResponse,proto3,oneof"`
}
func (*DownloadCacheTaskResponse_DownloadCacheTaskStartedResponse) isDownloadCacheTaskResponse_Response() {
}
func (*DownloadCacheTaskResponse_DownloadPieceFinishedResponse) isDownloadCacheTaskResponse_Response() {
}
// SyncCachePiecesRequest represents request of SyncCachePieces.
type SyncCachePiecesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Interested piece numbers.
InterestedCachePieceNumbers []uint32 `protobuf:"varint,3,rep,packed,name=interested_cache_piece_numbers,json=interestedCachePieceNumbers,proto3" json:"interested_cache_piece_numbers,omitempty"`
}
func (x *SyncCachePiecesRequest) Reset() {
*x = SyncCachePiecesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncCachePiecesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncCachePiecesRequest) ProtoMessage() {}
func (x *SyncCachePiecesRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncCachePiecesRequest.ProtoReflect.Descriptor instead.
func (*SyncCachePiecesRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{16}
}
func (x *SyncCachePiecesRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *SyncCachePiecesRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *SyncCachePiecesRequest) GetInterestedCachePieceNumbers() []uint32 {
if x != nil {
return x.InterestedCachePieceNumbers
}
return nil
}
// SyncCachePiecesResponse represents response of SyncCachePieces.
type SyncCachePiecesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Exist piece number.
Number uint32 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
// Piece offset.
Offset uint64 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
// Piece length.
Length uint64 `protobuf:"varint,3,opt,name=length,proto3" json:"length,omitempty"`
}
func (x *SyncCachePiecesResponse) Reset() {
*x = SyncCachePiecesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncCachePiecesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncCachePiecesResponse) ProtoMessage() {}
func (x *SyncCachePiecesResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncCachePiecesResponse.ProtoReflect.Descriptor instead.
func (*SyncCachePiecesResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{17}
}
func (x *SyncCachePiecesResponse) GetNumber() uint32 {
if x != nil {
return x.Number
}
return 0
}
func (x *SyncCachePiecesResponse) GetOffset() uint64 {
if x != nil {
return x.Offset
}
return 0
}
func (x *SyncCachePiecesResponse) GetLength() uint64 {
if x != nil {
return x.Length
}
return 0
}
// DownloadCachePieceRequest represents request of DownloadCachePiece.
type DownloadCachePieceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Piece number.
PieceNumber uint32 `protobuf:"varint,3,opt,name=piece_number,json=pieceNumber,proto3" json:"piece_number,omitempty"`
}
func (x *DownloadCachePieceRequest) Reset() {
*x = DownloadCachePieceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadCachePieceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadCachePieceRequest) ProtoMessage() {}
func (x *DownloadCachePieceRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadCachePieceRequest.ProtoReflect.Descriptor instead.
func (*DownloadCachePieceRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{18}
}
func (x *DownloadCachePieceRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *DownloadCachePieceRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadCachePieceRequest) GetPieceNumber() uint32 {
if x != nil {
return x.PieceNumber
}
return 0
}
// DownloadCachePieceResponse represents response of DownloadCachePieces.
type DownloadCachePieceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Piece information.
Piece *v2.Piece `protobuf:"bytes,1,opt,name=piece,proto3" json:"piece,omitempty"`
// Piece metadata digest, it is used to verify the integrity of the piece metadata.
Digest *string `protobuf:"bytes,2,opt,name=digest,proto3,oneof" json:"digest,omitempty"`
}
func (x *DownloadCachePieceResponse) Reset() {
*x = DownloadCachePieceResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadCachePieceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadCachePieceResponse) ProtoMessage() {}
func (x *DownloadCachePieceResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadCachePieceResponse.ProtoReflect.Descriptor instead.
func (*DownloadCachePieceResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{19}
}
func (x *DownloadCachePieceResponse) GetPiece() *v2.Piece {
if x != nil {
return x.Piece
}
return nil
}
func (x *DownloadCachePieceResponse) GetDigest() string {
if x != nil && x.Digest != nil {
return *x.Digest
}
return ""
}
// StatCacheTaskRequest represents request of StatCacheTask.
type StatCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Remote IP represents the IP address of the client initiating the stat request.
RemoteIp *string `protobuf:"bytes,2,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
// local_only specifies whether to query task information from local client only.
// If true, the query will be restricted to the local client.
// By default (false), the query may be forwarded to the scheduler
// for a cluster-wide search.
LocalOnly bool `protobuf:"varint,3,opt,name=local_only,json=localOnly,proto3" json:"local_only,omitempty"`
}
func (x *StatCacheTaskRequest) Reset() {
*x = StatCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StatCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StatCacheTaskRequest) ProtoMessage() {}
func (x *StatCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 StatCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*StatCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{20}
}
func (x *StatCacheTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *StatCacheTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
func (x *StatCacheTaskRequest) GetLocalOnly() bool {
if x != nil {
return x.LocalOnly
}
return false
}
// DeleteCacheTaskRequest represents request of DeleteCacheTask.
type DeleteCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
}
func (x *DeleteCacheTaskRequest) Reset() {
*x = DeleteCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteCacheTaskRequest) ProtoMessage() {}
func (x *DeleteCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DeleteCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*DeleteCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{21}
}
func (x *DeleteCacheTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
// DownloadPersistentCacheTaskRequest represents request of DownloadPersistentCacheTask.
type DownloadPersistentCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Persistent represents whether the persistent cache task is persistent.
// If the persistent cache task is persistent, the persistent cache peer will
// not be deleted when dfdaemon runs garbage collection.
Persistent bool `protobuf:"varint,2,opt,name=persistent,proto3" json:"persistent,omitempty"`
// Tag is used to distinguish different persistent cache tasks.
Tag *string `protobuf:"bytes,3,opt,name=tag,proto3,oneof" json:"tag,omitempty"`
// Application of task.
Application *string `protobuf:"bytes,4,opt,name=application,proto3,oneof" json:"application,omitempty"`
// File path to be exported. If output_path is set, the exported file will be saved to the specified path.
// Dfdaemon will try to create hard link to the output path before starting the export. If hard link creation fails,
// it will copy the file to the output path after the export is completed.
// For more details refer to https://github.com/dragonflyoss/design/blob/main/systems-analysis/file-download-workflow-with-hard-link/README.md.
OutputPath *string `protobuf:"bytes,5,opt,name=output_path,json=outputPath,proto3,oneof" json:"output_path,omitempty"`
// Download timeout.
Timeout *durationpb.Duration `protobuf:"bytes,6,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
// need_piece_content is the flag to indicate whether the response needs to return piece content.
NeedPieceContent bool `protobuf:"varint,7,opt,name=need_piece_content,json=needPieceContent,proto3" json:"need_piece_content,omitempty"`
// force_hard_link is the flag to indicate whether the exported file must be hard linked to the output path.
// For more details refer to https://github.com/dragonflyoss/design/blob/main/systems-analysis/file-download-workflow-with-hard-link/README.md.
ForceHardLink bool `protobuf:"varint,8,opt,name=force_hard_link,json=forceHardLink,proto3" json:"force_hard_link,omitempty"`
// Verifies task data integrity after download using a digest. Supports CRC32, SHA256, and SHA512 algorithms.
// Format: `<algorithm>:<hash>`, e.g., `crc32:xxx`, `sha256:yyy`, `sha512:zzz`.
// Returns an error if the computed digest mismatches the expected value.
//
// Performance
// Digest calculation increases processing time. Enable only when data integrity verification is critical.
Digest *string `protobuf:"bytes,9,opt,name=digest,proto3,oneof" json:"digest,omitempty"`
// Remote IP represents the IP address of the client initiating the download request.
RemoteIp *string `protobuf:"bytes,10,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *DownloadPersistentCacheTaskRequest) Reset() {
*x = DownloadPersistentCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPersistentCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPersistentCacheTaskRequest) ProtoMessage() {}
func (x *DownloadPersistentCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPersistentCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*DownloadPersistentCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{22}
}
func (x *DownloadPersistentCacheTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadPersistentCacheTaskRequest) GetPersistent() bool {
if x != nil {
return x.Persistent
}
return false
}
func (x *DownloadPersistentCacheTaskRequest) GetTag() string {
if x != nil && x.Tag != nil {
return *x.Tag
}
return ""
}
func (x *DownloadPersistentCacheTaskRequest) GetApplication() string {
if x != nil && x.Application != nil {
return *x.Application
}
return ""
}
func (x *DownloadPersistentCacheTaskRequest) GetOutputPath() string {
if x != nil && x.OutputPath != nil {
return *x.OutputPath
}
return ""
}
func (x *DownloadPersistentCacheTaskRequest) GetTimeout() *durationpb.Duration {
if x != nil {
return x.Timeout
}
return nil
}
func (x *DownloadPersistentCacheTaskRequest) GetNeedPieceContent() bool {
if x != nil {
return x.NeedPieceContent
}
return false
}
func (x *DownloadPersistentCacheTaskRequest) GetForceHardLink() bool {
if x != nil {
return x.ForceHardLink
}
return false
}
func (x *DownloadPersistentCacheTaskRequest) GetDigest() string {
if x != nil && x.Digest != nil {
return *x.Digest
}
return ""
}
func (x *DownloadPersistentCacheTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// DownloadPersistentCacheTaskStartedResponse represents task download started response of DownloadPersistentCacheTaskResponse.
type DownloadPersistentCacheTaskStartedResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task content length.
ContentLength uint64 `protobuf:"varint,1,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
}
func (x *DownloadPersistentCacheTaskStartedResponse) Reset() {
*x = DownloadPersistentCacheTaskStartedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPersistentCacheTaskStartedResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPersistentCacheTaskStartedResponse) ProtoMessage() {}
func (x *DownloadPersistentCacheTaskStartedResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPersistentCacheTaskStartedResponse.ProtoReflect.Descriptor instead.
func (*DownloadPersistentCacheTaskStartedResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{23}
}
func (x *DownloadPersistentCacheTaskStartedResponse) GetContentLength() uint64 {
if x != nil {
return x.ContentLength
}
return 0
}
// DownloadPersistentCacheTaskResponse represents response of DownloadPersistentCacheTask.
type DownloadPersistentCacheTaskResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Peer id.
PeerId string `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
// Types that are assignable to Response:
//
// *DownloadPersistentCacheTaskResponse_DownloadPersistentCacheTaskStartedResponse
// *DownloadPersistentCacheTaskResponse_DownloadPieceFinishedResponse
Response isDownloadPersistentCacheTaskResponse_Response `protobuf_oneof:"response"`
}
func (x *DownloadPersistentCacheTaskResponse) Reset() {
*x = DownloadPersistentCacheTaskResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPersistentCacheTaskResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPersistentCacheTaskResponse) ProtoMessage() {}
func (x *DownloadPersistentCacheTaskResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPersistentCacheTaskResponse.ProtoReflect.Descriptor instead.
func (*DownloadPersistentCacheTaskResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{24}
}
func (x *DownloadPersistentCacheTaskResponse) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *DownloadPersistentCacheTaskResponse) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadPersistentCacheTaskResponse) GetPeerId() string {
if x != nil {
return x.PeerId
}
return ""
}
func (m *DownloadPersistentCacheTaskResponse) GetResponse() isDownloadPersistentCacheTaskResponse_Response {
if m != nil {
return m.Response
}
return nil
}
func (x *DownloadPersistentCacheTaskResponse) GetDownloadPersistentCacheTaskStartedResponse() *DownloadPersistentCacheTaskStartedResponse {
if x, ok := x.GetResponse().(*DownloadPersistentCacheTaskResponse_DownloadPersistentCacheTaskStartedResponse); ok {
return x.DownloadPersistentCacheTaskStartedResponse
}
return nil
}
func (x *DownloadPersistentCacheTaskResponse) GetDownloadPieceFinishedResponse() *DownloadPieceFinishedResponse {
if x, ok := x.GetResponse().(*DownloadPersistentCacheTaskResponse_DownloadPieceFinishedResponse); ok {
return x.DownloadPieceFinishedResponse
}
return nil
}
type isDownloadPersistentCacheTaskResponse_Response interface {
isDownloadPersistentCacheTaskResponse_Response()
}
type DownloadPersistentCacheTaskResponse_DownloadPersistentCacheTaskStartedResponse struct {
DownloadPersistentCacheTaskStartedResponse *DownloadPersistentCacheTaskStartedResponse `protobuf:"bytes,4,opt,name=download_persistent_cache_task_started_response,json=downloadPersistentCacheTaskStartedResponse,proto3,oneof"`
}
type DownloadPersistentCacheTaskResponse_DownloadPieceFinishedResponse struct {
DownloadPieceFinishedResponse *DownloadPieceFinishedResponse `protobuf:"bytes,5,opt,name=download_piece_finished_response,json=downloadPieceFinishedResponse,proto3,oneof"`
}
func (*DownloadPersistentCacheTaskResponse_DownloadPersistentCacheTaskStartedResponse) isDownloadPersistentCacheTaskResponse_Response() {
}
func (*DownloadPersistentCacheTaskResponse_DownloadPieceFinishedResponse) isDownloadPersistentCacheTaskResponse_Response() {
}
// UploadPersistentCacheTaskRequest represents request of UploadPersistentCacheTask.
type UploadPersistentCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// content_for_calculating_task_id is the content used to calculate the task id.
// If content_for_calculating_task_id is set, use its value to calculate the task ID.
// Otherwise, calculate the task ID based on the file content, tag and application by crc32 algorithm`.
ContentForCalculatingTaskId *string `protobuf:"bytes,1,opt,name=content_for_calculating_task_id,json=contentForCalculatingTaskId,proto3,oneof" json:"content_for_calculating_task_id,omitempty"`
// Upload file path of persistent cache task.
Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
// Replica count of the persistent persistent cache task.
PersistentReplicaCount uint64 `protobuf:"varint,3,opt,name=persistent_replica_count,json=persistentReplicaCount,proto3" json:"persistent_replica_count,omitempty"`
// Tag is used to distinguish different persistent cache tasks.
Tag *string `protobuf:"bytes,4,opt,name=tag,proto3,oneof" json:"tag,omitempty"`
// Application of the persistent cache task.
Application *string `protobuf:"bytes,5,opt,name=application,proto3,oneof" json:"application,omitempty"`
// Piece length of the persistent cache task, the value needs to be greater than or equal to 4194304(4MiB).
PieceLength *uint64 `protobuf:"varint,6,opt,name=piece_length,json=pieceLength,proto3,oneof" json:"piece_length,omitempty"`
// TTL of the persistent cache task.
Ttl *durationpb.Duration `protobuf:"bytes,7,opt,name=ttl,proto3" json:"ttl,omitempty"`
// Download timeout.
Timeout *durationpb.Duration `protobuf:"bytes,8,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
// Remote IP represents the IP address of the client initiating the upload request.
RemoteIp *string `protobuf:"bytes,9,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *UploadPersistentCacheTaskRequest) Reset() {
*x = UploadPersistentCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UploadPersistentCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UploadPersistentCacheTaskRequest) ProtoMessage() {}
func (x *UploadPersistentCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 UploadPersistentCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*UploadPersistentCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{25}
}
func (x *UploadPersistentCacheTaskRequest) GetContentForCalculatingTaskId() string {
if x != nil && x.ContentForCalculatingTaskId != nil {
return *x.ContentForCalculatingTaskId
}
return ""
}
func (x *UploadPersistentCacheTaskRequest) GetPath() string {
if x != nil {
return x.Path
}
return ""
}
func (x *UploadPersistentCacheTaskRequest) GetPersistentReplicaCount() uint64 {
if x != nil {
return x.PersistentReplicaCount
}
return 0
}
func (x *UploadPersistentCacheTaskRequest) GetTag() string {
if x != nil && x.Tag != nil {
return *x.Tag
}
return ""
}
func (x *UploadPersistentCacheTaskRequest) GetApplication() string {
if x != nil && x.Application != nil {
return *x.Application
}
return ""
}
func (x *UploadPersistentCacheTaskRequest) GetPieceLength() uint64 {
if x != nil && x.PieceLength != nil {
return *x.PieceLength
}
return 0
}
func (x *UploadPersistentCacheTaskRequest) GetTtl() *durationpb.Duration {
if x != nil {
return x.Ttl
}
return nil
}
func (x *UploadPersistentCacheTaskRequest) GetTimeout() *durationpb.Duration {
if x != nil {
return x.Timeout
}
return nil
}
func (x *UploadPersistentCacheTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// UpdatePersistentCacheTaskRequest represents request of UpdatePersistentCacheTask.
type UpdatePersistentCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Persistent represents whether the persistent cache peer is persistent.
// If the persistent cache peer is persistent, the persistent cache peer will
// not be deleted when dfdaemon runs garbage collection. It only be deleted
// when the task is deleted by the user.
Persistent bool `protobuf:"varint,2,opt,name=persistent,proto3" json:"persistent,omitempty"`
// Remote IP represents the IP address of the client initiating the update request.
RemoteIp *string `protobuf:"bytes,3,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *UpdatePersistentCacheTaskRequest) Reset() {
*x = UpdatePersistentCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdatePersistentCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdatePersistentCacheTaskRequest) ProtoMessage() {}
func (x *UpdatePersistentCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 UpdatePersistentCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*UpdatePersistentCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{26}
}
func (x *UpdatePersistentCacheTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *UpdatePersistentCacheTaskRequest) GetPersistent() bool {
if x != nil {
return x.Persistent
}
return false
}
func (x *UpdatePersistentCacheTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// StatPersistentCacheTaskRequest represents request of StatPersistentCacheTask.
type StatPersistentCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Remote IP represents the IP address of the client initiating the stat request.
RemoteIp *string `protobuf:"bytes,2,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *StatPersistentCacheTaskRequest) Reset() {
*x = StatPersistentCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StatPersistentCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StatPersistentCacheTaskRequest) ProtoMessage() {}
func (x *StatPersistentCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 StatPersistentCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*StatPersistentCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{27}
}
func (x *StatPersistentCacheTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *StatPersistentCacheTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// DeletePersistentCacheTaskRequest represents request of DeletePersistentCacheTask.
type DeletePersistentCacheTaskRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Task id.
TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Remote IP represents the IP address of the client initiating the delete request.
RemoteIp *string `protobuf:"bytes,2,opt,name=remote_ip,json=remoteIp,proto3,oneof" json:"remote_ip,omitempty"`
}
func (x *DeletePersistentCacheTaskRequest) Reset() {
*x = DeletePersistentCacheTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeletePersistentCacheTaskRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeletePersistentCacheTaskRequest) ProtoMessage() {}
func (x *DeletePersistentCacheTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DeletePersistentCacheTaskRequest.ProtoReflect.Descriptor instead.
func (*DeletePersistentCacheTaskRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{28}
}
func (x *DeletePersistentCacheTaskRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DeletePersistentCacheTaskRequest) GetRemoteIp() string {
if x != nil && x.RemoteIp != nil {
return *x.RemoteIp
}
return ""
}
// SyncPersistentCachePiecesRequest represents request of SyncPersistentCachePieces.
type SyncPersistentCachePiecesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Interested piece numbers.
InterestedPieceNumbers []uint32 `protobuf:"varint,3,rep,packed,name=interested_piece_numbers,json=interestedPieceNumbers,proto3" json:"interested_piece_numbers,omitempty"`
}
func (x *SyncPersistentCachePiecesRequest) Reset() {
*x = SyncPersistentCachePiecesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncPersistentCachePiecesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncPersistentCachePiecesRequest) ProtoMessage() {}
func (x *SyncPersistentCachePiecesRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncPersistentCachePiecesRequest.ProtoReflect.Descriptor instead.
func (*SyncPersistentCachePiecesRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{29}
}
func (x *SyncPersistentCachePiecesRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *SyncPersistentCachePiecesRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *SyncPersistentCachePiecesRequest) GetInterestedPieceNumbers() []uint32 {
if x != nil {
return x.InterestedPieceNumbers
}
return nil
}
// SyncPersistentCachePiecesResponse represents response of SyncPersistentCachePieces.
type SyncPersistentCachePiecesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Exist piece number.
Number uint32 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
// Piece offset.
Offset uint64 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
// Piece length.
Length uint64 `protobuf:"varint,3,opt,name=length,proto3" json:"length,omitempty"`
}
func (x *SyncPersistentCachePiecesResponse) Reset() {
*x = SyncPersistentCachePiecesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncPersistentCachePiecesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncPersistentCachePiecesResponse) ProtoMessage() {}
func (x *SyncPersistentCachePiecesResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncPersistentCachePiecesResponse.ProtoReflect.Descriptor instead.
func (*SyncPersistentCachePiecesResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{30}
}
func (x *SyncPersistentCachePiecesResponse) GetNumber() uint32 {
if x != nil {
return x.Number
}
return 0
}
func (x *SyncPersistentCachePiecesResponse) GetOffset() uint64 {
if x != nil {
return x.Offset
}
return 0
}
func (x *SyncPersistentCachePiecesResponse) GetLength() uint64 {
if x != nil {
return x.Length
}
return 0
}
// DownloadPersistentCachePieceRequest represents request of DownloadPersistentCachePiece.
type DownloadPersistentCachePieceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Task id.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// Piece number.
PieceNumber uint32 `protobuf:"varint,3,opt,name=piece_number,json=pieceNumber,proto3" json:"piece_number,omitempty"`
}
func (x *DownloadPersistentCachePieceRequest) Reset() {
*x = DownloadPersistentCachePieceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPersistentCachePieceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPersistentCachePieceRequest) ProtoMessage() {}
func (x *DownloadPersistentCachePieceRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPersistentCachePieceRequest.ProtoReflect.Descriptor instead.
func (*DownloadPersistentCachePieceRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{31}
}
func (x *DownloadPersistentCachePieceRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *DownloadPersistentCachePieceRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DownloadPersistentCachePieceRequest) GetPieceNumber() uint32 {
if x != nil {
return x.PieceNumber
}
return 0
}
// DownloadPersistentCachePieceResponse represents response of DownloadPersistentCachePieces.
type DownloadPersistentCachePieceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Piece information.
Piece *v2.Piece `protobuf:"bytes,1,opt,name=piece,proto3" json:"piece,omitempty"`
// Piece metadata digest, it is used to verify the integrity of the piece metadata.
Digest *string `protobuf:"bytes,2,opt,name=digest,proto3,oneof" json:"digest,omitempty"`
}
func (x *DownloadPersistentCachePieceResponse) Reset() {
*x = DownloadPersistentCachePieceResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownloadPersistentCachePieceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownloadPersistentCachePieceResponse) ProtoMessage() {}
func (x *DownloadPersistentCachePieceResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 DownloadPersistentCachePieceResponse.ProtoReflect.Descriptor instead.
func (*DownloadPersistentCachePieceResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{32}
}
func (x *DownloadPersistentCachePieceResponse) GetPiece() *v2.Piece {
if x != nil {
return x.Piece
}
return nil
}
func (x *DownloadPersistentCachePieceResponse) GetDigest() string {
if x != nil && x.Digest != nil {
return *x.Digest
}
return ""
}
// SyncHostRequest represents request of SyncHost.
type SyncHostRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Host id.
HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
// Peer id.
PeerId string `protobuf:"bytes,2,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
}
func (x *SyncHostRequest) Reset() {
*x = SyncHostRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SyncHostRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SyncHostRequest) ProtoMessage() {}
func (x *SyncHostRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 SyncHostRequest.ProtoReflect.Descriptor instead.
func (*SyncHostRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{33}
}
func (x *SyncHostRequest) GetHostId() string {
if x != nil {
return x.HostId
}
return ""
}
func (x *SyncHostRequest) GetPeerId() string {
if x != nil {
return x.PeerId
}
return ""
}
// IBVerbsQueuePairEndpoint represents queue pair endpoint of IBVerbs.
type IBVerbsQueuePairEndpoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Number of the queue pair.
Num uint32 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"`
// Local identifier of the context.
Lid uint32 `protobuf:"varint,2,opt,name=lid,proto3" json:"lid,omitempty"`
// Global identifier of the context.
Gid []byte `protobuf:"bytes,3,opt,name=gid,proto3" json:"gid,omitempty"`
}
func (x *IBVerbsQueuePairEndpoint) Reset() {
*x = IBVerbsQueuePairEndpoint{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IBVerbsQueuePairEndpoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IBVerbsQueuePairEndpoint) ProtoMessage() {}
func (x *IBVerbsQueuePairEndpoint) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 IBVerbsQueuePairEndpoint.ProtoReflect.Descriptor instead.
func (*IBVerbsQueuePairEndpoint) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{34}
}
func (x *IBVerbsQueuePairEndpoint) GetNum() uint32 {
if x != nil {
return x.Num
}
return 0
}
func (x *IBVerbsQueuePairEndpoint) GetLid() uint32 {
if x != nil {
return x.Lid
}
return 0
}
func (x *IBVerbsQueuePairEndpoint) GetGid() []byte {
if x != nil {
return x.Gid
}
return nil
}
// ExchangeIBVerbsQueuePairEndpointRequest represents request of ExchangeIBVerbsQueuePairEndpoint.
type ExchangeIBVerbsQueuePairEndpointRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Information of the source's queue pair endpoint of IBVerbs.
Endpoint *IBVerbsQueuePairEndpoint `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
}
func (x *ExchangeIBVerbsQueuePairEndpointRequest) Reset() {
*x = ExchangeIBVerbsQueuePairEndpointRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExchangeIBVerbsQueuePairEndpointRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExchangeIBVerbsQueuePairEndpointRequest) ProtoMessage() {}
func (x *ExchangeIBVerbsQueuePairEndpointRequest) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 ExchangeIBVerbsQueuePairEndpointRequest.ProtoReflect.Descriptor instead.
func (*ExchangeIBVerbsQueuePairEndpointRequest) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{35}
}
func (x *ExchangeIBVerbsQueuePairEndpointRequest) GetEndpoint() *IBVerbsQueuePairEndpoint {
if x != nil {
return x.Endpoint
}
return nil
}
// ExchangeIBVerbsQueuePairEndpointResponse represents response of ExchangeIBVerbsQueuePairEndpoint.
type ExchangeIBVerbsQueuePairEndpointResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Information of the destination's queue pair endpoint of IBVerbs.
Endpoint *IBVerbsQueuePairEndpoint `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
}
func (x *ExchangeIBVerbsQueuePairEndpointResponse) Reset() {
*x = ExchangeIBVerbsQueuePairEndpointResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExchangeIBVerbsQueuePairEndpointResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExchangeIBVerbsQueuePairEndpointResponse) ProtoMessage() {}
func (x *ExchangeIBVerbsQueuePairEndpointResponse) ProtoReflect() protoreflect.Message {
mi := &file_pkg_apis_dfdaemon_v2_dfdaemon_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 ExchangeIBVerbsQueuePairEndpointResponse.ProtoReflect.Descriptor instead.
func (*ExchangeIBVerbsQueuePairEndpointResponse) Descriptor() ([]byte, []int) {
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP(), []int{36}
}
func (x *ExchangeIBVerbsQueuePairEndpointResponse) GetEndpoint() *IBVerbsQueuePairEndpoint {
if x != nil {
return x.Endpoint
}
return nil
}
var File_pkg_apis_dfdaemon_v2_dfdaemon_proto protoreflect.FileDescriptor
var file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDesc = []byte{
0x0a, 0x23, 0x70, 0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x64, 0x66, 0x64, 0x61, 0x65,
0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x32, 0x2f, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x1a, 0x1f, 0x70, 0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64,
0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x50, 0x0a, 0x13, 0x44, 0x6f, 0x77,
0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x39, 0x0a, 0x08, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44,
0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10,
0x01, 0x52, 0x08, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xcf, 0x02, 0x0a, 0x1b,
0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x72,
0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20,
0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x6e, 0x67,
0x74, 0x68, 0x12, 0x2b, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x52, 0x61,
0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12,
0x65, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64,
0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65,
0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54,
0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65,
0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x06, 0x70, 0x69, 0x65, 0x63, 0x65, 0x73,
0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x06, 0x70, 0x69, 0x65, 0x63, 0x65, 0x73,
0x1a, 0x41, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64,
0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x51, 0x0a,
0x1d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x46, 0x69,
0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30,
0x0a, 0x05, 0x70, 0x69, 0x65, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x69, 0x65, 0x63, 0x65, 0x42,
0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x70, 0x69, 0x65, 0x63, 0x65,
0x22, 0xf5, 0x02, 0x0a, 0x14, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73,
0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72,
0x02, 0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x74,
0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42,
0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x20, 0x0a,
0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07,
0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12,
0x6f, 0x0a, 0x1e, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x61, 0x73, 0x6b,
0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d,
0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61,
0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x48, 0x00, 0x52, 0x1b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73,
0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x75, 0x0a, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x70, 0x69, 0x65,
0x63, 0x65, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x66, 0x64,
0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x1d, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f,
0x61, 0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x53, 0x79, 0x6e,
0x63, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20,
0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64,
0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b,
0x49, 0x64, 0x12, 0x42, 0x0a, 0x18, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x65, 0x64,
0x5f, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03,
0x20, 0x03, 0x28, 0x0d, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x16,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x65, 0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x4e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x5c, 0x0a, 0x12, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x69,
0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02,
0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06,
0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6c, 0x65,
0x6e, 0x67, 0x74, 0x68, 0x22, 0x7d, 0x0a, 0x14, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07,
0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa,
0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20,
0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64,
0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x69, 0x65, 0x63, 0x65, 0x4e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x22, 0x87, 0x02, 0x0a, 0x15, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a,
0x05, 0x70, 0x69, 0x65, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63,
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x69, 0x65, 0x63, 0x65, 0x42, 0x08,
0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x70, 0x69, 0x65, 0x63, 0x65, 0x12,
0xb0, 0x01, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x42, 0x92, 0x01, 0xfa, 0x42, 0x8e, 0x01, 0x72, 0x8b, 0x01, 0x32, 0x85, 0x01, 0x5e, 0x28, 0x6d,
0x64, 0x35, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x33,
0x32, 0x7d, 0x7c, 0x73, 0x68, 0x61, 0x31, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30,
0x2d, 0x39, 0x5d, 0x7b, 0x34, 0x30, 0x7d, 0x7c, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x3a, 0x5b,
0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x36, 0x34, 0x7d, 0x7c, 0x73,
0x68, 0x61, 0x35, 0x31, 0x32, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39,
0x5d, 0x7b, 0x31, 0x32, 0x38, 0x7d, 0x7c, 0x62, 0x6c, 0x61, 0x6b, 0x65, 0x33, 0x3a, 0x5b, 0x61,
0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x36, 0x34, 0x7d, 0x7c, 0x63, 0x72,
0x63, 0x33, 0x32, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x2b,
0x29, 0x24, 0xd0, 0x01, 0x01, 0x48, 0x00, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x88,
0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x22, 0x8e, 0x01,
0x0a, 0x0f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73,
0x6b, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70, 0x01, 0xd0,
0x01, 0x01, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x88, 0x01,
0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18,
0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79,
0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x22, 0xa8,
0x04, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x69,
0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73,
0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72,
0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75,
0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x5d, 0x0a,
0x0e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18,
0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x6e, 0x74, 0x72,
0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x72,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x07,
0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65,
0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66,
0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x03, 0x28,
0x0c, 0x52, 0x10, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x68,
0x61, 0x69, 0x6e, 0x12, 0x44, 0x0a, 0x0e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x74,
0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f,
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x74,
0x6f, 0x72, 0x61, 0x67, 0x65, 0x48, 0x01, 0x52, 0x0d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53,
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x04, 0x68, 0x64, 0x66,
0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x48, 0x44, 0x46, 0x53, 0x48, 0x02, 0x52, 0x04, 0x68, 0x64, 0x66, 0x73,
0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70, 0x01, 0xd0,
0x01, 0x01, 0x48, 0x03, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x88, 0x01,
0x01, 0x1a, 0x40, 0x0a, 0x12, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64,
0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42,
0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61,
0x67, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x68, 0x64, 0x66, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x22, 0xd8, 0x02, 0x0a, 0x17, 0x4c, 0x69,
0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x61, 0x0a, 0x0f,
0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18,
0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x6e, 0x74, 0x72,
0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12,
0x32, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03,
0x20, 0x01, 0x28, 0x05, 0x42, 0x0c, 0xfa, 0x42, 0x09, 0x1a, 0x07, 0x10, 0xd7, 0x04, 0x28, 0x64,
0x40, 0x01, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x64, 0x65,
0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x04,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65,
0x73, 0x1a, 0x41, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61,
0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x3a, 0x02, 0x38, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f,
0x63, 0x6f, 0x64, 0x65, 0x22, 0x57, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12,
0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74,
0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x64, 0x69, 0x72,
0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x44, 0x69, 0x72, 0x22, 0x71, 0x0a,
0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61,
0x73, 0x6b, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69,
0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70, 0x01,
0xd0, 0x01, 0x01, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x88,
0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
0x22, 0x5a, 0x0a, 0x18, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x08,
0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65,
0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02,
0x10, 0x01, 0x52, 0x08, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xd9, 0x02, 0x0a,
0x20, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61,
0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x65, 0x6e,
0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x2b, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x05, 0x72, 0x61, 0x6e,
0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x6a, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41,
0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77,
0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x74,
0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65,
0x72, 0x12, 0x28, 0x0a, 0x06, 0x70, 0x69, 0x65, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x69,
0x65, 0x63, 0x65, 0x52, 0x06, 0x70, 0x69, 0x65, 0x63, 0x65, 0x73, 0x1a, 0x41, 0x0a, 0x13, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x08,
0x0a, 0x06, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x8a, 0x03, 0x0a, 0x19, 0x44, 0x6f, 0x77,
0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01,
0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b,
0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02,
0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x70, 0x65,
0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x7f, 0x0a, 0x24,
0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x74,
0x61, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x66, 0x64,
0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x20, 0x64, 0x6f, 0x77,
0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x74,
0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a,
0x20, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f,
0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d,
0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x69,
0x65, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x1d, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50,
0x69, 0x65, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xab, 0x01, 0x0a, 0x16, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x61,
0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74,
0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61,
0x73, 0x6b, 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x1e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74,
0x65, 0x64, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f, 0x6e,
0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x42, 0x08, 0xfa, 0x42,
0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x1b, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74,
0x65, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x73, 0x22, 0x61, 0x0a, 0x17, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x61, 0x63, 0x68, 0x65,
0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16,
0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16,
0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06,
0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x82, 0x01, 0x0a, 0x19, 0x44, 0x6f, 0x77, 0x6e, 0x6c,
0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06,
0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01,
0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x65, 0x63,
0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b,
0x70, 0x69, 0x65, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x8c, 0x02, 0x0a, 0x1a,
0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65,
0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x05, 0x70, 0x69,
0x65, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x69, 0x65, 0x63, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05,
0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x70, 0x69, 0x65, 0x63, 0x65, 0x12, 0xb0, 0x01, 0x0a,
0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x92, 0x01,
0xfa, 0x42, 0x8e, 0x01, 0x72, 0x8b, 0x01, 0x32, 0x85, 0x01, 0x5e, 0x28, 0x6d, 0x64, 0x35, 0x3a,
0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x33, 0x32, 0x7d, 0x7c,
0x73, 0x68, 0x61, 0x31, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d,
0x7b, 0x34, 0x30, 0x7d, 0x7c, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x3a, 0x5b, 0x61, 0x2d, 0x66,
0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x36, 0x34, 0x7d, 0x7c, 0x73, 0x68, 0x61, 0x35,
0x31, 0x32, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31,
0x32, 0x38, 0x7d, 0x7c, 0x62, 0x6c, 0x61, 0x6b, 0x65, 0x33, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41,
0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x36, 0x34, 0x7d, 0x7c, 0x63, 0x72, 0x63, 0x33, 0x32,
0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x2b, 0x29, 0x24, 0xd0,
0x01, 0x01, 0x48, 0x00, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x88, 0x01, 0x01, 0x42,
0x09, 0x0a, 0x07, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x22, 0x93, 0x01, 0x0a, 0x14, 0x53,
0x74, 0x61, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74,
0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f,
0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70,
0x01, 0xd0, 0x01, 0x01, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70,
0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x6c,
0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x6e,
0x6c, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
0x22, 0x3a, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61,
0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0xfe, 0x03, 0x0a,
0x22, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74,
0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x74, 0x61, 0x67, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x48, 0x01, 0x52, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x88, 0x01, 0x01, 0x12, 0x30, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x61,
0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10,
0x01, 0xd0, 0x01, 0x01, 0x48, 0x02, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x50, 0x61,
0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x48, 0x03, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12,
0x2c, 0x0a, 0x12, 0x6e, 0x65, 0x65, 0x64, 0x5f, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x6e, 0x65, 0x65,
0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x26, 0x0a,
0x0f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x69, 0x6e, 0x6b,
0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x48, 0x61, 0x72,
0x64, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x1b, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18,
0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x88,
0x01, 0x01, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70, 0x01, 0xd0, 0x01,
0x01, 0x48, 0x05, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x88, 0x01, 0x01,
0x42, 0x06, 0x0a, 0x04, 0x5f, 0x74, 0x61, 0x67, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74,
0x70, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d,
0x65, 0x6f, 0x75, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x42,
0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x22, 0x53, 0x0a,
0x2a, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x72,
0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20,
0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x6e, 0x67,
0x74, 0x68, 0x22, 0xb4, 0x03, 0x0a, 0x23, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50,
0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61,
0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f,
0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07,
0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa,
0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x20,
0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42,
0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64,
0x12, 0x9e, 0x01, 0x0a, 0x2f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x70, 0x65,
0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x74,
0x61, 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x66, 0x64,
0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x2a, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50,
0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61,
0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x75, 0x0a, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x70, 0x69,
0x65, 0x63, 0x65, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x66,
0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f,
0x61, 0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x1d, 0x64, 0x6f, 0x77, 0x6e, 0x6c,
0x6f, 0x61, 0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xd1, 0x04, 0x0a, 0x20, 0x55, 0x70,
0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61,
0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49,
0x0a, 0x1f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x63, 0x61,
0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x1b, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x46, 0x6f, 0x72, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x67,
0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x04, 0x70, 0x61, 0x74,
0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01,
0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x43, 0x0a, 0x18, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x09, 0xfa, 0x42, 0x06, 0x32, 0x04, 0x18,
0x05, 0x28, 0x01, 0x52, 0x16, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x52,
0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x74,
0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x03, 0x74, 0x61, 0x67, 0x88,
0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0c, 0x70, 0x69, 0x65,
0x63, 0x65, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x42,
0x0c, 0xfa, 0x42, 0x09, 0x32, 0x07, 0x28, 0x80, 0x80, 0x80, 0x02, 0x40, 0x01, 0x48, 0x03, 0x52,
0x0b, 0x70, 0x69, 0x65, 0x63, 0x65, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12,
0x3d, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0xaa, 0x01, 0x0a, 0x22,
0x04, 0x08, 0x80, 0xf5, 0x24, 0x32, 0x02, 0x08, 0x3c, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x38,
0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x04, 0x52, 0x07, 0x74, 0x69,
0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f,
0x74, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07,
0x72, 0x05, 0x70, 0x01, 0xd0, 0x01, 0x01, 0x48, 0x05, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74,
0x65, 0x49, 0x70, 0x88, 0x01, 0x01, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69,
0x6e, 0x67, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x74,
0x61, 0x67, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x6e,
0x67, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42,
0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x22, 0xa0, 0x01,
0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61,
0x73, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69,
0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70, 0x01,
0xd0, 0x01, 0x01, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x88,
0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
0x22, 0x7e, 0x0a, 0x1e, 0x53, 0x74, 0x61, 0x74, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61,
0x73, 0x6b, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69,
0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x70, 0x01,
0xd0, 0x01, 0x01, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70, 0x88,
0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70,
0x22, 0x80, 0x01, 0x0a, 0x20, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52,
0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74,
0x65, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72,
0x05, 0x70, 0x01, 0xd0, 0x01, 0x01, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
0x49, 0x70, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
0x5f, 0x69, 0x70, 0x22, 0xaa, 0x01, 0x0a, 0x20, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x65, 0x72, 0x73,
0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02,
0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61,
0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x18,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x69, 0x65, 0x63, 0x65,
0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x42, 0x08,
0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x16, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65,
0x73, 0x74, 0x65, 0x64, 0x50, 0x69, 0x65, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73,
0x22, 0x6b, 0x0a, 0x21, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a,
0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6f,
0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18,
0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x8c, 0x01,
0x0a, 0x23, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52,
0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f,
0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10,
0x01, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x65,
0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x0b, 0x70, 0x69, 0x65, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x96, 0x02, 0x0a,
0x24, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x05, 0x70, 0x69, 0x65, 0x63, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32,
0x2e, 0x50, 0x69, 0x65, 0x63, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01,
0x52, 0x05, 0x70, 0x69, 0x65, 0x63, 0x65, 0x12, 0xb0, 0x01, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65,
0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x92, 0x01, 0xfa, 0x42, 0x8e, 0x01, 0x72,
0x8b, 0x01, 0x32, 0x85, 0x01, 0x5e, 0x28, 0x6d, 0x64, 0x35, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41,
0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x33, 0x32, 0x7d, 0x7c, 0x73, 0x68, 0x61, 0x31, 0x3a,
0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x34, 0x30, 0x7d, 0x7c,
0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d,
0x39, 0x5d, 0x7b, 0x36, 0x34, 0x7d, 0x7c, 0x73, 0x68, 0x61, 0x35, 0x31, 0x32, 0x3a, 0x5b, 0x61,
0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, 0x32, 0x38, 0x7d, 0x7c, 0x62,
0x6c, 0x61, 0x6b, 0x65, 0x33, 0x3a, 0x5b, 0x61, 0x2d, 0x66, 0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39,
0x5d, 0x7b, 0x36, 0x34, 0x7d, 0x7c, 0x63, 0x72, 0x63, 0x33, 0x32, 0x3a, 0x5b, 0x61, 0x2d, 0x66,
0x41, 0x2d, 0x46, 0x30, 0x2d, 0x39, 0x5d, 0x2b, 0x29, 0x24, 0xd0, 0x01, 0x01, 0x48, 0x00, 0x52,
0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64,
0x69, 0x67, 0x65, 0x73, 0x74, 0x22, 0x55, 0x0a, 0x0f, 0x53, 0x79, 0x6e, 0x63, 0x48, 0x6f, 0x73,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02,
0x10, 0x01, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x70, 0x65,
0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x22, 0x59, 0x0a, 0x18,
0x49, 0x42, 0x56, 0x65, 0x72, 0x62, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x61, 0x69, 0x72,
0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6c, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x03,
0x67, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x7a, 0x02,
0x68, 0x10, 0x52, 0x03, 0x67, 0x69, 0x64, 0x22, 0x76, 0x0a, 0x27, 0x45, 0x78, 0x63, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x49, 0x42, 0x56, 0x65, 0x72, 0x62, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50,
0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x4b, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x49, 0x42, 0x56, 0x65, 0x72, 0x62, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50,
0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05,
0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22,
0x77, 0x0a, 0x28, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x42, 0x56, 0x65, 0x72,
0x62, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70, 0x6f,
0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x08, 0x65,
0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e,
0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x42, 0x56, 0x65,
0x72, 0x62, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70,
0x6f, 0x69, 0x6e, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x08,
0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x32, 0xe0, 0x0d, 0x0a, 0x0e, 0x44, 0x66, 0x64,
0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x55, 0x0a, 0x0c, 0x44,
0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x20, 0x2e, 0x64, 0x66,
0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f,
0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e,
0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e,
0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x30, 0x01, 0x12, 0x39, 0x0a, 0x08, 0x53, 0x74, 0x61, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x1c,
0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x74, 0x61,
0x74, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x63,
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x44, 0x0a,
0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x1e, 0x2e, 0x64, 0x66,
0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x12, 0x4f, 0x0a, 0x0a, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x69, 0x65, 0x63, 0x65,
0x73, 0x12, 0x1e, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e,
0x53, 0x79, 0x6e, 0x63, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1f, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e,
0x53, 0x79, 0x6e, 0x63, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x30, 0x01, 0x12, 0x56, 0x0a, 0x0d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x50, 0x69, 0x65, 0x63, 0x65, 0x12, 0x21, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x69, 0x65, 0x63,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65,
0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50,
0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x11,
0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x25, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e,
0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65,
0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43,
0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x30, 0x01, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x12, 0x21, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
0x32, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x4e, 0x0a, 0x0f,
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12,
0x23, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5e, 0x0a, 0x0f,
0x53, 0x79, 0x6e, 0x63, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x12,
0x23, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x79,
0x6e, 0x63, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63,
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x65, 0x0a, 0x12,
0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65,
0x63, 0x65, 0x12, 0x26, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32,
0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69,
0x65, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x64, 0x66, 0x64,
0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x82, 0x01, 0x0a, 0x1b, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x12, 0x2f, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x62, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x2d, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x66, 0x0a, 0x17,
0x53, 0x74, 0x61, 0x74, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61,
0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x2b, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d,
0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32,
0x2e, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x12, 0x62, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65,
0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x2d, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e,
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74,
0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x7c, 0x0a, 0x19, 0x53, 0x79, 0x6e, 0x63,
0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50,
0x69, 0x65, 0x63, 0x65, 0x73, 0x12, 0x2d, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e,
0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x83, 0x01, 0x0a, 0x1c, 0x44, 0x6f, 0x77, 0x6e, 0x6c,
0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63,
0x68, 0x65, 0x50, 0x69, 0x65, 0x63, 0x65, 0x12, 0x30, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d,
0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65,
0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x69, 0x65,
0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x64, 0x66, 0x64, 0x61,
0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50,
0x69, 0x65, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x08,
0x53, 0x79, 0x6e, 0x63, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x1c, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65,
0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x48, 0x6f, 0x73, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x30, 0x01, 0x12, 0x8f, 0x01, 0x0a, 0x20, 0x45, 0x78,
0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x42, 0x56, 0x65, 0x72, 0x62, 0x73, 0x51, 0x75, 0x65,
0x75, 0x65, 0x50, 0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x34,
0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x45, 0x78, 0x63,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x42, 0x56, 0x65, 0x72, 0x62, 0x73, 0x51, 0x75, 0x65, 0x75,
0x65, 0x50, 0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x42, 0x56, 0x65, 0x72,
0x62, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x61, 0x69, 0x72, 0x45, 0x6e, 0x64, 0x70, 0x6f,
0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xdf, 0x07, 0x0a, 0x10,
0x44, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x12, 0x55, 0x0a, 0x0c, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b,
0x12, 0x20, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44,
0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x21, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32,
0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x39, 0x0a, 0x08, 0x53, 0x74, 0x61, 0x74, 0x54,
0x61, 0x73, 0x6b, 0x12, 0x1c, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
0x32, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x0f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x54, 0x61,
0x73, 0x6b, 0x12, 0x5c, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x6e,
0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x23, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x6e, 0x74, 0x72,
0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x64, 0x66, 0x64,
0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73,
0x6b, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x44, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x1e,
0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3c, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x48, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x12, 0x64, 0x0a, 0x11, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x25, 0x2e, 0x64, 0x66, 0x64, 0x61,
0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x26, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44,
0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x74,
0x61, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x21, 0x2e, 0x64, 0x66,
0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x43, 0x61,
0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14,
0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x12, 0x4e, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61,
0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x23, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d,
0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x61, 0x63, 0x68,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x12, 0x82, 0x01, 0x0a, 0x1b, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x12, 0x2f, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e,
0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2e, 0x76, 0x32, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73,
0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x6a, 0x0a, 0x19, 0x55, 0x70, 0x6c,
0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63,
0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x2d, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f,
0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x65, 0x72, 0x73, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76,
0x32, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x66, 0x0a, 0x17, 0x53, 0x74, 0x61, 0x74, 0x50, 0x65, 0x72,
0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x12, 0x2b, 0x2e, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x53,
0x74, 0x61, 0x74, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63,
0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x2d, 0x5a,
0x2b, 0x64, 0x37, 0x79, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x70,
0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
0x2f, 0x76, 0x32, 0x3b, 0x64, 0x66, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
}
var (
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescOnce sync.Once
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescData = file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDesc
)
func file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescGZIP() []byte {
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescOnce.Do(func() {
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescData = protoimpl.X.CompressGZIP(file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescData)
})
return file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDescData
}
var file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes = make([]protoimpl.MessageInfo, 41)
var file_pkg_apis_dfdaemon_v2_dfdaemon_proto_goTypes = []interface{}{
(*DownloadTaskRequest)(nil), // 0: dfdaemon.v2.DownloadTaskRequest
(*DownloadTaskStartedResponse)(nil), // 1: dfdaemon.v2.DownloadTaskStartedResponse
(*DownloadPieceFinishedResponse)(nil), // 2: dfdaemon.v2.DownloadPieceFinishedResponse
(*DownloadTaskResponse)(nil), // 3: dfdaemon.v2.DownloadTaskResponse
(*SyncPiecesRequest)(nil), // 4: dfdaemon.v2.SyncPiecesRequest
(*SyncPiecesResponse)(nil), // 5: dfdaemon.v2.SyncPiecesResponse
(*DownloadPieceRequest)(nil), // 6: dfdaemon.v2.DownloadPieceRequest
(*DownloadPieceResponse)(nil), // 7: dfdaemon.v2.DownloadPieceResponse
(*StatTaskRequest)(nil), // 8: dfdaemon.v2.StatTaskRequest
(*ListTaskEntriesRequest)(nil), // 9: dfdaemon.v2.ListTaskEntriesRequest
(*ListTaskEntriesResponse)(nil), // 10: dfdaemon.v2.ListTaskEntriesResponse
(*Entry)(nil), // 11: dfdaemon.v2.Entry
(*DeleteTaskRequest)(nil), // 12: dfdaemon.v2.DeleteTaskRequest
(*DownloadCacheTaskRequest)(nil), // 13: dfdaemon.v2.DownloadCacheTaskRequest
(*DownloadCacheTaskStartedResponse)(nil), // 14: dfdaemon.v2.DownloadCacheTaskStartedResponse
(*DownloadCacheTaskResponse)(nil), // 15: dfdaemon.v2.DownloadCacheTaskResponse
(*SyncCachePiecesRequest)(nil), // 16: dfdaemon.v2.SyncCachePiecesRequest
(*SyncCachePiecesResponse)(nil), // 17: dfdaemon.v2.SyncCachePiecesResponse
(*DownloadCachePieceRequest)(nil), // 18: dfdaemon.v2.DownloadCachePieceRequest
(*DownloadCachePieceResponse)(nil), // 19: dfdaemon.v2.DownloadCachePieceResponse
(*StatCacheTaskRequest)(nil), // 20: dfdaemon.v2.StatCacheTaskRequest
(*DeleteCacheTaskRequest)(nil), // 21: dfdaemon.v2.DeleteCacheTaskRequest
(*DownloadPersistentCacheTaskRequest)(nil), // 22: dfdaemon.v2.DownloadPersistentCacheTaskRequest
(*DownloadPersistentCacheTaskStartedResponse)(nil), // 23: dfdaemon.v2.DownloadPersistentCacheTaskStartedResponse
(*DownloadPersistentCacheTaskResponse)(nil), // 24: dfdaemon.v2.DownloadPersistentCacheTaskResponse
(*UploadPersistentCacheTaskRequest)(nil), // 25: dfdaemon.v2.UploadPersistentCacheTaskRequest
(*UpdatePersistentCacheTaskRequest)(nil), // 26: dfdaemon.v2.UpdatePersistentCacheTaskRequest
(*StatPersistentCacheTaskRequest)(nil), // 27: dfdaemon.v2.StatPersistentCacheTaskRequest
(*DeletePersistentCacheTaskRequest)(nil), // 28: dfdaemon.v2.DeletePersistentCacheTaskRequest
(*SyncPersistentCachePiecesRequest)(nil), // 29: dfdaemon.v2.SyncPersistentCachePiecesRequest
(*SyncPersistentCachePiecesResponse)(nil), // 30: dfdaemon.v2.SyncPersistentCachePiecesResponse
(*DownloadPersistentCachePieceRequest)(nil), // 31: dfdaemon.v2.DownloadPersistentCachePieceRequest
(*DownloadPersistentCachePieceResponse)(nil), // 32: dfdaemon.v2.DownloadPersistentCachePieceResponse
(*SyncHostRequest)(nil), // 33: dfdaemon.v2.SyncHostRequest
(*IBVerbsQueuePairEndpoint)(nil), // 34: dfdaemon.v2.IBVerbsQueuePairEndpoint
(*ExchangeIBVerbsQueuePairEndpointRequest)(nil), // 35: dfdaemon.v2.ExchangeIBVerbsQueuePairEndpointRequest
(*ExchangeIBVerbsQueuePairEndpointResponse)(nil), // 36: dfdaemon.v2.ExchangeIBVerbsQueuePairEndpointResponse
nil, // 37: dfdaemon.v2.DownloadTaskStartedResponse.ResponseHeaderEntry
nil, // 38: dfdaemon.v2.ListTaskEntriesRequest.RequestHeaderEntry
nil, // 39: dfdaemon.v2.ListTaskEntriesResponse.ResponseHeaderEntry
nil, // 40: dfdaemon.v2.DownloadCacheTaskStartedResponse.ResponseHeaderEntry
(*v2.Download)(nil), // 41: common.v2.Download
(*v2.Range)(nil), // 42: common.v2.Range
(*v2.Piece)(nil), // 43: common.v2.Piece
(*durationpb.Duration)(nil), // 44: google.protobuf.Duration
(*v2.ObjectStorage)(nil), // 45: common.v2.ObjectStorage
(*v2.HDFS)(nil), // 46: common.v2.HDFS
(*v2.CacheDownload)(nil), // 47: common.v2.CacheDownload
(*emptypb.Empty)(nil), // 48: google.protobuf.Empty
(*v2.Task)(nil), // 49: common.v2.Task
(*v2.CacheTask)(nil), // 50: common.v2.CacheTask
(*v2.PersistentCacheTask)(nil), // 51: common.v2.PersistentCacheTask
(*v2.Host)(nil), // 52: common.v2.Host
}
var file_pkg_apis_dfdaemon_v2_dfdaemon_proto_depIdxs = []int32{
41, // 0: dfdaemon.v2.DownloadTaskRequest.download:type_name -> common.v2.Download
42, // 1: dfdaemon.v2.DownloadTaskStartedResponse.range:type_name -> common.v2.Range
37, // 2: dfdaemon.v2.DownloadTaskStartedResponse.response_header:type_name -> dfdaemon.v2.DownloadTaskStartedResponse.ResponseHeaderEntry
43, // 3: dfdaemon.v2.DownloadTaskStartedResponse.pieces:type_name -> common.v2.Piece
43, // 4: dfdaemon.v2.DownloadPieceFinishedResponse.piece:type_name -> common.v2.Piece
1, // 5: dfdaemon.v2.DownloadTaskResponse.download_task_started_response:type_name -> dfdaemon.v2.DownloadTaskStartedResponse
2, // 6: dfdaemon.v2.DownloadTaskResponse.download_piece_finished_response:type_name -> dfdaemon.v2.DownloadPieceFinishedResponse
43, // 7: dfdaemon.v2.DownloadPieceResponse.piece:type_name -> common.v2.Piece
38, // 8: dfdaemon.v2.ListTaskEntriesRequest.request_header:type_name -> dfdaemon.v2.ListTaskEntriesRequest.RequestHeaderEntry
44, // 9: dfdaemon.v2.ListTaskEntriesRequest.timeout:type_name -> google.protobuf.Duration
45, // 10: dfdaemon.v2.ListTaskEntriesRequest.object_storage:type_name -> common.v2.ObjectStorage
46, // 11: dfdaemon.v2.ListTaskEntriesRequest.hdfs:type_name -> common.v2.HDFS
39, // 12: dfdaemon.v2.ListTaskEntriesResponse.response_header:type_name -> dfdaemon.v2.ListTaskEntriesResponse.ResponseHeaderEntry
11, // 13: dfdaemon.v2.ListTaskEntriesResponse.entries:type_name -> dfdaemon.v2.Entry
47, // 14: dfdaemon.v2.DownloadCacheTaskRequest.download:type_name -> common.v2.CacheDownload
42, // 15: dfdaemon.v2.DownloadCacheTaskStartedResponse.range:type_name -> common.v2.Range
40, // 16: dfdaemon.v2.DownloadCacheTaskStartedResponse.response_header:type_name -> dfdaemon.v2.DownloadCacheTaskStartedResponse.ResponseHeaderEntry
43, // 17: dfdaemon.v2.DownloadCacheTaskStartedResponse.pieces:type_name -> common.v2.Piece
14, // 18: dfdaemon.v2.DownloadCacheTaskResponse.download_cache_task_started_response:type_name -> dfdaemon.v2.DownloadCacheTaskStartedResponse
2, // 19: dfdaemon.v2.DownloadCacheTaskResponse.download_piece_finished_response:type_name -> dfdaemon.v2.DownloadPieceFinishedResponse
43, // 20: dfdaemon.v2.DownloadCachePieceResponse.piece:type_name -> common.v2.Piece
44, // 21: dfdaemon.v2.DownloadPersistentCacheTaskRequest.timeout:type_name -> google.protobuf.Duration
23, // 22: dfdaemon.v2.DownloadPersistentCacheTaskResponse.download_persistent_cache_task_started_response:type_name -> dfdaemon.v2.DownloadPersistentCacheTaskStartedResponse
2, // 23: dfdaemon.v2.DownloadPersistentCacheTaskResponse.download_piece_finished_response:type_name -> dfdaemon.v2.DownloadPieceFinishedResponse
44, // 24: dfdaemon.v2.UploadPersistentCacheTaskRequest.ttl:type_name -> google.protobuf.Duration
44, // 25: dfdaemon.v2.UploadPersistentCacheTaskRequest.timeout:type_name -> google.protobuf.Duration
43, // 26: dfdaemon.v2.DownloadPersistentCachePieceResponse.piece:type_name -> common.v2.Piece
34, // 27: dfdaemon.v2.ExchangeIBVerbsQueuePairEndpointRequest.endpoint:type_name -> dfdaemon.v2.IBVerbsQueuePairEndpoint
34, // 28: dfdaemon.v2.ExchangeIBVerbsQueuePairEndpointResponse.endpoint:type_name -> dfdaemon.v2.IBVerbsQueuePairEndpoint
0, // 29: dfdaemon.v2.DfdaemonUpload.DownloadTask:input_type -> dfdaemon.v2.DownloadTaskRequest
8, // 30: dfdaemon.v2.DfdaemonUpload.StatTask:input_type -> dfdaemon.v2.StatTaskRequest
12, // 31: dfdaemon.v2.DfdaemonUpload.DeleteTask:input_type -> dfdaemon.v2.DeleteTaskRequest
4, // 32: dfdaemon.v2.DfdaemonUpload.SyncPieces:input_type -> dfdaemon.v2.SyncPiecesRequest
6, // 33: dfdaemon.v2.DfdaemonUpload.DownloadPiece:input_type -> dfdaemon.v2.DownloadPieceRequest
13, // 34: dfdaemon.v2.DfdaemonUpload.DownloadCacheTask:input_type -> dfdaemon.v2.DownloadCacheTaskRequest
20, // 35: dfdaemon.v2.DfdaemonUpload.StatCacheTask:input_type -> dfdaemon.v2.StatCacheTaskRequest
21, // 36: dfdaemon.v2.DfdaemonUpload.DeleteCacheTask:input_type -> dfdaemon.v2.DeleteCacheTaskRequest
16, // 37: dfdaemon.v2.DfdaemonUpload.SyncCachePieces:input_type -> dfdaemon.v2.SyncCachePiecesRequest
18, // 38: dfdaemon.v2.DfdaemonUpload.DownloadCachePiece:input_type -> dfdaemon.v2.DownloadCachePieceRequest
22, // 39: dfdaemon.v2.DfdaemonUpload.DownloadPersistentCacheTask:input_type -> dfdaemon.v2.DownloadPersistentCacheTaskRequest
26, // 40: dfdaemon.v2.DfdaemonUpload.UpdatePersistentCacheTask:input_type -> dfdaemon.v2.UpdatePersistentCacheTaskRequest
27, // 41: dfdaemon.v2.DfdaemonUpload.StatPersistentCacheTask:input_type -> dfdaemon.v2.StatPersistentCacheTaskRequest
28, // 42: dfdaemon.v2.DfdaemonUpload.DeletePersistentCacheTask:input_type -> dfdaemon.v2.DeletePersistentCacheTaskRequest
29, // 43: dfdaemon.v2.DfdaemonUpload.SyncPersistentCachePieces:input_type -> dfdaemon.v2.SyncPersistentCachePiecesRequest
31, // 44: dfdaemon.v2.DfdaemonUpload.DownloadPersistentCachePiece:input_type -> dfdaemon.v2.DownloadPersistentCachePieceRequest
33, // 45: dfdaemon.v2.DfdaemonUpload.SyncHost:input_type -> dfdaemon.v2.SyncHostRequest
35, // 46: dfdaemon.v2.DfdaemonUpload.ExchangeIBVerbsQueuePairEndpoint:input_type -> dfdaemon.v2.ExchangeIBVerbsQueuePairEndpointRequest
0, // 47: dfdaemon.v2.DfdaemonDownload.DownloadTask:input_type -> dfdaemon.v2.DownloadTaskRequest
8, // 48: dfdaemon.v2.DfdaemonDownload.StatTask:input_type -> dfdaemon.v2.StatTaskRequest
9, // 49: dfdaemon.v2.DfdaemonDownload.ListTaskEntries:input_type -> dfdaemon.v2.ListTaskEntriesRequest
12, // 50: dfdaemon.v2.DfdaemonDownload.DeleteTask:input_type -> dfdaemon.v2.DeleteTaskRequest
48, // 51: dfdaemon.v2.DfdaemonDownload.DeleteHost:input_type -> google.protobuf.Empty
13, // 52: dfdaemon.v2.DfdaemonDownload.DownloadCacheTask:input_type -> dfdaemon.v2.DownloadCacheTaskRequest
20, // 53: dfdaemon.v2.DfdaemonDownload.StatCacheTask:input_type -> dfdaemon.v2.StatCacheTaskRequest
21, // 54: dfdaemon.v2.DfdaemonDownload.DeleteCacheTask:input_type -> dfdaemon.v2.DeleteCacheTaskRequest
22, // 55: dfdaemon.v2.DfdaemonDownload.DownloadPersistentCacheTask:input_type -> dfdaemon.v2.DownloadPersistentCacheTaskRequest
25, // 56: dfdaemon.v2.DfdaemonDownload.UploadPersistentCacheTask:input_type -> dfdaemon.v2.UploadPersistentCacheTaskRequest
27, // 57: dfdaemon.v2.DfdaemonDownload.StatPersistentCacheTask:input_type -> dfdaemon.v2.StatPersistentCacheTaskRequest
3, // 58: dfdaemon.v2.DfdaemonUpload.DownloadTask:output_type -> dfdaemon.v2.DownloadTaskResponse
49, // 59: dfdaemon.v2.DfdaemonUpload.StatTask:output_type -> common.v2.Task
48, // 60: dfdaemon.v2.DfdaemonUpload.DeleteTask:output_type -> google.protobuf.Empty
5, // 61: dfdaemon.v2.DfdaemonUpload.SyncPieces:output_type -> dfdaemon.v2.SyncPiecesResponse
7, // 62: dfdaemon.v2.DfdaemonUpload.DownloadPiece:output_type -> dfdaemon.v2.DownloadPieceResponse
15, // 63: dfdaemon.v2.DfdaemonUpload.DownloadCacheTask:output_type -> dfdaemon.v2.DownloadCacheTaskResponse
50, // 64: dfdaemon.v2.DfdaemonUpload.StatCacheTask:output_type -> common.v2.CacheTask
48, // 65: dfdaemon.v2.DfdaemonUpload.DeleteCacheTask:output_type -> google.protobuf.Empty
17, // 66: dfdaemon.v2.DfdaemonUpload.SyncCachePieces:output_type -> dfdaemon.v2.SyncCachePiecesResponse
19, // 67: dfdaemon.v2.DfdaemonUpload.DownloadCachePiece:output_type -> dfdaemon.v2.DownloadCachePieceResponse
24, // 68: dfdaemon.v2.DfdaemonUpload.DownloadPersistentCacheTask:output_type -> dfdaemon.v2.DownloadPersistentCacheTaskResponse
48, // 69: dfdaemon.v2.DfdaemonUpload.UpdatePersistentCacheTask:output_type -> google.protobuf.Empty
51, // 70: dfdaemon.v2.DfdaemonUpload.StatPersistentCacheTask:output_type -> common.v2.PersistentCacheTask
48, // 71: dfdaemon.v2.DfdaemonUpload.DeletePersistentCacheTask:output_type -> google.protobuf.Empty
30, // 72: dfdaemon.v2.DfdaemonUpload.SyncPersistentCachePieces:output_type -> dfdaemon.v2.SyncPersistentCachePiecesResponse
32, // 73: dfdaemon.v2.DfdaemonUpload.DownloadPersistentCachePiece:output_type -> dfdaemon.v2.DownloadPersistentCachePieceResponse
52, // 74: dfdaemon.v2.DfdaemonUpload.SyncHost:output_type -> common.v2.Host
36, // 75: dfdaemon.v2.DfdaemonUpload.ExchangeIBVerbsQueuePairEndpoint:output_type -> dfdaemon.v2.ExchangeIBVerbsQueuePairEndpointResponse
3, // 76: dfdaemon.v2.DfdaemonDownload.DownloadTask:output_type -> dfdaemon.v2.DownloadTaskResponse
49, // 77: dfdaemon.v2.DfdaemonDownload.StatTask:output_type -> common.v2.Task
10, // 78: dfdaemon.v2.DfdaemonDownload.ListTaskEntries:output_type -> dfdaemon.v2.ListTaskEntriesResponse
48, // 79: dfdaemon.v2.DfdaemonDownload.DeleteTask:output_type -> google.protobuf.Empty
48, // 80: dfdaemon.v2.DfdaemonDownload.DeleteHost:output_type -> google.protobuf.Empty
15, // 81: dfdaemon.v2.DfdaemonDownload.DownloadCacheTask:output_type -> dfdaemon.v2.DownloadCacheTaskResponse
50, // 82: dfdaemon.v2.DfdaemonDownload.StatCacheTask:output_type -> common.v2.CacheTask
48, // 83: dfdaemon.v2.DfdaemonDownload.DeleteCacheTask:output_type -> google.protobuf.Empty
24, // 84: dfdaemon.v2.DfdaemonDownload.DownloadPersistentCacheTask:output_type -> dfdaemon.v2.DownloadPersistentCacheTaskResponse
51, // 85: dfdaemon.v2.DfdaemonDownload.UploadPersistentCacheTask:output_type -> common.v2.PersistentCacheTask
51, // 86: dfdaemon.v2.DfdaemonDownload.StatPersistentCacheTask:output_type -> common.v2.PersistentCacheTask
58, // [58:87] is the sub-list for method output_type
29, // [29:58] is the sub-list for method input_type
29, // [29:29] is the sub-list for extension type_name
29, // [29:29] is the sub-list for extension extendee
0, // [0:29] is the sub-list for field type_name
}
func init() { file_pkg_apis_dfdaemon_v2_dfdaemon_proto_init() }
func file_pkg_apis_dfdaemon_v2_dfdaemon_proto_init() {
if File_pkg_apis_dfdaemon_v2_dfdaemon_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadTaskStartedResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPieceFinishedResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadTaskResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncPiecesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncPiecesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPieceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPieceResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StatTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListTaskEntriesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListTaskEntriesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Entry); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadCacheTaskStartedResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadCacheTaskResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncCachePiecesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncCachePiecesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadCachePieceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadCachePieceResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StatCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPersistentCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPersistentCacheTaskStartedResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPersistentCacheTaskResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UploadPersistentCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdatePersistentCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StatPersistentCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeletePersistentCacheTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncPersistentCachePiecesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncPersistentCachePiecesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPersistentCachePieceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownloadPersistentCachePieceResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SyncHostRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IBVerbsQueuePairEndpoint); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ExchangeIBVerbsQueuePairEndpointRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ExchangeIBVerbsQueuePairEndpointResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[1].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[3].OneofWrappers = []interface{}{
(*DownloadTaskResponse_DownloadTaskStartedResponse)(nil),
(*DownloadTaskResponse_DownloadPieceFinishedResponse)(nil),
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[7].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[8].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[9].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[10].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[12].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[14].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[15].OneofWrappers = []interface{}{
(*DownloadCacheTaskResponse_DownloadCacheTaskStartedResponse)(nil),
(*DownloadCacheTaskResponse_DownloadPieceFinishedResponse)(nil),
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[19].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[20].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[22].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[24].OneofWrappers = []interface{}{
(*DownloadPersistentCacheTaskResponse_DownloadPersistentCacheTaskStartedResponse)(nil),
(*DownloadPersistentCacheTaskResponse_DownloadPieceFinishedResponse)(nil),
}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[25].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[26].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[27].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[28].OneofWrappers = []interface{}{}
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes[32].OneofWrappers = []interface{}{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDesc,
NumEnums: 0,
NumMessages: 41,
NumExtensions: 0,
NumServices: 2,
},
GoTypes: file_pkg_apis_dfdaemon_v2_dfdaemon_proto_goTypes,
DependencyIndexes: file_pkg_apis_dfdaemon_v2_dfdaemon_proto_depIdxs,
MessageInfos: file_pkg_apis_dfdaemon_v2_dfdaemon_proto_msgTypes,
}.Build()
File_pkg_apis_dfdaemon_v2_dfdaemon_proto = out.File
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_rawDesc = nil
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_goTypes = nil
file_pkg_apis_dfdaemon_v2_dfdaemon_proto_depIdxs = nil
}