// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.6
// 	protoc        v6.33.4
// source: mount_peer.proto

package mount_peer_pb

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type ChunkAnnounceRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	FileIds       []string               `protobuf:"bytes,1,rep,name=file_ids,json=fileIds,proto3" json:"file_ids,omitempty"`
	PeerAddr      string                 `protobuf:"bytes,2,opt,name=peer_addr,json=peerAddr,proto3" json:"peer_addr,omitempty"`
	Rack          string                 `protobuf:"bytes,3,opt,name=rack,proto3" json:"rack,omitempty"`
	TtlSeconds    int32                  `protobuf:"varint,4,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"`
	DataCenter    string                 `protobuf:"bytes,5,opt,name=data_center,json=dataCenter,proto3" json:"data_center,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ChunkAnnounceRequest) Reset() {
	*x = ChunkAnnounceRequest{}
	mi := &file_mount_peer_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ChunkAnnounceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ChunkAnnounceRequest) ProtoMessage() {}

func (x *ChunkAnnounceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ChunkAnnounceRequest.ProtoReflect.Descriptor instead.
func (*ChunkAnnounceRequest) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{0}
}

func (x *ChunkAnnounceRequest) GetFileIds() []string {
	if x != nil {
		return x.FileIds
	}
	return nil
}

func (x *ChunkAnnounceRequest) GetPeerAddr() string {
	if x != nil {
		return x.PeerAddr
	}
	return ""
}

func (x *ChunkAnnounceRequest) GetRack() string {
	if x != nil {
		return x.Rack
	}
	return ""
}

func (x *ChunkAnnounceRequest) GetTtlSeconds() int32 {
	if x != nil {
		return x.TtlSeconds
	}
	return 0
}

func (x *ChunkAnnounceRequest) GetDataCenter() string {
	if x != nil {
		return x.DataCenter
	}
	return ""
}

type ChunkAnnounceResponse struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	RejectedFileIds []string               `protobuf:"bytes,1,rep,name=rejected_file_ids,json=rejectedFileIds,proto3" json:"rejected_file_ids,omitempty"` // receiver is not the owner of these fids
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *ChunkAnnounceResponse) Reset() {
	*x = ChunkAnnounceResponse{}
	mi := &file_mount_peer_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ChunkAnnounceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ChunkAnnounceResponse) ProtoMessage() {}

func (x *ChunkAnnounceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ChunkAnnounceResponse.ProtoReflect.Descriptor instead.
func (*ChunkAnnounceResponse) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{1}
}

func (x *ChunkAnnounceResponse) GetRejectedFileIds() []string {
	if x != nil {
		return x.RejectedFileIds
	}
	return nil
}

type ChunkLookupRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	FileIds       []string               `protobuf:"bytes,1,rep,name=file_ids,json=fileIds,proto3" json:"file_ids,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ChunkLookupRequest) Reset() {
	*x = ChunkLookupRequest{}
	mi := &file_mount_peer_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ChunkLookupRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ChunkLookupRequest) ProtoMessage() {}

func (x *ChunkLookupRequest) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ChunkLookupRequest.ProtoReflect.Descriptor instead.
func (*ChunkLookupRequest) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{2}
}

func (x *ChunkLookupRequest) GetFileIds() []string {
	if x != nil {
		return x.FileIds
	}
	return nil
}

type ChunkLookupResponse struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	PeersByFid      map[string]*PeerSet    `protobuf:"bytes,1,rep,name=peers_by_fid,json=peersByFid,proto3" json:"peers_by_fid,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	NotOwnerFileIds []string               `protobuf:"bytes,2,rep,name=not_owner_file_ids,json=notOwnerFileIds,proto3" json:"not_owner_file_ids,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *ChunkLookupResponse) Reset() {
	*x = ChunkLookupResponse{}
	mi := &file_mount_peer_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ChunkLookupResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ChunkLookupResponse) ProtoMessage() {}

func (x *ChunkLookupResponse) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ChunkLookupResponse.ProtoReflect.Descriptor instead.
func (*ChunkLookupResponse) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{3}
}

func (x *ChunkLookupResponse) GetPeersByFid() map[string]*PeerSet {
	if x != nil {
		return x.PeersByFid
	}
	return nil
}

func (x *ChunkLookupResponse) GetNotOwnerFileIds() []string {
	if x != nil {
		return x.NotOwnerFileIds
	}
	return nil
}

type PeerSet struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Peers         []*PeerInfo            `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PeerSet) Reset() {
	*x = PeerSet{}
	mi := &file_mount_peer_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PeerSet) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PeerSet) ProtoMessage() {}

func (x *PeerSet) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PeerSet.ProtoReflect.Descriptor instead.
func (*PeerSet) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{4}
}

func (x *PeerSet) GetPeers() []*PeerInfo {
	if x != nil {
		return x.Peers
	}
	return nil
}

type PeerInfo struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	PeerAddr      string                 `protobuf:"bytes,1,opt,name=peer_addr,json=peerAddr,proto3" json:"peer_addr,omitempty"`
	Rack          string                 `protobuf:"bytes,2,opt,name=rack,proto3" json:"rack,omitempty"`
	DataCenter    string                 `protobuf:"bytes,3,opt,name=data_center,json=dataCenter,proto3" json:"data_center,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PeerInfo) Reset() {
	*x = PeerInfo{}
	mi := &file_mount_peer_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PeerInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PeerInfo) ProtoMessage() {}

func (x *PeerInfo) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PeerInfo.ProtoReflect.Descriptor instead.
func (*PeerInfo) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{5}
}

func (x *PeerInfo) GetPeerAddr() string {
	if x != nil {
		return x.PeerAddr
	}
	return ""
}

func (x *PeerInfo) GetRack() string {
	if x != nil {
		return x.Rack
	}
	return ""
}

func (x *PeerInfo) GetDataCenter() string {
	if x != nil {
		return x.DataCenter
	}
	return ""
}

type FetchChunkRequest struct {
	state        protoimpl.MessageState `protogen:"open.v1"`
	FileId       string                 `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	ExpectedEtag string                 `protobuf:"bytes,2,opt,name=expected_etag,json=expectedEtag,proto3" json:"expected_etag,omitempty"` // caller's expected MD5 over the FULL chunk.
	// Only meaningful when offset=0 and length=0
	// (a whole-chunk fetch); partial reads can't
	// be verified against a whole-chunk MD5.
	// Fetcher re-verifies end-to-end.
	ExpectedSize uint64 `protobuf:"varint,3,opt,name=expected_size,json=expectedSize,proto3" json:"expected_size,omitempty"` // filer-reported chunk byte count; server sizes
	// its cache-read buffer to exactly this so a
	// sub-max-part-size chunk doesn't trigger the
	// cache wrapper's all-or-nothing miss path.
	Offset uint64 `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"` // optional: byte offset within the chunk to
	// start reading from. 0 (default) means a
	// whole-chunk transfer starting at byte zero.
	Length        uint64 `protobuf:"varint,5,opt,name=length,proto3" json:"length,omitempty"` // optional: number of bytes to return from
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *FetchChunkRequest) Reset() {
	*x = FetchChunkRequest{}
	mi := &file_mount_peer_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *FetchChunkRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FetchChunkRequest) ProtoMessage() {}

func (x *FetchChunkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FetchChunkRequest.ProtoReflect.Descriptor instead.
func (*FetchChunkRequest) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{6}
}

func (x *FetchChunkRequest) GetFileId() string {
	if x != nil {
		return x.FileId
	}
	return ""
}

func (x *FetchChunkRequest) GetExpectedEtag() string {
	if x != nil {
		return x.ExpectedEtag
	}
	return ""
}

func (x *FetchChunkRequest) GetExpectedSize() uint64 {
	if x != nil {
		return x.ExpectedSize
	}
	return 0
}

func (x *FetchChunkRequest) GetOffset() uint64 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *FetchChunkRequest) GetLength() uint64 {
	if x != nil {
		return x.Length
	}
	return 0
}

type FetchChunkResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Data          []byte                 `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` // next frame of chunk bytes; concatenate across stream
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *FetchChunkResponse) Reset() {
	*x = FetchChunkResponse{}
	mi := &file_mount_peer_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *FetchChunkResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FetchChunkResponse) ProtoMessage() {}

func (x *FetchChunkResponse) ProtoReflect() protoreflect.Message {
	mi := &file_mount_peer_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FetchChunkResponse.ProtoReflect.Descriptor instead.
func (*FetchChunkResponse) Descriptor() ([]byte, []int) {
	return file_mount_peer_proto_rawDescGZIP(), []int{7}
}

func (x *FetchChunkResponse) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

var File_mount_peer_proto protoreflect.FileDescriptor

const file_mount_peer_proto_rawDesc = "" +
	"\n" +
	"\x10mount_peer.proto\x12\rmount_peer_pb\"\xa4\x01\n" +
	"\x14ChunkAnnounceRequest\x12\x19\n" +
	"\bfile_ids\x18\x01 \x03(\tR\afileIds\x12\x1b\n" +
	"\tpeer_addr\x18\x02 \x01(\tR\bpeerAddr\x12\x12\n" +
	"\x04rack\x18\x03 \x01(\tR\x04rack\x12\x1f\n" +
	"\vttl_seconds\x18\x04 \x01(\x05R\n" +
	"ttlSeconds\x12\x1f\n" +
	"\vdata_center\x18\x05 \x01(\tR\n" +
	"dataCenter\"C\n" +
	"\x15ChunkAnnounceResponse\x12*\n" +
	"\x11rejected_file_ids\x18\x01 \x03(\tR\x0frejectedFileIds\"/\n" +
	"\x12ChunkLookupRequest\x12\x19\n" +
	"\bfile_ids\x18\x01 \x03(\tR\afileIds\"\xef\x01\n" +
	"\x13ChunkLookupResponse\x12T\n" +
	"\fpeers_by_fid\x18\x01 \x03(\v22.mount_peer_pb.ChunkLookupResponse.PeersByFidEntryR\n" +
	"peersByFid\x12+\n" +
	"\x12not_owner_file_ids\x18\x02 \x03(\tR\x0fnotOwnerFileIds\x1aU\n" +
	"\x0fPeersByFidEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12,\n" +
	"\x05value\x18\x02 \x01(\v2\x16.mount_peer_pb.PeerSetR\x05value:\x028\x01\"8\n" +
	"\aPeerSet\x12-\n" +
	"\x05peers\x18\x01 \x03(\v2\x17.mount_peer_pb.PeerInfoR\x05peers\"\\\n" +
	"\bPeerInfo\x12\x1b\n" +
	"\tpeer_addr\x18\x01 \x01(\tR\bpeerAddr\x12\x12\n" +
	"\x04rack\x18\x02 \x01(\tR\x04rack\x12\x1f\n" +
	"\vdata_center\x18\x03 \x01(\tR\n" +
	"dataCenter\"\xa6\x01\n" +
	"\x11FetchChunkRequest\x12\x17\n" +
	"\afile_id\x18\x01 \x01(\tR\x06fileId\x12#\n" +
	"\rexpected_etag\x18\x02 \x01(\tR\fexpectedEtag\x12#\n" +
	"\rexpected_size\x18\x03 \x01(\x04R\fexpectedSize\x12\x16\n" +
	"\x06offset\x18\x04 \x01(\x04R\x06offset\x12\x16\n" +
	"\x06length\x18\x05 \x01(\x04R\x06length\"(\n" +
	"\x12FetchChunkResponse\x12\x12\n" +
	"\x04data\x18\x01 \x01(\fR\x04data2\x98\x02\n" +
	"\tMountPeer\x12\\\n" +
	"\rChunkAnnounce\x12#.mount_peer_pb.ChunkAnnounceRequest\x1a$.mount_peer_pb.ChunkAnnounceResponse\"\x00\x12V\n" +
	"\vChunkLookup\x12!.mount_peer_pb.ChunkLookupRequest\x1a\".mount_peer_pb.ChunkLookupResponse\"\x00\x12U\n" +
	"\n" +
	"FetchChunk\x12 .mount_peer_pb.FetchChunkRequest\x1a!.mount_peer_pb.FetchChunkResponse\"\x000\x01B6Z4github.com/seaweedfs/seaweedfs/weed/pb/mount_peer_pbb\x06proto3"

var (
	file_mount_peer_proto_rawDescOnce sync.Once
	file_mount_peer_proto_rawDescData []byte
)

func file_mount_peer_proto_rawDescGZIP() []byte {
	file_mount_peer_proto_rawDescOnce.Do(func() {
		file_mount_peer_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_mount_peer_proto_rawDesc), len(file_mount_peer_proto_rawDesc)))
	})
	return file_mount_peer_proto_rawDescData
}

var file_mount_peer_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_mount_peer_proto_goTypes = []any{
	(*ChunkAnnounceRequest)(nil),  // 0: mount_peer_pb.ChunkAnnounceRequest
	(*ChunkAnnounceResponse)(nil), // 1: mount_peer_pb.ChunkAnnounceResponse
	(*ChunkLookupRequest)(nil),    // 2: mount_peer_pb.ChunkLookupRequest
	(*ChunkLookupResponse)(nil),   // 3: mount_peer_pb.ChunkLookupResponse
	(*PeerSet)(nil),               // 4: mount_peer_pb.PeerSet
	(*PeerInfo)(nil),              // 5: mount_peer_pb.PeerInfo
	(*FetchChunkRequest)(nil),     // 6: mount_peer_pb.FetchChunkRequest
	(*FetchChunkResponse)(nil),    // 7: mount_peer_pb.FetchChunkResponse
	nil,                           // 8: mount_peer_pb.ChunkLookupResponse.PeersByFidEntry
}
var file_mount_peer_proto_depIdxs = []int32{
	8, // 0: mount_peer_pb.ChunkLookupResponse.peers_by_fid:type_name -> mount_peer_pb.ChunkLookupResponse.PeersByFidEntry
	5, // 1: mount_peer_pb.PeerSet.peers:type_name -> mount_peer_pb.PeerInfo
	4, // 2: mount_peer_pb.ChunkLookupResponse.PeersByFidEntry.value:type_name -> mount_peer_pb.PeerSet
	0, // 3: mount_peer_pb.MountPeer.ChunkAnnounce:input_type -> mount_peer_pb.ChunkAnnounceRequest
	2, // 4: mount_peer_pb.MountPeer.ChunkLookup:input_type -> mount_peer_pb.ChunkLookupRequest
	6, // 5: mount_peer_pb.MountPeer.FetchChunk:input_type -> mount_peer_pb.FetchChunkRequest
	1, // 6: mount_peer_pb.MountPeer.ChunkAnnounce:output_type -> mount_peer_pb.ChunkAnnounceResponse
	3, // 7: mount_peer_pb.MountPeer.ChunkLookup:output_type -> mount_peer_pb.ChunkLookupResponse
	7, // 8: mount_peer_pb.MountPeer.FetchChunk:output_type -> mount_peer_pb.FetchChunkResponse
	6, // [6:9] is the sub-list for method output_type
	3, // [3:6] is the sub-list for method input_type
	3, // [3:3] is the sub-list for extension type_name
	3, // [3:3] is the sub-list for extension extendee
	0, // [0:3] is the sub-list for field type_name
}

func init() { file_mount_peer_proto_init() }
func file_mount_peer_proto_init() {
	if File_mount_peer_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_mount_peer_proto_rawDesc), len(file_mount_peer_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   9,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_mount_peer_proto_goTypes,
		DependencyIndexes: file_mount_peer_proto_depIdxs,
		MessageInfos:      file_mount_peer_proto_msgTypes,
	}.Build()
	File_mount_peer_proto = out.File
	file_mount_peer_proto_goTypes = nil
	file_mount_peer_proto_depIdxs = nil
}
