Files
seaweedfs/weed/pb/filer_pb/filer.pb.go
T
Chris Lu bf31f404bc test: add pjdfstest POSIX compliance suite (#9013)
* test: add pjdfstest POSIX compliance suite

Adds a script and CI workflow that runs the upstream pjdfstest POSIX
compliance test suite against a SeaweedFS FUSE mount. The script starts
a self-contained `weed mini` server, mounts the filesystem with
`weed mount`, builds pjdfstest from source, and runs it under prove(1).

* fix: address review feedback on pjdfstest setup

- Use github.ref instead of github.head_ref in concurrency group so
  push events get a stable group key
- Add explicit timeout check after filer readiness polling loop
- Refresh pjdfstest checkout when PJDFSTEST_REPO or PJDFSTEST_REF are
  overridden instead of silently reusing stale sources

* test: add Docker-based pjdfstest for faster iteration

Adds a docker-compose setup that reuses the existing e2e image pattern:
- master, volume, filer services from chrislusf/seaweedfs:e2e
- mount service extended with pjdfstest baked in (Dockerfile extends e2e)
- Tests run via `docker compose exec mount /run.sh`
- CI workflow gains a parallel `pjdfstest (docker)` job

This avoids building Go from scratch on each iteration — just rebuild the
e2e image once and iterate on the compose stack.

* fix: address second round of review feedback

- Use mktemp for WORK_DIR so each run starts with a clean filer state
- Pin PJDFSTEST_REF to immutable commit (03eb257) instead of master
- Use cp -r instead of cp -a to avoid preserving ownership during setup

* fix: address CI failure and third round of review feedback

- Fix docker job: fall back to plain docker build when buildx cache
  export is not supported (default docker driver in some CI runners)
- Use /healthz endpoint for filer healthcheck in docker-compose
- Copy logs to a fixed path (/tmp/seaweedfs-pjdfstest-logs/) for
  reliable CI artifact upload when WORK_DIR is a mktemp path

* fix(mount): improve POSIX compliance for FUSE mount

Address several POSIX compliance gaps surfaced by the pjdfstest suite:

1. Filename length limit: reduce from 4096 to 255 bytes (NAME_MAX),
   returning ENAMETOOLONG for longer names.

2. SUID/SGID clearing on write: clear setuid/setgid bits when a
   non-root user writes to a file (POSIX requirement).

3. SUID/SGID clearing on chown: clear setuid/setgid bits when file
   ownership changes by a non-root user.

4. Sticky bit enforcement: add checkStickyBit helper and enforce it
   in Unlink, Rmdir, and Rename — only file owner, directory owner,
   or root may delete entries in sticky directories.

5. ctime (inode change time) tracking: add ctime field to the
   FuseAttributes protobuf message and filer.Attr struct. Update
   ctime on all metadata-modifying operations (SetAttr, Write/flush,
   Link, Create, Mkdir, Mknod, Symlink, Truncate). Fall back to
   mtime for backward compatibility when ctime is 0.

* fix: add -T flag to docker compose exec for CI

Disable TTY allocation in the pjdfstest docker job since GitHub
Actions runners have no interactive TTY.

* fix(mount): update parent directory mtime/ctime on entry changes

POSIX requires that a directory's st_mtime and st_ctime be updated
whenever entries are created or removed within it. Add
touchDirMtimeCtime() helper and call it after:
- mkdir, rmdir
- create (including deferred creates), mknod, unlink
- symlink, link
- rename (both source and destination directories)

This fixes pjdfstest failures in mkdir/00, mkfifo/00, mknod/00,
mknod/11, open/00, symlink/00, link/00, and rmdir/00.

* fix(mount): enforce sticky bit on destination directory during rename

POSIX requires sticky-bit enforcement on both source and destination
directories during rename. When the destination directory has the
sticky bit set and a target entry already exists, only the file owner,
directory owner, or root may replace it.

* fix(mount): add in-memory atime tracking for POSIX compliance

Track atime separately from mtime using a bounded in-memory map
(capped at 8192 entries with random eviction). atime is not persisted
to the filer — it's only kept in mount memory to satisfy POSIX stat
requirements for utimensat and related syscalls.

This fixes utimensat/00, utimensat/02, utimensat/04, utimensat/05,
and utimensat/09 pjdfstest failures where atime was incorrectly
aliased to mtime.

* fix(mount): restore long filename support, fix permission checks

- Restore 4096-byte filename limit (was incorrectly reduced to 255).
  SeaweedFS stores names as protobuf strings with no ext4-style
  constraint — the 255 limit is not applicable.

- Fix AcquireHandle permission check to map filer uid/gid to local
  space before calling hasAccess, matching the pattern used in Access().

- Fix hasAccess fallback when supplementary group lookup fails: fall
  through to "other" permissions instead of requiring both group AND
  other to match, which was overly restrictive for non-existent UIDs.

* fix(mount): fix permission checks and enforce NAME_MAX=255

- Fix AcquireHandle to map uid/gid from filer-space to local-space
  before calling hasAccess, consistent with the Access handler.

- Fix hasAccess fallback when supplementary group lookup fails: use
  "other" permissions only instead of requiring both group AND other.

- Enforce NAME_MAX=255 with a comment explaining the Linux FUSE kernel
  module's VFS-layer limit. Files >255 bytes can be created via direct
  FUSE protocol calls but can't be stat'd/chmod'd via normal syscalls.

- Don't call touchDirMtimeCtime for deferred creates to avoid
  invalidating the just-cached entry via filer metadata events.

* ci: mark pjdfstest steps as continue-on-error

The pjdfstest suite has known failures (Linux FUSE NAME_MAX=255
limitation, hard link nlink/ctime tracking, nanosecond precision)
that cannot be fixed in the mount layer. Mark the test steps as
continue-on-error so the CI job reports results without blocking.

* ci: increase pjdfstest bare metal timeout to 90 minutes

* fix: use full commit hash for PJDFSTEST_REF in run.sh

Short hashes cannot be resolved by git fetch --depth 1 on shallow
clones. Use the full 40-char SHA.

* test: add pjdfstest known failures skip list

Add known_failures.txt listing 33 test files that cannot pass due to:
- Linux FUSE kernel NAME_MAX=255 (26 files)
- Hard link nlink/ctime tracking requiring filer changes (3 files)
- Parent dir mtime on deferred create (1 file)
- Directory rename permission edge case (1 file)
- rmdir after hard link unlink (1 file)
- Nanosecond timestamp precision (1 file)

Both run.sh and run_inside_container.sh now skip these tests when
running the full suite. Any failure in a non-skipped test will cause
CI to fail, catching regressions immediately.

Remove continue-on-error from CI steps since the skip list handles
known failures.

Result: 204 test files, 8380 tests, all passing.

* ci: remove bare metal pjdfstest job, keep Docker only

The bare metal job consistently gets stuck past its timeout due to
weed processes not exiting cleanly. The Docker job covers the same
tests reliably and runs faster.
2026-04-10 09:52:16 -07:00

5783 lines
181 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.6
// protoc v6.33.4
// source: filer.proto
package filer_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 SSEType int32
const (
SSEType_NONE SSEType = 0 // No server-side encryption
SSEType_SSE_C SSEType = 1 // Server-Side Encryption with Customer-Provided Keys
SSEType_SSE_KMS SSEType = 2 // Server-Side Encryption with KMS-Managed Keys
SSEType_SSE_S3 SSEType = 3 // Server-Side Encryption with S3-Managed Keys
)
// Enum value maps for SSEType.
var (
SSEType_name = map[int32]string{
0: "NONE",
1: "SSE_C",
2: "SSE_KMS",
3: "SSE_S3",
}
SSEType_value = map[string]int32{
"NONE": 0,
"SSE_C": 1,
"SSE_KMS": 2,
"SSE_S3": 3,
}
)
func (x SSEType) Enum() *SSEType {
p := new(SSEType)
*p = x
return p
}
func (x SSEType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (SSEType) Descriptor() protoreflect.EnumDescriptor {
return file_filer_proto_enumTypes[0].Descriptor()
}
func (SSEType) Type() protoreflect.EnumType {
return &file_filer_proto_enumTypes[0]
}
func (x SSEType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use SSEType.Descriptor instead.
func (SSEType) EnumDescriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{0}
}
// Structured error codes for filer entry operations.
// Values are stable — do not reorder or reuse numbers.
type FilerError int32
const (
FilerError_OK FilerError = 0
FilerError_ENTRY_NAME_TOO_LONG FilerError = 1 // name exceeds max_file_name_length
FilerError_PARENT_IS_FILE FilerError = 2 // parent path component is a file, not a directory
FilerError_EXISTING_IS_DIRECTORY FilerError = 3 // cannot overwrite directory with file
FilerError_EXISTING_IS_FILE FilerError = 4 // cannot overwrite file with directory
FilerError_ENTRY_ALREADY_EXISTS FilerError = 5 // O_EXCL and entry already exists
)
// Enum value maps for FilerError.
var (
FilerError_name = map[int32]string{
0: "OK",
1: "ENTRY_NAME_TOO_LONG",
2: "PARENT_IS_FILE",
3: "EXISTING_IS_DIRECTORY",
4: "EXISTING_IS_FILE",
5: "ENTRY_ALREADY_EXISTS",
}
FilerError_value = map[string]int32{
"OK": 0,
"ENTRY_NAME_TOO_LONG": 1,
"PARENT_IS_FILE": 2,
"EXISTING_IS_DIRECTORY": 3,
"EXISTING_IS_FILE": 4,
"ENTRY_ALREADY_EXISTS": 5,
}
)
func (x FilerError) Enum() *FilerError {
p := new(FilerError)
*p = x
return p
}
func (x FilerError) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (FilerError) Descriptor() protoreflect.EnumDescriptor {
return file_filer_proto_enumTypes[1].Descriptor()
}
func (FilerError) Type() protoreflect.EnumType {
return &file_filer_proto_enumTypes[1]
}
func (x FilerError) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use FilerError.Descriptor instead.
func (FilerError) EnumDescriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{1}
}
type LookupDirectoryEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LookupDirectoryEntryRequest) Reset() {
*x = LookupDirectoryEntryRequest{}
mi := &file_filer_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LookupDirectoryEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LookupDirectoryEntryRequest) ProtoMessage() {}
func (x *LookupDirectoryEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 LookupDirectoryEntryRequest.ProtoReflect.Descriptor instead.
func (*LookupDirectoryEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{0}
}
func (x *LookupDirectoryEntryRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *LookupDirectoryEntryRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
type LookupDirectoryEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Entry *Entry `protobuf:"bytes,1,opt,name=entry,proto3" json:"entry,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LookupDirectoryEntryResponse) Reset() {
*x = LookupDirectoryEntryResponse{}
mi := &file_filer_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LookupDirectoryEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LookupDirectoryEntryResponse) ProtoMessage() {}
func (x *LookupDirectoryEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 LookupDirectoryEntryResponse.ProtoReflect.Descriptor instead.
func (*LookupDirectoryEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{1}
}
func (x *LookupDirectoryEntryResponse) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
type ListEntriesRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Prefix string `protobuf:"bytes,2,opt,name=prefix,proto3" json:"prefix,omitempty"`
StartFromFileName string `protobuf:"bytes,3,opt,name=startFromFileName,proto3" json:"startFromFileName,omitempty"`
InclusiveStartFrom bool `protobuf:"varint,4,opt,name=inclusiveStartFrom,proto3" json:"inclusiveStartFrom,omitempty"`
Limit uint32 `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"`
SnapshotTsNs int64 `protobuf:"varint,6,opt,name=snapshot_ts_ns,json=snapshotTsNs,proto3" json:"snapshot_ts_ns,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListEntriesRequest) Reset() {
*x = ListEntriesRequest{}
mi := &file_filer_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListEntriesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListEntriesRequest) ProtoMessage() {}
func (x *ListEntriesRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 ListEntriesRequest.ProtoReflect.Descriptor instead.
func (*ListEntriesRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{2}
}
func (x *ListEntriesRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *ListEntriesRequest) GetPrefix() string {
if x != nil {
return x.Prefix
}
return ""
}
func (x *ListEntriesRequest) GetStartFromFileName() string {
if x != nil {
return x.StartFromFileName
}
return ""
}
func (x *ListEntriesRequest) GetInclusiveStartFrom() bool {
if x != nil {
return x.InclusiveStartFrom
}
return false
}
func (x *ListEntriesRequest) GetLimit() uint32 {
if x != nil {
return x.Limit
}
return 0
}
func (x *ListEntriesRequest) GetSnapshotTsNs() int64 {
if x != nil {
return x.SnapshotTsNs
}
return 0
}
type ListEntriesResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Entry *Entry `protobuf:"bytes,1,opt,name=entry,proto3" json:"entry,omitempty"`
SnapshotTsNs int64 `protobuf:"varint,2,opt,name=snapshot_ts_ns,json=snapshotTsNs,proto3" json:"snapshot_ts_ns,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListEntriesResponse) Reset() {
*x = ListEntriesResponse{}
mi := &file_filer_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListEntriesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListEntriesResponse) ProtoMessage() {}
func (x *ListEntriesResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 ListEntriesResponse.ProtoReflect.Descriptor instead.
func (*ListEntriesResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{3}
}
func (x *ListEntriesResponse) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
func (x *ListEntriesResponse) GetSnapshotTsNs() int64 {
if x != nil {
return x.SnapshotTsNs
}
return 0
}
type RemoteEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
LastLocalSyncTsNs int64 `protobuf:"varint,2,opt,name=last_local_sync_ts_ns,json=lastLocalSyncTsNs,proto3" json:"last_local_sync_ts_ns,omitempty"`
RemoteETag string `protobuf:"bytes,3,opt,name=remote_e_tag,json=remoteETag,proto3" json:"remote_e_tag,omitempty"`
RemoteMtime int64 `protobuf:"varint,4,opt,name=remote_mtime,json=remoteMtime,proto3" json:"remote_mtime,omitempty"`
RemoteSize int64 `protobuf:"varint,5,opt,name=remote_size,json=remoteSize,proto3" json:"remote_size,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *RemoteEntry) Reset() {
*x = RemoteEntry{}
mi := &file_filer_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RemoteEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RemoteEntry) ProtoMessage() {}
func (x *RemoteEntry) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 RemoteEntry.ProtoReflect.Descriptor instead.
func (*RemoteEntry) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{4}
}
func (x *RemoteEntry) GetStorageName() string {
if x != nil {
return x.StorageName
}
return ""
}
func (x *RemoteEntry) GetLastLocalSyncTsNs() int64 {
if x != nil {
return x.LastLocalSyncTsNs
}
return 0
}
func (x *RemoteEntry) GetRemoteETag() string {
if x != nil {
return x.RemoteETag
}
return ""
}
func (x *RemoteEntry) GetRemoteMtime() int64 {
if x != nil {
return x.RemoteMtime
}
return 0
}
func (x *RemoteEntry) GetRemoteSize() int64 {
if x != nil {
return x.RemoteSize
}
return 0
}
type Entry struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
IsDirectory bool `protobuf:"varint,2,opt,name=is_directory,json=isDirectory,proto3" json:"is_directory,omitempty"`
Chunks []*FileChunk `protobuf:"bytes,3,rep,name=chunks,proto3" json:"chunks,omitempty"`
Attributes *FuseAttributes `protobuf:"bytes,4,opt,name=attributes,proto3" json:"attributes,omitempty"`
Extended map[string][]byte `protobuf:"bytes,5,rep,name=extended,proto3" json:"extended,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
HardLinkId []byte `protobuf:"bytes,7,opt,name=hard_link_id,json=hardLinkId,proto3" json:"hard_link_id,omitempty"`
HardLinkCounter int32 `protobuf:"varint,8,opt,name=hard_link_counter,json=hardLinkCounter,proto3" json:"hard_link_counter,omitempty"` // only exists in hard link meta data
Content []byte `protobuf:"bytes,9,opt,name=content,proto3" json:"content,omitempty"` // if not empty, the file content
RemoteEntry *RemoteEntry `protobuf:"bytes,10,opt,name=remote_entry,json=remoteEntry,proto3" json:"remote_entry,omitempty"`
Quota int64 `protobuf:"varint,11,opt,name=quota,proto3" json:"quota,omitempty"` // for bucket only. Positive/Negative means enabled/disabled.
WormEnforcedAtTsNs int64 `protobuf:"varint,12,opt,name=worm_enforced_at_ts_ns,json=wormEnforcedAtTsNs,proto3" json:"worm_enforced_at_ts_ns,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Entry) Reset() {
*x = Entry{}
mi := &file_filer_proto_msgTypes[5]
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_filer_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 Entry.ProtoReflect.Descriptor instead.
func (*Entry) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{5}
}
func (x *Entry) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Entry) GetIsDirectory() bool {
if x != nil {
return x.IsDirectory
}
return false
}
func (x *Entry) GetChunks() []*FileChunk {
if x != nil {
return x.Chunks
}
return nil
}
func (x *Entry) GetAttributes() *FuseAttributes {
if x != nil {
return x.Attributes
}
return nil
}
func (x *Entry) GetExtended() map[string][]byte {
if x != nil {
return x.Extended
}
return nil
}
func (x *Entry) GetHardLinkId() []byte {
if x != nil {
return x.HardLinkId
}
return nil
}
func (x *Entry) GetHardLinkCounter() int32 {
if x != nil {
return x.HardLinkCounter
}
return 0
}
func (x *Entry) GetContent() []byte {
if x != nil {
return x.Content
}
return nil
}
func (x *Entry) GetRemoteEntry() *RemoteEntry {
if x != nil {
return x.RemoteEntry
}
return nil
}
func (x *Entry) GetQuota() int64 {
if x != nil {
return x.Quota
}
return 0
}
func (x *Entry) GetWormEnforcedAtTsNs() int64 {
if x != nil {
return x.WormEnforcedAtTsNs
}
return 0
}
type FullEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
Dir string `protobuf:"bytes,1,opt,name=dir,proto3" json:"dir,omitempty"`
Entry *Entry `protobuf:"bytes,2,opt,name=entry,proto3" json:"entry,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FullEntry) Reset() {
*x = FullEntry{}
mi := &file_filer_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FullEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FullEntry) ProtoMessage() {}
func (x *FullEntry) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 FullEntry.ProtoReflect.Descriptor instead.
func (*FullEntry) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{6}
}
func (x *FullEntry) GetDir() string {
if x != nil {
return x.Dir
}
return ""
}
func (x *FullEntry) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
type EventNotification struct {
state protoimpl.MessageState `protogen:"open.v1"`
OldEntry *Entry `protobuf:"bytes,1,opt,name=old_entry,json=oldEntry,proto3" json:"old_entry,omitempty"`
NewEntry *Entry `protobuf:"bytes,2,opt,name=new_entry,json=newEntry,proto3" json:"new_entry,omitempty"`
DeleteChunks bool `protobuf:"varint,3,opt,name=delete_chunks,json=deleteChunks,proto3" json:"delete_chunks,omitempty"`
NewParentPath string `protobuf:"bytes,4,opt,name=new_parent_path,json=newParentPath,proto3" json:"new_parent_path,omitempty"`
IsFromOtherCluster bool `protobuf:"varint,5,opt,name=is_from_other_cluster,json=isFromOtherCluster,proto3" json:"is_from_other_cluster,omitempty"`
Signatures []int32 `protobuf:"varint,6,rep,packed,name=signatures,proto3" json:"signatures,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *EventNotification) Reset() {
*x = EventNotification{}
mi := &file_filer_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *EventNotification) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EventNotification) ProtoMessage() {}
func (x *EventNotification) ProtoReflect() protoreflect.Message {
mi := &file_filer_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 EventNotification.ProtoReflect.Descriptor instead.
func (*EventNotification) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{7}
}
func (x *EventNotification) GetOldEntry() *Entry {
if x != nil {
return x.OldEntry
}
return nil
}
func (x *EventNotification) GetNewEntry() *Entry {
if x != nil {
return x.NewEntry
}
return nil
}
func (x *EventNotification) GetDeleteChunks() bool {
if x != nil {
return x.DeleteChunks
}
return false
}
func (x *EventNotification) GetNewParentPath() string {
if x != nil {
return x.NewParentPath
}
return ""
}
func (x *EventNotification) GetIsFromOtherCluster() bool {
if x != nil {
return x.IsFromOtherCluster
}
return false
}
func (x *EventNotification) GetSignatures() []int32 {
if x != nil {
return x.Signatures
}
return nil
}
type FileChunk struct {
state protoimpl.MessageState `protogen:"open.v1"`
FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"` // to be deprecated
Offset int64 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
Size uint64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
ModifiedTsNs int64 `protobuf:"varint,4,opt,name=modified_ts_ns,json=modifiedTsNs,proto3" json:"modified_ts_ns,omitempty"`
ETag string `protobuf:"bytes,5,opt,name=e_tag,json=eTag,proto3" json:"e_tag,omitempty"`
SourceFileId string `protobuf:"bytes,6,opt,name=source_file_id,json=sourceFileId,proto3" json:"source_file_id,omitempty"` // to be deprecated
Fid *FileId `protobuf:"bytes,7,opt,name=fid,proto3" json:"fid,omitempty"`
SourceFid *FileId `protobuf:"bytes,8,opt,name=source_fid,json=sourceFid,proto3" json:"source_fid,omitempty"`
CipherKey []byte `protobuf:"bytes,9,opt,name=cipher_key,json=cipherKey,proto3" json:"cipher_key,omitempty"`
IsCompressed bool `protobuf:"varint,10,opt,name=is_compressed,json=isCompressed,proto3" json:"is_compressed,omitempty"`
IsChunkManifest bool `protobuf:"varint,11,opt,name=is_chunk_manifest,json=isChunkManifest,proto3" json:"is_chunk_manifest,omitempty"` // content is a list of FileChunks
SseType SSEType `protobuf:"varint,12,opt,name=sse_type,json=sseType,proto3,enum=filer_pb.SSEType" json:"sse_type,omitempty"` // Server-side encryption type
SseMetadata []byte `protobuf:"bytes,13,opt,name=sse_metadata,json=sseMetadata,proto3" json:"sse_metadata,omitempty"` // Serialized SSE metadata for this chunk (SSE-C, SSE-KMS, or SSE-S3)
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FileChunk) Reset() {
*x = FileChunk{}
mi := &file_filer_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FileChunk) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FileChunk) ProtoMessage() {}
func (x *FileChunk) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[8]
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 FileChunk.ProtoReflect.Descriptor instead.
func (*FileChunk) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{8}
}
func (x *FileChunk) GetFileId() string {
if x != nil {
return x.FileId
}
return ""
}
func (x *FileChunk) GetOffset() int64 {
if x != nil {
return x.Offset
}
return 0
}
func (x *FileChunk) GetSize() uint64 {
if x != nil {
return x.Size
}
return 0
}
func (x *FileChunk) GetModifiedTsNs() int64 {
if x != nil {
return x.ModifiedTsNs
}
return 0
}
func (x *FileChunk) GetETag() string {
if x != nil {
return x.ETag
}
return ""
}
func (x *FileChunk) GetSourceFileId() string {
if x != nil {
return x.SourceFileId
}
return ""
}
func (x *FileChunk) GetFid() *FileId {
if x != nil {
return x.Fid
}
return nil
}
func (x *FileChunk) GetSourceFid() *FileId {
if x != nil {
return x.SourceFid
}
return nil
}
func (x *FileChunk) GetCipherKey() []byte {
if x != nil {
return x.CipherKey
}
return nil
}
func (x *FileChunk) GetIsCompressed() bool {
if x != nil {
return x.IsCompressed
}
return false
}
func (x *FileChunk) GetIsChunkManifest() bool {
if x != nil {
return x.IsChunkManifest
}
return false
}
func (x *FileChunk) GetSseType() SSEType {
if x != nil {
return x.SseType
}
return SSEType_NONE
}
func (x *FileChunk) GetSseMetadata() []byte {
if x != nil {
return x.SseMetadata
}
return nil
}
type FileChunkManifest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Chunks []*FileChunk `protobuf:"bytes,1,rep,name=chunks,proto3" json:"chunks,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FileChunkManifest) Reset() {
*x = FileChunkManifest{}
mi := &file_filer_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FileChunkManifest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FileChunkManifest) ProtoMessage() {}
func (x *FileChunkManifest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[9]
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 FileChunkManifest.ProtoReflect.Descriptor instead.
func (*FileChunkManifest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{9}
}
func (x *FileChunkManifest) GetChunks() []*FileChunk {
if x != nil {
return x.Chunks
}
return nil
}
type FileId struct {
state protoimpl.MessageState `protogen:"open.v1"`
VolumeId uint32 `protobuf:"varint,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
FileKey uint64 `protobuf:"varint,2,opt,name=file_key,json=fileKey,proto3" json:"file_key,omitempty"`
Cookie uint32 `protobuf:"fixed32,3,opt,name=cookie,proto3" json:"cookie,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FileId) Reset() {
*x = FileId{}
mi := &file_filer_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FileId) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FileId) ProtoMessage() {}
func (x *FileId) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[10]
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 FileId.ProtoReflect.Descriptor instead.
func (*FileId) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{10}
}
func (x *FileId) GetVolumeId() uint32 {
if x != nil {
return x.VolumeId
}
return 0
}
func (x *FileId) GetFileKey() uint64 {
if x != nil {
return x.FileKey
}
return 0
}
func (x *FileId) GetCookie() uint32 {
if x != nil {
return x.Cookie
}
return 0
}
type FuseAttributes struct {
state protoimpl.MessageState `protogen:"open.v1"`
FileSize uint64 `protobuf:"varint,1,opt,name=file_size,json=fileSize,proto3" json:"file_size,omitempty"`
Mtime int64 `protobuf:"varint,2,opt,name=mtime,proto3" json:"mtime,omitempty"` // unix time in seconds
FileMode uint32 `protobuf:"varint,3,opt,name=file_mode,json=fileMode,proto3" json:"file_mode,omitempty"`
Uid uint32 `protobuf:"varint,4,opt,name=uid,proto3" json:"uid,omitempty"`
Gid uint32 `protobuf:"varint,5,opt,name=gid,proto3" json:"gid,omitempty"`
Crtime int64 `protobuf:"varint,6,opt,name=crtime,proto3" json:"crtime,omitempty"` // unix time in seconds
Mime string `protobuf:"bytes,7,opt,name=mime,proto3" json:"mime,omitempty"`
TtlSec int32 `protobuf:"varint,10,opt,name=ttl_sec,json=ttlSec,proto3" json:"ttl_sec,omitempty"`
UserName string `protobuf:"bytes,11,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"` // for hdfs
GroupName []string `protobuf:"bytes,12,rep,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` // for hdfs
SymlinkTarget string `protobuf:"bytes,13,opt,name=symlink_target,json=symlinkTarget,proto3" json:"symlink_target,omitempty"`
Md5 []byte `protobuf:"bytes,14,opt,name=md5,proto3" json:"md5,omitempty"`
Rdev uint32 `protobuf:"varint,16,opt,name=rdev,proto3" json:"rdev,omitempty"`
Inode uint64 `protobuf:"varint,17,opt,name=inode,proto3" json:"inode,omitempty"`
Ctime int64 `protobuf:"varint,18,opt,name=ctime,proto3" json:"ctime,omitempty"` // unix time in seconds, inode change time
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FuseAttributes) Reset() {
*x = FuseAttributes{}
mi := &file_filer_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FuseAttributes) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FuseAttributes) ProtoMessage() {}
func (x *FuseAttributes) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[11]
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 FuseAttributes.ProtoReflect.Descriptor instead.
func (*FuseAttributes) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{11}
}
func (x *FuseAttributes) GetFileSize() uint64 {
if x != nil {
return x.FileSize
}
return 0
}
func (x *FuseAttributes) GetMtime() int64 {
if x != nil {
return x.Mtime
}
return 0
}
func (x *FuseAttributes) GetFileMode() uint32 {
if x != nil {
return x.FileMode
}
return 0
}
func (x *FuseAttributes) GetUid() uint32 {
if x != nil {
return x.Uid
}
return 0
}
func (x *FuseAttributes) GetGid() uint32 {
if x != nil {
return x.Gid
}
return 0
}
func (x *FuseAttributes) GetCrtime() int64 {
if x != nil {
return x.Crtime
}
return 0
}
func (x *FuseAttributes) GetMime() string {
if x != nil {
return x.Mime
}
return ""
}
func (x *FuseAttributes) GetTtlSec() int32 {
if x != nil {
return x.TtlSec
}
return 0
}
func (x *FuseAttributes) GetUserName() string {
if x != nil {
return x.UserName
}
return ""
}
func (x *FuseAttributes) GetGroupName() []string {
if x != nil {
return x.GroupName
}
return nil
}
func (x *FuseAttributes) GetSymlinkTarget() string {
if x != nil {
return x.SymlinkTarget
}
return ""
}
func (x *FuseAttributes) GetMd5() []byte {
if x != nil {
return x.Md5
}
return nil
}
func (x *FuseAttributes) GetRdev() uint32 {
if x != nil {
return x.Rdev
}
return 0
}
func (x *FuseAttributes) GetInode() uint64 {
if x != nil {
return x.Inode
}
return 0
}
func (x *FuseAttributes) GetCtime() int64 {
if x != nil {
return x.Ctime
}
return 0
}
type CreateEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Entry *Entry `protobuf:"bytes,2,opt,name=entry,proto3" json:"entry,omitempty"`
OExcl bool `protobuf:"varint,3,opt,name=o_excl,json=oExcl,proto3" json:"o_excl,omitempty"`
IsFromOtherCluster bool `protobuf:"varint,4,opt,name=is_from_other_cluster,json=isFromOtherCluster,proto3" json:"is_from_other_cluster,omitempty"`
Signatures []int32 `protobuf:"varint,5,rep,packed,name=signatures,proto3" json:"signatures,omitempty"`
SkipCheckParentDirectory bool `protobuf:"varint,6,opt,name=skip_check_parent_directory,json=skipCheckParentDirectory,proto3" json:"skip_check_parent_directory,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CreateEntryRequest) Reset() {
*x = CreateEntryRequest{}
mi := &file_filer_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateEntryRequest) ProtoMessage() {}
func (x *CreateEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[12]
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 CreateEntryRequest.ProtoReflect.Descriptor instead.
func (*CreateEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{12}
}
func (x *CreateEntryRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *CreateEntryRequest) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
func (x *CreateEntryRequest) GetOExcl() bool {
if x != nil {
return x.OExcl
}
return false
}
func (x *CreateEntryRequest) GetIsFromOtherCluster() bool {
if x != nil {
return x.IsFromOtherCluster
}
return false
}
func (x *CreateEntryRequest) GetSignatures() []int32 {
if x != nil {
return x.Signatures
}
return nil
}
func (x *CreateEntryRequest) GetSkipCheckParentDirectory() bool {
if x != nil {
return x.SkipCheckParentDirectory
}
return false
}
type CreateEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` // kept for human readability + backward compat
MetadataEvent *SubscribeMetadataResponse `protobuf:"bytes,2,opt,name=metadata_event,json=metadataEvent,proto3" json:"metadata_event,omitempty"`
ErrorCode FilerError `protobuf:"varint,3,opt,name=error_code,json=errorCode,proto3,enum=filer_pb.FilerError" json:"error_code,omitempty"` // machine-readable error code
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CreateEntryResponse) Reset() {
*x = CreateEntryResponse{}
mi := &file_filer_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateEntryResponse) ProtoMessage() {}
func (x *CreateEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[13]
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 CreateEntryResponse.ProtoReflect.Descriptor instead.
func (*CreateEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{13}
}
func (x *CreateEntryResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *CreateEntryResponse) GetMetadataEvent() *SubscribeMetadataResponse {
if x != nil {
return x.MetadataEvent
}
return nil
}
func (x *CreateEntryResponse) GetErrorCode() FilerError {
if x != nil {
return x.ErrorCode
}
return FilerError_OK
}
type UpdateEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Entry *Entry `protobuf:"bytes,2,opt,name=entry,proto3" json:"entry,omitempty"`
IsFromOtherCluster bool `protobuf:"varint,3,opt,name=is_from_other_cluster,json=isFromOtherCluster,proto3" json:"is_from_other_cluster,omitempty"`
Signatures []int32 `protobuf:"varint,4,rep,packed,name=signatures,proto3" json:"signatures,omitempty"`
ExpectedExtended map[string][]byte `protobuf:"bytes,5,rep,name=expected_extended,json=expectedExtended,proto3" json:"expected_extended,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UpdateEntryRequest) Reset() {
*x = UpdateEntryRequest{}
mi := &file_filer_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateEntryRequest) ProtoMessage() {}
func (x *UpdateEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[14]
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 UpdateEntryRequest.ProtoReflect.Descriptor instead.
func (*UpdateEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{14}
}
func (x *UpdateEntryRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *UpdateEntryRequest) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
func (x *UpdateEntryRequest) GetIsFromOtherCluster() bool {
if x != nil {
return x.IsFromOtherCluster
}
return false
}
func (x *UpdateEntryRequest) GetSignatures() []int32 {
if x != nil {
return x.Signatures
}
return nil
}
func (x *UpdateEntryRequest) GetExpectedExtended() map[string][]byte {
if x != nil {
return x.ExpectedExtended
}
return nil
}
type UpdateEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
MetadataEvent *SubscribeMetadataResponse `protobuf:"bytes,1,opt,name=metadata_event,json=metadataEvent,proto3" json:"metadata_event,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UpdateEntryResponse) Reset() {
*x = UpdateEntryResponse{}
mi := &file_filer_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateEntryResponse) ProtoMessage() {}
func (x *UpdateEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[15]
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 UpdateEntryResponse.ProtoReflect.Descriptor instead.
func (*UpdateEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{15}
}
func (x *UpdateEntryResponse) GetMetadataEvent() *SubscribeMetadataResponse {
if x != nil {
return x.MetadataEvent
}
return nil
}
type AppendToEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
EntryName string `protobuf:"bytes,2,opt,name=entry_name,json=entryName,proto3" json:"entry_name,omitempty"`
Chunks []*FileChunk `protobuf:"bytes,3,rep,name=chunks,proto3" json:"chunks,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AppendToEntryRequest) Reset() {
*x = AppendToEntryRequest{}
mi := &file_filer_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AppendToEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AppendToEntryRequest) ProtoMessage() {}
func (x *AppendToEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[16]
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 AppendToEntryRequest.ProtoReflect.Descriptor instead.
func (*AppendToEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{16}
}
func (x *AppendToEntryRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *AppendToEntryRequest) GetEntryName() string {
if x != nil {
return x.EntryName
}
return ""
}
func (x *AppendToEntryRequest) GetChunks() []*FileChunk {
if x != nil {
return x.Chunks
}
return nil
}
type AppendToEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AppendToEntryResponse) Reset() {
*x = AppendToEntryResponse{}
mi := &file_filer_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AppendToEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AppendToEntryResponse) ProtoMessage() {}
func (x *AppendToEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[17]
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 AppendToEntryResponse.ProtoReflect.Descriptor instead.
func (*AppendToEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{17}
}
type DeleteEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
// bool is_directory = 3;
IsDeleteData bool `protobuf:"varint,4,opt,name=is_delete_data,json=isDeleteData,proto3" json:"is_delete_data,omitempty"`
IsRecursive bool `protobuf:"varint,5,opt,name=is_recursive,json=isRecursive,proto3" json:"is_recursive,omitempty"`
IgnoreRecursiveError bool `protobuf:"varint,6,opt,name=ignore_recursive_error,json=ignoreRecursiveError,proto3" json:"ignore_recursive_error,omitempty"`
IsFromOtherCluster bool `protobuf:"varint,7,opt,name=is_from_other_cluster,json=isFromOtherCluster,proto3" json:"is_from_other_cluster,omitempty"`
Signatures []int32 `protobuf:"varint,8,rep,packed,name=signatures,proto3" json:"signatures,omitempty"`
IfNotModifiedAfter int64 `protobuf:"varint,9,opt,name=if_not_modified_after,json=ifNotModifiedAfter,proto3" json:"if_not_modified_after,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *DeleteEntryRequest) Reset() {
*x = DeleteEntryRequest{}
mi := &file_filer_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteEntryRequest) ProtoMessage() {}
func (x *DeleteEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[18]
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 DeleteEntryRequest.ProtoReflect.Descriptor instead.
func (*DeleteEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{18}
}
func (x *DeleteEntryRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *DeleteEntryRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeleteEntryRequest) GetIsDeleteData() bool {
if x != nil {
return x.IsDeleteData
}
return false
}
func (x *DeleteEntryRequest) GetIsRecursive() bool {
if x != nil {
return x.IsRecursive
}
return false
}
func (x *DeleteEntryRequest) GetIgnoreRecursiveError() bool {
if x != nil {
return x.IgnoreRecursiveError
}
return false
}
func (x *DeleteEntryRequest) GetIsFromOtherCluster() bool {
if x != nil {
return x.IsFromOtherCluster
}
return false
}
func (x *DeleteEntryRequest) GetSignatures() []int32 {
if x != nil {
return x.Signatures
}
return nil
}
func (x *DeleteEntryRequest) GetIfNotModifiedAfter() int64 {
if x != nil {
return x.IfNotModifiedAfter
}
return 0
}
type DeleteEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
MetadataEvent *SubscribeMetadataResponse `protobuf:"bytes,2,opt,name=metadata_event,json=metadataEvent,proto3" json:"metadata_event,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *DeleteEntryResponse) Reset() {
*x = DeleteEntryResponse{}
mi := &file_filer_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteEntryResponse) ProtoMessage() {}
func (x *DeleteEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[19]
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 DeleteEntryResponse.ProtoReflect.Descriptor instead.
func (*DeleteEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{19}
}
func (x *DeleteEntryResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *DeleteEntryResponse) GetMetadataEvent() *SubscribeMetadataResponse {
if x != nil {
return x.MetadataEvent
}
return nil
}
type AtomicRenameEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
OldDirectory string `protobuf:"bytes,1,opt,name=old_directory,json=oldDirectory,proto3" json:"old_directory,omitempty"`
OldName string `protobuf:"bytes,2,opt,name=old_name,json=oldName,proto3" json:"old_name,omitempty"`
NewDirectory string `protobuf:"bytes,3,opt,name=new_directory,json=newDirectory,proto3" json:"new_directory,omitempty"`
NewName string `protobuf:"bytes,4,opt,name=new_name,json=newName,proto3" json:"new_name,omitempty"`
Signatures []int32 `protobuf:"varint,5,rep,packed,name=signatures,proto3" json:"signatures,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AtomicRenameEntryRequest) Reset() {
*x = AtomicRenameEntryRequest{}
mi := &file_filer_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AtomicRenameEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AtomicRenameEntryRequest) ProtoMessage() {}
func (x *AtomicRenameEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[20]
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 AtomicRenameEntryRequest.ProtoReflect.Descriptor instead.
func (*AtomicRenameEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{20}
}
func (x *AtomicRenameEntryRequest) GetOldDirectory() string {
if x != nil {
return x.OldDirectory
}
return ""
}
func (x *AtomicRenameEntryRequest) GetOldName() string {
if x != nil {
return x.OldName
}
return ""
}
func (x *AtomicRenameEntryRequest) GetNewDirectory() string {
if x != nil {
return x.NewDirectory
}
return ""
}
func (x *AtomicRenameEntryRequest) GetNewName() string {
if x != nil {
return x.NewName
}
return ""
}
func (x *AtomicRenameEntryRequest) GetSignatures() []int32 {
if x != nil {
return x.Signatures
}
return nil
}
type AtomicRenameEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AtomicRenameEntryResponse) Reset() {
*x = AtomicRenameEntryResponse{}
mi := &file_filer_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AtomicRenameEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AtomicRenameEntryResponse) ProtoMessage() {}
func (x *AtomicRenameEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[21]
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 AtomicRenameEntryResponse.ProtoReflect.Descriptor instead.
func (*AtomicRenameEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{21}
}
type StreamRenameEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
OldDirectory string `protobuf:"bytes,1,opt,name=old_directory,json=oldDirectory,proto3" json:"old_directory,omitempty"`
OldName string `protobuf:"bytes,2,opt,name=old_name,json=oldName,proto3" json:"old_name,omitempty"`
NewDirectory string `protobuf:"bytes,3,opt,name=new_directory,json=newDirectory,proto3" json:"new_directory,omitempty"`
NewName string `protobuf:"bytes,4,opt,name=new_name,json=newName,proto3" json:"new_name,omitempty"`
Signatures []int32 `protobuf:"varint,5,rep,packed,name=signatures,proto3" json:"signatures,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StreamRenameEntryRequest) Reset() {
*x = StreamRenameEntryRequest{}
mi := &file_filer_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StreamRenameEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamRenameEntryRequest) ProtoMessage() {}
func (x *StreamRenameEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[22]
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 StreamRenameEntryRequest.ProtoReflect.Descriptor instead.
func (*StreamRenameEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{22}
}
func (x *StreamRenameEntryRequest) GetOldDirectory() string {
if x != nil {
return x.OldDirectory
}
return ""
}
func (x *StreamRenameEntryRequest) GetOldName() string {
if x != nil {
return x.OldName
}
return ""
}
func (x *StreamRenameEntryRequest) GetNewDirectory() string {
if x != nil {
return x.NewDirectory
}
return ""
}
func (x *StreamRenameEntryRequest) GetNewName() string {
if x != nil {
return x.NewName
}
return ""
}
func (x *StreamRenameEntryRequest) GetSignatures() []int32 {
if x != nil {
return x.Signatures
}
return nil
}
type StreamRenameEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
EventNotification *EventNotification `protobuf:"bytes,2,opt,name=event_notification,json=eventNotification,proto3" json:"event_notification,omitempty"`
TsNs int64 `protobuf:"varint,3,opt,name=ts_ns,json=tsNs,proto3" json:"ts_ns,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StreamRenameEntryResponse) Reset() {
*x = StreamRenameEntryResponse{}
mi := &file_filer_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StreamRenameEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamRenameEntryResponse) ProtoMessage() {}
func (x *StreamRenameEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[23]
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 StreamRenameEntryResponse.ProtoReflect.Descriptor instead.
func (*StreamRenameEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{23}
}
func (x *StreamRenameEntryResponse) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *StreamRenameEntryResponse) GetEventNotification() *EventNotification {
if x != nil {
return x.EventNotification
}
return nil
}
func (x *StreamRenameEntryResponse) GetTsNs() int64 {
if x != nil {
return x.TsNs
}
return 0
}
type AssignVolumeRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Count int32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
Collection string `protobuf:"bytes,2,opt,name=collection,proto3" json:"collection,omitempty"`
Replication string `protobuf:"bytes,3,opt,name=replication,proto3" json:"replication,omitempty"`
TtlSec int32 `protobuf:"varint,4,opt,name=ttl_sec,json=ttlSec,proto3" json:"ttl_sec,omitempty"`
DataCenter string `protobuf:"bytes,5,opt,name=data_center,json=dataCenter,proto3" json:"data_center,omitempty"`
Path string `protobuf:"bytes,6,opt,name=path,proto3" json:"path,omitempty"`
Rack string `protobuf:"bytes,7,opt,name=rack,proto3" json:"rack,omitempty"`
DataNode string `protobuf:"bytes,9,opt,name=data_node,json=dataNode,proto3" json:"data_node,omitempty"`
DiskType string `protobuf:"bytes,8,opt,name=disk_type,json=diskType,proto3" json:"disk_type,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AssignVolumeRequest) Reset() {
*x = AssignVolumeRequest{}
mi := &file_filer_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AssignVolumeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AssignVolumeRequest) ProtoMessage() {}
func (x *AssignVolumeRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[24]
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 AssignVolumeRequest.ProtoReflect.Descriptor instead.
func (*AssignVolumeRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{24}
}
func (x *AssignVolumeRequest) GetCount() int32 {
if x != nil {
return x.Count
}
return 0
}
func (x *AssignVolumeRequest) GetCollection() string {
if x != nil {
return x.Collection
}
return ""
}
func (x *AssignVolumeRequest) GetReplication() string {
if x != nil {
return x.Replication
}
return ""
}
func (x *AssignVolumeRequest) GetTtlSec() int32 {
if x != nil {
return x.TtlSec
}
return 0
}
func (x *AssignVolumeRequest) GetDataCenter() string {
if x != nil {
return x.DataCenter
}
return ""
}
func (x *AssignVolumeRequest) GetPath() string {
if x != nil {
return x.Path
}
return ""
}
func (x *AssignVolumeRequest) GetRack() string {
if x != nil {
return x.Rack
}
return ""
}
func (x *AssignVolumeRequest) GetDataNode() string {
if x != nil {
return x.DataNode
}
return ""
}
func (x *AssignVolumeRequest) GetDiskType() string {
if x != nil {
return x.DiskType
}
return ""
}
type AssignVolumeResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
Count int32 `protobuf:"varint,4,opt,name=count,proto3" json:"count,omitempty"`
Auth string `protobuf:"bytes,5,opt,name=auth,proto3" json:"auth,omitempty"`
Collection string `protobuf:"bytes,6,opt,name=collection,proto3" json:"collection,omitempty"`
Replication string `protobuf:"bytes,7,opt,name=replication,proto3" json:"replication,omitempty"`
Error string `protobuf:"bytes,8,opt,name=error,proto3" json:"error,omitempty"`
Location *Location `protobuf:"bytes,9,opt,name=location,proto3" json:"location,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AssignVolumeResponse) Reset() {
*x = AssignVolumeResponse{}
mi := &file_filer_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AssignVolumeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AssignVolumeResponse) ProtoMessage() {}
func (x *AssignVolumeResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[25]
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 AssignVolumeResponse.ProtoReflect.Descriptor instead.
func (*AssignVolumeResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{25}
}
func (x *AssignVolumeResponse) GetFileId() string {
if x != nil {
return x.FileId
}
return ""
}
func (x *AssignVolumeResponse) GetCount() int32 {
if x != nil {
return x.Count
}
return 0
}
func (x *AssignVolumeResponse) GetAuth() string {
if x != nil {
return x.Auth
}
return ""
}
func (x *AssignVolumeResponse) GetCollection() string {
if x != nil {
return x.Collection
}
return ""
}
func (x *AssignVolumeResponse) GetReplication() string {
if x != nil {
return x.Replication
}
return ""
}
func (x *AssignVolumeResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *AssignVolumeResponse) GetLocation() *Location {
if x != nil {
return x.Location
}
return nil
}
type LookupVolumeRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
VolumeIds []string `protobuf:"bytes,1,rep,name=volume_ids,json=volumeIds,proto3" json:"volume_ids,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LookupVolumeRequest) Reset() {
*x = LookupVolumeRequest{}
mi := &file_filer_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LookupVolumeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LookupVolumeRequest) ProtoMessage() {}
func (x *LookupVolumeRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[26]
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 LookupVolumeRequest.ProtoReflect.Descriptor instead.
func (*LookupVolumeRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{26}
}
func (x *LookupVolumeRequest) GetVolumeIds() []string {
if x != nil {
return x.VolumeIds
}
return nil
}
type Locations struct {
state protoimpl.MessageState `protogen:"open.v1"`
Locations []*Location `protobuf:"bytes,1,rep,name=locations,proto3" json:"locations,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Locations) Reset() {
*x = Locations{}
mi := &file_filer_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Locations) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Locations) ProtoMessage() {}
func (x *Locations) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[27]
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 Locations.ProtoReflect.Descriptor instead.
func (*Locations) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{27}
}
func (x *Locations) GetLocations() []*Location {
if x != nil {
return x.Locations
}
return nil
}
type Location struct {
state protoimpl.MessageState `protogen:"open.v1"`
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
PublicUrl string `protobuf:"bytes,2,opt,name=public_url,json=publicUrl,proto3" json:"public_url,omitempty"`
GrpcPort uint32 `protobuf:"varint,3,opt,name=grpc_port,json=grpcPort,proto3" json:"grpc_port,omitempty"`
DataCenter string `protobuf:"bytes,4,opt,name=data_center,json=dataCenter,proto3" json:"data_center,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Location) Reset() {
*x = Location{}
mi := &file_filer_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Location) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Location) ProtoMessage() {}
func (x *Location) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[28]
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 Location.ProtoReflect.Descriptor instead.
func (*Location) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{28}
}
func (x *Location) GetUrl() string {
if x != nil {
return x.Url
}
return ""
}
func (x *Location) GetPublicUrl() string {
if x != nil {
return x.PublicUrl
}
return ""
}
func (x *Location) GetGrpcPort() uint32 {
if x != nil {
return x.GrpcPort
}
return 0
}
func (x *Location) GetDataCenter() string {
if x != nil {
return x.DataCenter
}
return ""
}
type LookupVolumeResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
LocationsMap map[string]*Locations `protobuf:"bytes,1,rep,name=locations_map,json=locationsMap,proto3" json:"locations_map,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LookupVolumeResponse) Reset() {
*x = LookupVolumeResponse{}
mi := &file_filer_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LookupVolumeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LookupVolumeResponse) ProtoMessage() {}
func (x *LookupVolumeResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[29]
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 LookupVolumeResponse.ProtoReflect.Descriptor instead.
func (*LookupVolumeResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{29}
}
func (x *LookupVolumeResponse) GetLocationsMap() map[string]*Locations {
if x != nil {
return x.LocationsMap
}
return nil
}
type Collection struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Collection) Reset() {
*x = Collection{}
mi := &file_filer_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Collection) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Collection) ProtoMessage() {}
func (x *Collection) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[30]
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 Collection.ProtoReflect.Descriptor instead.
func (*Collection) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{30}
}
func (x *Collection) GetName() string {
if x != nil {
return x.Name
}
return ""
}
type CollectionListRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
IncludeNormalVolumes bool `protobuf:"varint,1,opt,name=include_normal_volumes,json=includeNormalVolumes,proto3" json:"include_normal_volumes,omitempty"`
IncludeEcVolumes bool `protobuf:"varint,2,opt,name=include_ec_volumes,json=includeEcVolumes,proto3" json:"include_ec_volumes,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CollectionListRequest) Reset() {
*x = CollectionListRequest{}
mi := &file_filer_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CollectionListRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CollectionListRequest) ProtoMessage() {}
func (x *CollectionListRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[31]
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 CollectionListRequest.ProtoReflect.Descriptor instead.
func (*CollectionListRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{31}
}
func (x *CollectionListRequest) GetIncludeNormalVolumes() bool {
if x != nil {
return x.IncludeNormalVolumes
}
return false
}
func (x *CollectionListRequest) GetIncludeEcVolumes() bool {
if x != nil {
return x.IncludeEcVolumes
}
return false
}
type CollectionListResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Collections []*Collection `protobuf:"bytes,1,rep,name=collections,proto3" json:"collections,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CollectionListResponse) Reset() {
*x = CollectionListResponse{}
mi := &file_filer_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CollectionListResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CollectionListResponse) ProtoMessage() {}
func (x *CollectionListResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[32]
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 CollectionListResponse.ProtoReflect.Descriptor instead.
func (*CollectionListResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{32}
}
func (x *CollectionListResponse) GetCollections() []*Collection {
if x != nil {
return x.Collections
}
return nil
}
type DeleteCollectionRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Collection string `protobuf:"bytes,1,opt,name=collection,proto3" json:"collection,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *DeleteCollectionRequest) Reset() {
*x = DeleteCollectionRequest{}
mi := &file_filer_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteCollectionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteCollectionRequest) ProtoMessage() {}
func (x *DeleteCollectionRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[33]
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 DeleteCollectionRequest.ProtoReflect.Descriptor instead.
func (*DeleteCollectionRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{33}
}
func (x *DeleteCollectionRequest) GetCollection() string {
if x != nil {
return x.Collection
}
return ""
}
type DeleteCollectionResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *DeleteCollectionResponse) Reset() {
*x = DeleteCollectionResponse{}
mi := &file_filer_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteCollectionResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteCollectionResponse) ProtoMessage() {}
func (x *DeleteCollectionResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[34]
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 DeleteCollectionResponse.ProtoReflect.Descriptor instead.
func (*DeleteCollectionResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{34}
}
type StatisticsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Replication string `protobuf:"bytes,1,opt,name=replication,proto3" json:"replication,omitempty"`
Collection string `protobuf:"bytes,2,opt,name=collection,proto3" json:"collection,omitempty"`
Ttl string `protobuf:"bytes,3,opt,name=ttl,proto3" json:"ttl,omitempty"`
DiskType string `protobuf:"bytes,4,opt,name=disk_type,json=diskType,proto3" json:"disk_type,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StatisticsRequest) Reset() {
*x = StatisticsRequest{}
mi := &file_filer_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StatisticsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StatisticsRequest) ProtoMessage() {}
func (x *StatisticsRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[35]
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 StatisticsRequest.ProtoReflect.Descriptor instead.
func (*StatisticsRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{35}
}
func (x *StatisticsRequest) GetReplication() string {
if x != nil {
return x.Replication
}
return ""
}
func (x *StatisticsRequest) GetCollection() string {
if x != nil {
return x.Collection
}
return ""
}
func (x *StatisticsRequest) GetTtl() string {
if x != nil {
return x.Ttl
}
return ""
}
func (x *StatisticsRequest) GetDiskType() string {
if x != nil {
return x.DiskType
}
return ""
}
type StatisticsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
TotalSize uint64 `protobuf:"varint,4,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
UsedSize uint64 `protobuf:"varint,5,opt,name=used_size,json=usedSize,proto3" json:"used_size,omitempty"`
FileCount uint64 `protobuf:"varint,6,opt,name=file_count,json=fileCount,proto3" json:"file_count,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StatisticsResponse) Reset() {
*x = StatisticsResponse{}
mi := &file_filer_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StatisticsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StatisticsResponse) ProtoMessage() {}
func (x *StatisticsResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[36]
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 StatisticsResponse.ProtoReflect.Descriptor instead.
func (*StatisticsResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{36}
}
func (x *StatisticsResponse) GetTotalSize() uint64 {
if x != nil {
return x.TotalSize
}
return 0
}
func (x *StatisticsResponse) GetUsedSize() uint64 {
if x != nil {
return x.UsedSize
}
return 0
}
func (x *StatisticsResponse) GetFileCount() uint64 {
if x != nil {
return x.FileCount
}
return 0
}
type PingRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Target string `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"` // default to ping itself
TargetType string `protobuf:"bytes,2,opt,name=target_type,json=targetType,proto3" json:"target_type,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PingRequest) Reset() {
*x = PingRequest{}
mi := &file_filer_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PingRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PingRequest) ProtoMessage() {}
func (x *PingRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[37]
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 PingRequest.ProtoReflect.Descriptor instead.
func (*PingRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{37}
}
func (x *PingRequest) GetTarget() string {
if x != nil {
return x.Target
}
return ""
}
func (x *PingRequest) GetTargetType() string {
if x != nil {
return x.TargetType
}
return ""
}
type PingResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
StartTimeNs int64 `protobuf:"varint,1,opt,name=start_time_ns,json=startTimeNs,proto3" json:"start_time_ns,omitempty"`
RemoteTimeNs int64 `protobuf:"varint,2,opt,name=remote_time_ns,json=remoteTimeNs,proto3" json:"remote_time_ns,omitempty"`
StopTimeNs int64 `protobuf:"varint,3,opt,name=stop_time_ns,json=stopTimeNs,proto3" json:"stop_time_ns,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PingResponse) Reset() {
*x = PingResponse{}
mi := &file_filer_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PingResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PingResponse) ProtoMessage() {}
func (x *PingResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[38]
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 PingResponse.ProtoReflect.Descriptor instead.
func (*PingResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{38}
}
func (x *PingResponse) GetStartTimeNs() int64 {
if x != nil {
return x.StartTimeNs
}
return 0
}
func (x *PingResponse) GetRemoteTimeNs() int64 {
if x != nil {
return x.RemoteTimeNs
}
return 0
}
func (x *PingResponse) GetStopTimeNs() int64 {
if x != nil {
return x.StopTimeNs
}
return 0
}
type GetFilerConfigurationRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetFilerConfigurationRequest) Reset() {
*x = GetFilerConfigurationRequest{}
mi := &file_filer_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetFilerConfigurationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetFilerConfigurationRequest) ProtoMessage() {}
func (x *GetFilerConfigurationRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[39]
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 GetFilerConfigurationRequest.ProtoReflect.Descriptor instead.
func (*GetFilerConfigurationRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{39}
}
type GetFilerConfigurationResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Masters []string `protobuf:"bytes,1,rep,name=masters,proto3" json:"masters,omitempty"`
Replication string `protobuf:"bytes,2,opt,name=replication,proto3" json:"replication,omitempty"`
Collection string `protobuf:"bytes,3,opt,name=collection,proto3" json:"collection,omitempty"`
MaxMb uint32 `protobuf:"varint,4,opt,name=max_mb,json=maxMb,proto3" json:"max_mb,omitempty"`
DirBuckets string `protobuf:"bytes,5,opt,name=dir_buckets,json=dirBuckets,proto3" json:"dir_buckets,omitempty"`
Cipher bool `protobuf:"varint,7,opt,name=cipher,proto3" json:"cipher,omitempty"`
Signature int32 `protobuf:"varint,8,opt,name=signature,proto3" json:"signature,omitempty"`
MetricsAddress string `protobuf:"bytes,9,opt,name=metrics_address,json=metricsAddress,proto3" json:"metrics_address,omitempty"`
MetricsIntervalSec int32 `protobuf:"varint,10,opt,name=metrics_interval_sec,json=metricsIntervalSec,proto3" json:"metrics_interval_sec,omitempty"`
Version string `protobuf:"bytes,11,opt,name=version,proto3" json:"version,omitempty"`
ClusterId string `protobuf:"bytes,12,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
FilerGroup string `protobuf:"bytes,13,opt,name=filer_group,json=filerGroup,proto3" json:"filer_group,omitempty"`
MajorVersion int32 `protobuf:"varint,14,opt,name=major_version,json=majorVersion,proto3" json:"major_version,omitempty"`
MinorVersion int32 `protobuf:"varint,15,opt,name=minor_version,json=minorVersion,proto3" json:"minor_version,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetFilerConfigurationResponse) Reset() {
*x = GetFilerConfigurationResponse{}
mi := &file_filer_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetFilerConfigurationResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetFilerConfigurationResponse) ProtoMessage() {}
func (x *GetFilerConfigurationResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[40]
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 GetFilerConfigurationResponse.ProtoReflect.Descriptor instead.
func (*GetFilerConfigurationResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{40}
}
func (x *GetFilerConfigurationResponse) GetMasters() []string {
if x != nil {
return x.Masters
}
return nil
}
func (x *GetFilerConfigurationResponse) GetReplication() string {
if x != nil {
return x.Replication
}
return ""
}
func (x *GetFilerConfigurationResponse) GetCollection() string {
if x != nil {
return x.Collection
}
return ""
}
func (x *GetFilerConfigurationResponse) GetMaxMb() uint32 {
if x != nil {
return x.MaxMb
}
return 0
}
func (x *GetFilerConfigurationResponse) GetDirBuckets() string {
if x != nil {
return x.DirBuckets
}
return ""
}
func (x *GetFilerConfigurationResponse) GetCipher() bool {
if x != nil {
return x.Cipher
}
return false
}
func (x *GetFilerConfigurationResponse) GetSignature() int32 {
if x != nil {
return x.Signature
}
return 0
}
func (x *GetFilerConfigurationResponse) GetMetricsAddress() string {
if x != nil {
return x.MetricsAddress
}
return ""
}
func (x *GetFilerConfigurationResponse) GetMetricsIntervalSec() int32 {
if x != nil {
return x.MetricsIntervalSec
}
return 0
}
func (x *GetFilerConfigurationResponse) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *GetFilerConfigurationResponse) GetClusterId() string {
if x != nil {
return x.ClusterId
}
return ""
}
func (x *GetFilerConfigurationResponse) GetFilerGroup() string {
if x != nil {
return x.FilerGroup
}
return ""
}
func (x *GetFilerConfigurationResponse) GetMajorVersion() int32 {
if x != nil {
return x.MajorVersion
}
return 0
}
func (x *GetFilerConfigurationResponse) GetMinorVersion() int32 {
if x != nil {
return x.MinorVersion
}
return 0
}
type SubscribeMetadataRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
ClientName string `protobuf:"bytes,1,opt,name=client_name,json=clientName,proto3" json:"client_name,omitempty"`
PathPrefix string `protobuf:"bytes,2,opt,name=path_prefix,json=pathPrefix,proto3" json:"path_prefix,omitempty"`
SinceNs int64 `protobuf:"varint,3,opt,name=since_ns,json=sinceNs,proto3" json:"since_ns,omitempty"`
Signature int32 `protobuf:"varint,4,opt,name=signature,proto3" json:"signature,omitempty"`
PathPrefixes []string `protobuf:"bytes,6,rep,name=path_prefixes,json=pathPrefixes,proto3" json:"path_prefixes,omitempty"`
ClientId int32 `protobuf:"varint,7,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
UntilNs int64 `protobuf:"varint,8,opt,name=until_ns,json=untilNs,proto3" json:"until_ns,omitempty"`
ClientEpoch int32 `protobuf:"varint,9,opt,name=client_epoch,json=clientEpoch,proto3" json:"client_epoch,omitempty"`
Directories []string `protobuf:"bytes,10,rep,name=directories,proto3" json:"directories,omitempty"` // exact directory to watch
ClientSupportsBatching bool `protobuf:"varint,11,opt,name=client_supports_batching,json=clientSupportsBatching,proto3" json:"client_supports_batching,omitempty"` // client can unpack SubscribeMetadataResponse.events
ClientSupportsMetadataChunks bool `protobuf:"varint,12,opt,name=client_supports_metadata_chunks,json=clientSupportsMetadataChunks,proto3" json:"client_supports_metadata_chunks,omitempty"` // client can read log file chunks from volume servers
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SubscribeMetadataRequest) Reset() {
*x = SubscribeMetadataRequest{}
mi := &file_filer_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SubscribeMetadataRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubscribeMetadataRequest) ProtoMessage() {}
func (x *SubscribeMetadataRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[41]
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 SubscribeMetadataRequest.ProtoReflect.Descriptor instead.
func (*SubscribeMetadataRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{41}
}
func (x *SubscribeMetadataRequest) GetClientName() string {
if x != nil {
return x.ClientName
}
return ""
}
func (x *SubscribeMetadataRequest) GetPathPrefix() string {
if x != nil {
return x.PathPrefix
}
return ""
}
func (x *SubscribeMetadataRequest) GetSinceNs() int64 {
if x != nil {
return x.SinceNs
}
return 0
}
func (x *SubscribeMetadataRequest) GetSignature() int32 {
if x != nil {
return x.Signature
}
return 0
}
func (x *SubscribeMetadataRequest) GetPathPrefixes() []string {
if x != nil {
return x.PathPrefixes
}
return nil
}
func (x *SubscribeMetadataRequest) GetClientId() int32 {
if x != nil {
return x.ClientId
}
return 0
}
func (x *SubscribeMetadataRequest) GetUntilNs() int64 {
if x != nil {
return x.UntilNs
}
return 0
}
func (x *SubscribeMetadataRequest) GetClientEpoch() int32 {
if x != nil {
return x.ClientEpoch
}
return 0
}
func (x *SubscribeMetadataRequest) GetDirectories() []string {
if x != nil {
return x.Directories
}
return nil
}
func (x *SubscribeMetadataRequest) GetClientSupportsBatching() bool {
if x != nil {
return x.ClientSupportsBatching
}
return false
}
func (x *SubscribeMetadataRequest) GetClientSupportsMetadataChunks() bool {
if x != nil {
return x.ClientSupportsMetadataChunks
}
return false
}
type SubscribeMetadataResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
EventNotification *EventNotification `protobuf:"bytes,2,opt,name=event_notification,json=eventNotification,proto3" json:"event_notification,omitempty"`
TsNs int64 `protobuf:"varint,3,opt,name=ts_ns,json=tsNs,proto3" json:"ts_ns,omitempty"`
Events []*SubscribeMetadataResponse `protobuf:"bytes,4,rep,name=events,proto3" json:"events,omitempty"` // batch of additional events (backlog catch-up)
LogFileRefs []*LogFileChunkRef `protobuf:"bytes,5,rep,name=log_file_refs,json=logFileRefs,proto3" json:"log_file_refs,omitempty"` // log file chunk refs for client direct-read
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SubscribeMetadataResponse) Reset() {
*x = SubscribeMetadataResponse{}
mi := &file_filer_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SubscribeMetadataResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubscribeMetadataResponse) ProtoMessage() {}
func (x *SubscribeMetadataResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[42]
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 SubscribeMetadataResponse.ProtoReflect.Descriptor instead.
func (*SubscribeMetadataResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{42}
}
func (x *SubscribeMetadataResponse) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *SubscribeMetadataResponse) GetEventNotification() *EventNotification {
if x != nil {
return x.EventNotification
}
return nil
}
func (x *SubscribeMetadataResponse) GetTsNs() int64 {
if x != nil {
return x.TsNs
}
return 0
}
func (x *SubscribeMetadataResponse) GetEvents() []*SubscribeMetadataResponse {
if x != nil {
return x.Events
}
return nil
}
func (x *SubscribeMetadataResponse) GetLogFileRefs() []*LogFileChunkRef {
if x != nil {
return x.LogFileRefs
}
return nil
}
// A persisted log file that the client can read directly from volume servers.
// The file format is: [4-byte size | protobuf LogEntry] repeated.
// Each LogEntry.Data contains a marshaled SubscribeMetadataResponse.
type LogFileChunkRef struct {
state protoimpl.MessageState `protogen:"open.v1"`
Chunks []*FileChunk `protobuf:"bytes,1,rep,name=chunks,proto3" json:"chunks,omitempty"` // chunk references (fids) to read from volume servers
FileTsNs int64 `protobuf:"varint,2,opt,name=file_ts_ns,json=fileTsNs,proto3" json:"file_ts_ns,omitempty"` // minute-level timestamp of the log file
FilerId string `protobuf:"bytes,3,opt,name=filer_id,json=filerId,proto3" json:"filer_id,omitempty"` // filer signature suffix from log filename
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LogFileChunkRef) Reset() {
*x = LogFileChunkRef{}
mi := &file_filer_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LogFileChunkRef) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogFileChunkRef) ProtoMessage() {}
func (x *LogFileChunkRef) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[43]
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 LogFileChunkRef.ProtoReflect.Descriptor instead.
func (*LogFileChunkRef) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{43}
}
func (x *LogFileChunkRef) GetChunks() []*FileChunk {
if x != nil {
return x.Chunks
}
return nil
}
func (x *LogFileChunkRef) GetFileTsNs() int64 {
if x != nil {
return x.FileTsNs
}
return 0
}
func (x *LogFileChunkRef) GetFilerId() string {
if x != nil {
return x.FilerId
}
return ""
}
type TraverseBfsMetadataRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
ExcludedPrefixes []string `protobuf:"bytes,2,rep,name=excluded_prefixes,json=excludedPrefixes,proto3" json:"excluded_prefixes,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TraverseBfsMetadataRequest) Reset() {
*x = TraverseBfsMetadataRequest{}
mi := &file_filer_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TraverseBfsMetadataRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TraverseBfsMetadataRequest) ProtoMessage() {}
func (x *TraverseBfsMetadataRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[44]
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 TraverseBfsMetadataRequest.ProtoReflect.Descriptor instead.
func (*TraverseBfsMetadataRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{44}
}
func (x *TraverseBfsMetadataRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *TraverseBfsMetadataRequest) GetExcludedPrefixes() []string {
if x != nil {
return x.ExcludedPrefixes
}
return nil
}
type TraverseBfsMetadataResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Entry *Entry `protobuf:"bytes,2,opt,name=entry,proto3" json:"entry,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TraverseBfsMetadataResponse) Reset() {
*x = TraverseBfsMetadataResponse{}
mi := &file_filer_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TraverseBfsMetadataResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TraverseBfsMetadataResponse) ProtoMessage() {}
func (x *TraverseBfsMetadataResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[45]
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 TraverseBfsMetadataResponse.ProtoReflect.Descriptor instead.
func (*TraverseBfsMetadataResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{45}
}
func (x *TraverseBfsMetadataResponse) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *TraverseBfsMetadataResponse) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
type LogEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
TsNs int64 `protobuf:"varint,1,opt,name=ts_ns,json=tsNs,proto3" json:"ts_ns,omitempty"`
PartitionKeyHash int32 `protobuf:"varint,2,opt,name=partition_key_hash,json=partitionKeyHash,proto3" json:"partition_key_hash,omitempty"`
Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
Key []byte `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"`
Offset int64 `protobuf:"varint,5,opt,name=offset,proto3" json:"offset,omitempty"` // Sequential offset within partition
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LogEntry) Reset() {
*x = LogEntry{}
mi := &file_filer_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LogEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry) ProtoMessage() {}
func (x *LogEntry) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[46]
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 LogEntry.ProtoReflect.Descriptor instead.
func (*LogEntry) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{46}
}
func (x *LogEntry) GetTsNs() int64 {
if x != nil {
return x.TsNs
}
return 0
}
func (x *LogEntry) GetPartitionKeyHash() int32 {
if x != nil {
return x.PartitionKeyHash
}
return 0
}
func (x *LogEntry) GetData() []byte {
if x != nil {
return x.Data
}
return nil
}
func (x *LogEntry) GetKey() []byte {
if x != nil {
return x.Key
}
return nil
}
func (x *LogEntry) GetOffset() int64 {
if x != nil {
return x.Offset
}
return 0
}
type KeepConnectedRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
GrpcPort uint32 `protobuf:"varint,2,opt,name=grpc_port,json=grpcPort,proto3" json:"grpc_port,omitempty"`
Resources []string `protobuf:"bytes,3,rep,name=resources,proto3" json:"resources,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *KeepConnectedRequest) Reset() {
*x = KeepConnectedRequest{}
mi := &file_filer_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KeepConnectedRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KeepConnectedRequest) ProtoMessage() {}
func (x *KeepConnectedRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[47]
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 KeepConnectedRequest.ProtoReflect.Descriptor instead.
func (*KeepConnectedRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{47}
}
func (x *KeepConnectedRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *KeepConnectedRequest) GetGrpcPort() uint32 {
if x != nil {
return x.GrpcPort
}
return 0
}
func (x *KeepConnectedRequest) GetResources() []string {
if x != nil {
return x.Resources
}
return nil
}
type KeepConnectedResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *KeepConnectedResponse) Reset() {
*x = KeepConnectedResponse{}
mi := &file_filer_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KeepConnectedResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KeepConnectedResponse) ProtoMessage() {}
func (x *KeepConnectedResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[48]
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 KeepConnectedResponse.ProtoReflect.Descriptor instead.
func (*KeepConnectedResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{48}
}
type LocateBrokerRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Resource string `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LocateBrokerRequest) Reset() {
*x = LocateBrokerRequest{}
mi := &file_filer_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LocateBrokerRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LocateBrokerRequest) ProtoMessage() {}
func (x *LocateBrokerRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[49]
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 LocateBrokerRequest.ProtoReflect.Descriptor instead.
func (*LocateBrokerRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{49}
}
func (x *LocateBrokerRequest) GetResource() string {
if x != nil {
return x.Resource
}
return ""
}
type LocateBrokerResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Found bool `protobuf:"varint,1,opt,name=found,proto3" json:"found,omitempty"`
Resources []*LocateBrokerResponse_Resource `protobuf:"bytes,2,rep,name=resources,proto3" json:"resources,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LocateBrokerResponse) Reset() {
*x = LocateBrokerResponse{}
mi := &file_filer_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LocateBrokerResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LocateBrokerResponse) ProtoMessage() {}
func (x *LocateBrokerResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[50]
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 LocateBrokerResponse.ProtoReflect.Descriptor instead.
func (*LocateBrokerResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{50}
}
func (x *LocateBrokerResponse) GetFound() bool {
if x != nil {
return x.Found
}
return false
}
func (x *LocateBrokerResponse) GetResources() []*LocateBrokerResponse_Resource {
if x != nil {
return x.Resources
}
return nil
}
// ///////////////////////
// Key-Value operations
// ///////////////////////
type KvGetRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *KvGetRequest) Reset() {
*x = KvGetRequest{}
mi := &file_filer_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KvGetRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KvGetRequest) ProtoMessage() {}
func (x *KvGetRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[51]
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 KvGetRequest.ProtoReflect.Descriptor instead.
func (*KvGetRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{51}
}
func (x *KvGetRequest) GetKey() []byte {
if x != nil {
return x.Key
}
return nil
}
type KvGetResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *KvGetResponse) Reset() {
*x = KvGetResponse{}
mi := &file_filer_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KvGetResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KvGetResponse) ProtoMessage() {}
func (x *KvGetResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[52]
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 KvGetResponse.ProtoReflect.Descriptor instead.
func (*KvGetResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{52}
}
func (x *KvGetResponse) GetValue() []byte {
if x != nil {
return x.Value
}
return nil
}
func (x *KvGetResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
type KvPutRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *KvPutRequest) Reset() {
*x = KvPutRequest{}
mi := &file_filer_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KvPutRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KvPutRequest) ProtoMessage() {}
func (x *KvPutRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[53]
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 KvPutRequest.ProtoReflect.Descriptor instead.
func (*KvPutRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{53}
}
func (x *KvPutRequest) GetKey() []byte {
if x != nil {
return x.Key
}
return nil
}
func (x *KvPutRequest) GetValue() []byte {
if x != nil {
return x.Value
}
return nil
}
type KvPutResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *KvPutResponse) Reset() {
*x = KvPutResponse{}
mi := &file_filer_proto_msgTypes[54]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KvPutResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KvPutResponse) ProtoMessage() {}
func (x *KvPutResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[54]
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 KvPutResponse.ProtoReflect.Descriptor instead.
func (*KvPutResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{54}
}
func (x *KvPutResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
// ///////////////////////
// path-based configurations
// ///////////////////////
type FilerConf struct {
state protoimpl.MessageState `protogen:"open.v1"`
Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
Locations []*FilerConf_PathConf `protobuf:"bytes,2,rep,name=locations,proto3" json:"locations,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FilerConf) Reset() {
*x = FilerConf{}
mi := &file_filer_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FilerConf) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FilerConf) ProtoMessage() {}
func (x *FilerConf) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[55]
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 FilerConf.ProtoReflect.Descriptor instead.
func (*FilerConf) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{55}
}
func (x *FilerConf) GetVersion() int32 {
if x != nil {
return x.Version
}
return 0
}
func (x *FilerConf) GetLocations() []*FilerConf_PathConf {
if x != nil {
return x.Locations
}
return nil
}
// ///////////////////////
// Remote Storage related
// ///////////////////////
type CacheRemoteObjectToLocalClusterRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
ChunkConcurrency int32 `protobuf:"varint,3,opt,name=chunk_concurrency,json=chunkConcurrency,proto3" json:"chunk_concurrency,omitempty"` // parallel chunk downloads per file, 0 = default (8)
DownloadConcurrency int32 `protobuf:"varint,4,opt,name=download_concurrency,json=downloadConcurrency,proto3" json:"download_concurrency,omitempty"` // multipart download concurrency per chunk (if supported by remote storage), 0 = default (5 for S3)
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CacheRemoteObjectToLocalClusterRequest) Reset() {
*x = CacheRemoteObjectToLocalClusterRequest{}
mi := &file_filer_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CacheRemoteObjectToLocalClusterRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CacheRemoteObjectToLocalClusterRequest) ProtoMessage() {}
func (x *CacheRemoteObjectToLocalClusterRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[56]
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 CacheRemoteObjectToLocalClusterRequest.ProtoReflect.Descriptor instead.
func (*CacheRemoteObjectToLocalClusterRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{56}
}
func (x *CacheRemoteObjectToLocalClusterRequest) GetDirectory() string {
if x != nil {
return x.Directory
}
return ""
}
func (x *CacheRemoteObjectToLocalClusterRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *CacheRemoteObjectToLocalClusterRequest) GetChunkConcurrency() int32 {
if x != nil {
return x.ChunkConcurrency
}
return 0
}
func (x *CacheRemoteObjectToLocalClusterRequest) GetDownloadConcurrency() int32 {
if x != nil {
return x.DownloadConcurrency
}
return 0
}
type CacheRemoteObjectToLocalClusterResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Entry *Entry `protobuf:"bytes,1,opt,name=entry,proto3" json:"entry,omitempty"`
MetadataEvent *SubscribeMetadataResponse `protobuf:"bytes,2,opt,name=metadata_event,json=metadataEvent,proto3" json:"metadata_event,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CacheRemoteObjectToLocalClusterResponse) Reset() {
*x = CacheRemoteObjectToLocalClusterResponse{}
mi := &file_filer_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CacheRemoteObjectToLocalClusterResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CacheRemoteObjectToLocalClusterResponse) ProtoMessage() {}
func (x *CacheRemoteObjectToLocalClusterResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[57]
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 CacheRemoteObjectToLocalClusterResponse.ProtoReflect.Descriptor instead.
func (*CacheRemoteObjectToLocalClusterResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{57}
}
func (x *CacheRemoteObjectToLocalClusterResponse) GetEntry() *Entry {
if x != nil {
return x.Entry
}
return nil
}
func (x *CacheRemoteObjectToLocalClusterResponse) GetMetadataEvent() *SubscribeMetadataResponse {
if x != nil {
return x.MetadataEvent
}
return nil
}
// ///////////////////////
// distributed lock management
// ///////////////////////
type LockRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
SecondsToLock int64 `protobuf:"varint,2,opt,name=seconds_to_lock,json=secondsToLock,proto3" json:"seconds_to_lock,omitempty"`
RenewToken string `protobuf:"bytes,3,opt,name=renew_token,json=renewToken,proto3" json:"renew_token,omitempty"`
IsMoved bool `protobuf:"varint,4,opt,name=is_moved,json=isMoved,proto3" json:"is_moved,omitempty"`
Owner string `protobuf:"bytes,5,opt,name=owner,proto3" json:"owner,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LockRequest) Reset() {
*x = LockRequest{}
mi := &file_filer_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LockRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LockRequest) ProtoMessage() {}
func (x *LockRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[58]
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 LockRequest.ProtoReflect.Descriptor instead.
func (*LockRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{58}
}
func (x *LockRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *LockRequest) GetSecondsToLock() int64 {
if x != nil {
return x.SecondsToLock
}
return 0
}
func (x *LockRequest) GetRenewToken() string {
if x != nil {
return x.RenewToken
}
return ""
}
func (x *LockRequest) GetIsMoved() bool {
if x != nil {
return x.IsMoved
}
return false
}
func (x *LockRequest) GetOwner() string {
if x != nil {
return x.Owner
}
return ""
}
type LockResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
RenewToken string `protobuf:"bytes,1,opt,name=renew_token,json=renewToken,proto3" json:"renew_token,omitempty"`
LockOwner string `protobuf:"bytes,2,opt,name=lock_owner,json=lockOwner,proto3" json:"lock_owner,omitempty"`
LockHostMovedTo string `protobuf:"bytes,3,opt,name=lock_host_moved_to,json=lockHostMovedTo,proto3" json:"lock_host_moved_to,omitempty"`
Error string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"`
Generation int64 `protobuf:"varint,5,opt,name=generation,proto3" json:"generation,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LockResponse) Reset() {
*x = LockResponse{}
mi := &file_filer_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LockResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LockResponse) ProtoMessage() {}
func (x *LockResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[59]
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 LockResponse.ProtoReflect.Descriptor instead.
func (*LockResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{59}
}
func (x *LockResponse) GetRenewToken() string {
if x != nil {
return x.RenewToken
}
return ""
}
func (x *LockResponse) GetLockOwner() string {
if x != nil {
return x.LockOwner
}
return ""
}
func (x *LockResponse) GetLockHostMovedTo() string {
if x != nil {
return x.LockHostMovedTo
}
return ""
}
func (x *LockResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *LockResponse) GetGeneration() int64 {
if x != nil {
return x.Generation
}
return 0
}
type UnlockRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
RenewToken string `protobuf:"bytes,2,opt,name=renew_token,json=renewToken,proto3" json:"renew_token,omitempty"`
IsMoved bool `protobuf:"varint,3,opt,name=is_moved,json=isMoved,proto3" json:"is_moved,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UnlockRequest) Reset() {
*x = UnlockRequest{}
mi := &file_filer_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UnlockRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UnlockRequest) ProtoMessage() {}
func (x *UnlockRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[60]
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 UnlockRequest.ProtoReflect.Descriptor instead.
func (*UnlockRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{60}
}
func (x *UnlockRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *UnlockRequest) GetRenewToken() string {
if x != nil {
return x.RenewToken
}
return ""
}
func (x *UnlockRequest) GetIsMoved() bool {
if x != nil {
return x.IsMoved
}
return false
}
type UnlockResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
MovedTo string `protobuf:"bytes,2,opt,name=moved_to,json=movedTo,proto3" json:"moved_to,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UnlockResponse) Reset() {
*x = UnlockResponse{}
mi := &file_filer_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UnlockResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UnlockResponse) ProtoMessage() {}
func (x *UnlockResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[61]
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 UnlockResponse.ProtoReflect.Descriptor instead.
func (*UnlockResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{61}
}
func (x *UnlockResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *UnlockResponse) GetMovedTo() string {
if x != nil {
return x.MovedTo
}
return ""
}
type FindLockOwnerRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
IsMoved bool `protobuf:"varint,2,opt,name=is_moved,json=isMoved,proto3" json:"is_moved,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FindLockOwnerRequest) Reset() {
*x = FindLockOwnerRequest{}
mi := &file_filer_proto_msgTypes[62]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FindLockOwnerRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindLockOwnerRequest) ProtoMessage() {}
func (x *FindLockOwnerRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[62]
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 FindLockOwnerRequest.ProtoReflect.Descriptor instead.
func (*FindLockOwnerRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{62}
}
func (x *FindLockOwnerRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *FindLockOwnerRequest) GetIsMoved() bool {
if x != nil {
return x.IsMoved
}
return false
}
type FindLockOwnerResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
Owner string `protobuf:"bytes,1,opt,name=owner,proto3" json:"owner,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FindLockOwnerResponse) Reset() {
*x = FindLockOwnerResponse{}
mi := &file_filer_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FindLockOwnerResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindLockOwnerResponse) ProtoMessage() {}
func (x *FindLockOwnerResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[63]
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 FindLockOwnerResponse.ProtoReflect.Descriptor instead.
func (*FindLockOwnerResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{63}
}
func (x *FindLockOwnerResponse) GetOwner() string {
if x != nil {
return x.Owner
}
return ""
}
type Lock struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
RenewToken string `protobuf:"bytes,2,opt,name=renew_token,json=renewToken,proto3" json:"renew_token,omitempty"`
ExpiredAtNs int64 `protobuf:"varint,3,opt,name=expired_at_ns,json=expiredAtNs,proto3" json:"expired_at_ns,omitempty"`
Owner string `protobuf:"bytes,4,opt,name=owner,proto3" json:"owner,omitempty"`
Generation int64 `protobuf:"varint,5,opt,name=generation,proto3" json:"generation,omitempty"`
IsBackup bool `protobuf:"varint,6,opt,name=is_backup,json=isBackup,proto3" json:"is_backup,omitempty"`
Seq int64 `protobuf:"varint,7,opt,name=seq,proto3" json:"seq,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Lock) Reset() {
*x = Lock{}
mi := &file_filer_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Lock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Lock) ProtoMessage() {}
func (x *Lock) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[64]
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 Lock.ProtoReflect.Descriptor instead.
func (*Lock) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{64}
}
func (x *Lock) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Lock) GetRenewToken() string {
if x != nil {
return x.RenewToken
}
return ""
}
func (x *Lock) GetExpiredAtNs() int64 {
if x != nil {
return x.ExpiredAtNs
}
return 0
}
func (x *Lock) GetOwner() string {
if x != nil {
return x.Owner
}
return ""
}
func (x *Lock) GetGeneration() int64 {
if x != nil {
return x.Generation
}
return 0
}
func (x *Lock) GetIsBackup() bool {
if x != nil {
return x.IsBackup
}
return false
}
func (x *Lock) GetSeq() int64 {
if x != nil {
return x.Seq
}
return 0
}
type TransferLocksRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Locks []*Lock `protobuf:"bytes,1,rep,name=locks,proto3" json:"locks,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TransferLocksRequest) Reset() {
*x = TransferLocksRequest{}
mi := &file_filer_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TransferLocksRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransferLocksRequest) ProtoMessage() {}
func (x *TransferLocksRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[65]
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 TransferLocksRequest.ProtoReflect.Descriptor instead.
func (*TransferLocksRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{65}
}
func (x *TransferLocksRequest) GetLocks() []*Lock {
if x != nil {
return x.Locks
}
return nil
}
type TransferLocksResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TransferLocksResponse) Reset() {
*x = TransferLocksResponse{}
mi := &file_filer_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TransferLocksResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransferLocksResponse) ProtoMessage() {}
func (x *TransferLocksResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[66]
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 TransferLocksResponse.ProtoReflect.Descriptor instead.
func (*TransferLocksResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{66}
}
type ReplicateLockRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
RenewToken string `protobuf:"bytes,2,opt,name=renew_token,json=renewToken,proto3" json:"renew_token,omitempty"`
ExpiredAtNs int64 `protobuf:"varint,3,opt,name=expired_at_ns,json=expiredAtNs,proto3" json:"expired_at_ns,omitempty"`
Owner string `protobuf:"bytes,4,opt,name=owner,proto3" json:"owner,omitempty"`
Generation int64 `protobuf:"varint,5,opt,name=generation,proto3" json:"generation,omitempty"`
IsUnlock bool `protobuf:"varint,6,opt,name=is_unlock,json=isUnlock,proto3" json:"is_unlock,omitempty"`
Seq int64 `protobuf:"varint,7,opt,name=seq,proto3" json:"seq,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ReplicateLockRequest) Reset() {
*x = ReplicateLockRequest{}
mi := &file_filer_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ReplicateLockRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReplicateLockRequest) ProtoMessage() {}
func (x *ReplicateLockRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[67]
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 ReplicateLockRequest.ProtoReflect.Descriptor instead.
func (*ReplicateLockRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{67}
}
func (x *ReplicateLockRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ReplicateLockRequest) GetRenewToken() string {
if x != nil {
return x.RenewToken
}
return ""
}
func (x *ReplicateLockRequest) GetExpiredAtNs() int64 {
if x != nil {
return x.ExpiredAtNs
}
return 0
}
func (x *ReplicateLockRequest) GetOwner() string {
if x != nil {
return x.Owner
}
return ""
}
func (x *ReplicateLockRequest) GetGeneration() int64 {
if x != nil {
return x.Generation
}
return 0
}
func (x *ReplicateLockRequest) GetIsUnlock() bool {
if x != nil {
return x.IsUnlock
}
return false
}
func (x *ReplicateLockRequest) GetSeq() int64 {
if x != nil {
return x.Seq
}
return 0
}
type ReplicateLockResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ReplicateLockResponse) Reset() {
*x = ReplicateLockResponse{}
mi := &file_filer_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ReplicateLockResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReplicateLockResponse) ProtoMessage() {}
func (x *ReplicateLockResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[68]
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 ReplicateLockResponse.ProtoReflect.Descriptor instead.
func (*ReplicateLockResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{68}
}
type StreamMutateEntryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
RequestId uint64 `protobuf:"varint,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Types that are valid to be assigned to Request:
//
// *StreamMutateEntryRequest_CreateRequest
// *StreamMutateEntryRequest_UpdateRequest
// *StreamMutateEntryRequest_DeleteRequest
// *StreamMutateEntryRequest_RenameRequest
Request isStreamMutateEntryRequest_Request `protobuf_oneof:"request"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StreamMutateEntryRequest) Reset() {
*x = StreamMutateEntryRequest{}
mi := &file_filer_proto_msgTypes[69]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StreamMutateEntryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamMutateEntryRequest) ProtoMessage() {}
func (x *StreamMutateEntryRequest) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[69]
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 StreamMutateEntryRequest.ProtoReflect.Descriptor instead.
func (*StreamMutateEntryRequest) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{69}
}
func (x *StreamMutateEntryRequest) GetRequestId() uint64 {
if x != nil {
return x.RequestId
}
return 0
}
func (x *StreamMutateEntryRequest) GetRequest() isStreamMutateEntryRequest_Request {
if x != nil {
return x.Request
}
return nil
}
func (x *StreamMutateEntryRequest) GetCreateRequest() *CreateEntryRequest {
if x != nil {
if x, ok := x.Request.(*StreamMutateEntryRequest_CreateRequest); ok {
return x.CreateRequest
}
}
return nil
}
func (x *StreamMutateEntryRequest) GetUpdateRequest() *UpdateEntryRequest {
if x != nil {
if x, ok := x.Request.(*StreamMutateEntryRequest_UpdateRequest); ok {
return x.UpdateRequest
}
}
return nil
}
func (x *StreamMutateEntryRequest) GetDeleteRequest() *DeleteEntryRequest {
if x != nil {
if x, ok := x.Request.(*StreamMutateEntryRequest_DeleteRequest); ok {
return x.DeleteRequest
}
}
return nil
}
func (x *StreamMutateEntryRequest) GetRenameRequest() *StreamRenameEntryRequest {
if x != nil {
if x, ok := x.Request.(*StreamMutateEntryRequest_RenameRequest); ok {
return x.RenameRequest
}
}
return nil
}
type isStreamMutateEntryRequest_Request interface {
isStreamMutateEntryRequest_Request()
}
type StreamMutateEntryRequest_CreateRequest struct {
CreateRequest *CreateEntryRequest `protobuf:"bytes,2,opt,name=create_request,json=createRequest,proto3,oneof"`
}
type StreamMutateEntryRequest_UpdateRequest struct {
UpdateRequest *UpdateEntryRequest `protobuf:"bytes,3,opt,name=update_request,json=updateRequest,proto3,oneof"`
}
type StreamMutateEntryRequest_DeleteRequest struct {
DeleteRequest *DeleteEntryRequest `protobuf:"bytes,4,opt,name=delete_request,json=deleteRequest,proto3,oneof"`
}
type StreamMutateEntryRequest_RenameRequest struct {
RenameRequest *StreamRenameEntryRequest `protobuf:"bytes,5,opt,name=rename_request,json=renameRequest,proto3,oneof"`
}
func (*StreamMutateEntryRequest_CreateRequest) isStreamMutateEntryRequest_Request() {}
func (*StreamMutateEntryRequest_UpdateRequest) isStreamMutateEntryRequest_Request() {}
func (*StreamMutateEntryRequest_DeleteRequest) isStreamMutateEntryRequest_Request() {}
func (*StreamMutateEntryRequest_RenameRequest) isStreamMutateEntryRequest_Request() {}
type StreamMutateEntryResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
RequestId uint64 `protobuf:"varint,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
IsLast bool `protobuf:"varint,2,opt,name=is_last,json=isLast,proto3" json:"is_last,omitempty"` // always true except for rename, which sends multiple events
// Types that are valid to be assigned to Response:
//
// *StreamMutateEntryResponse_CreateResponse
// *StreamMutateEntryResponse_UpdateResponse
// *StreamMutateEntryResponse_DeleteResponse
// *StreamMutateEntryResponse_RenameResponse
Response isStreamMutateEntryResponse_Response `protobuf_oneof:"response"`
Error string `protobuf:"bytes,7,opt,name=error,proto3" json:"error,omitempty"` // human-readable error message when the operation failed
Errno int32 `protobuf:"varint,8,opt,name=errno,proto3" json:"errno,omitempty"` // POSIX errno (e.g. ENOENT=2, ENOTEMPTY=66) for direct FUSE status mapping
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *StreamMutateEntryResponse) Reset() {
*x = StreamMutateEntryResponse{}
mi := &file_filer_proto_msgTypes[70]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StreamMutateEntryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamMutateEntryResponse) ProtoMessage() {}
func (x *StreamMutateEntryResponse) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[70]
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 StreamMutateEntryResponse.ProtoReflect.Descriptor instead.
func (*StreamMutateEntryResponse) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{70}
}
func (x *StreamMutateEntryResponse) GetRequestId() uint64 {
if x != nil {
return x.RequestId
}
return 0
}
func (x *StreamMutateEntryResponse) GetIsLast() bool {
if x != nil {
return x.IsLast
}
return false
}
func (x *StreamMutateEntryResponse) GetResponse() isStreamMutateEntryResponse_Response {
if x != nil {
return x.Response
}
return nil
}
func (x *StreamMutateEntryResponse) GetCreateResponse() *CreateEntryResponse {
if x != nil {
if x, ok := x.Response.(*StreamMutateEntryResponse_CreateResponse); ok {
return x.CreateResponse
}
}
return nil
}
func (x *StreamMutateEntryResponse) GetUpdateResponse() *UpdateEntryResponse {
if x != nil {
if x, ok := x.Response.(*StreamMutateEntryResponse_UpdateResponse); ok {
return x.UpdateResponse
}
}
return nil
}
func (x *StreamMutateEntryResponse) GetDeleteResponse() *DeleteEntryResponse {
if x != nil {
if x, ok := x.Response.(*StreamMutateEntryResponse_DeleteResponse); ok {
return x.DeleteResponse
}
}
return nil
}
func (x *StreamMutateEntryResponse) GetRenameResponse() *StreamRenameEntryResponse {
if x != nil {
if x, ok := x.Response.(*StreamMutateEntryResponse_RenameResponse); ok {
return x.RenameResponse
}
}
return nil
}
func (x *StreamMutateEntryResponse) GetError() string {
if x != nil {
return x.Error
}
return ""
}
func (x *StreamMutateEntryResponse) GetErrno() int32 {
if x != nil {
return x.Errno
}
return 0
}
type isStreamMutateEntryResponse_Response interface {
isStreamMutateEntryResponse_Response()
}
type StreamMutateEntryResponse_CreateResponse struct {
CreateResponse *CreateEntryResponse `protobuf:"bytes,3,opt,name=create_response,json=createResponse,proto3,oneof"`
}
type StreamMutateEntryResponse_UpdateResponse struct {
UpdateResponse *UpdateEntryResponse `protobuf:"bytes,4,opt,name=update_response,json=updateResponse,proto3,oneof"`
}
type StreamMutateEntryResponse_DeleteResponse struct {
DeleteResponse *DeleteEntryResponse `protobuf:"bytes,5,opt,name=delete_response,json=deleteResponse,proto3,oneof"`
}
type StreamMutateEntryResponse_RenameResponse struct {
RenameResponse *StreamRenameEntryResponse `protobuf:"bytes,6,opt,name=rename_response,json=renameResponse,proto3,oneof"`
}
func (*StreamMutateEntryResponse_CreateResponse) isStreamMutateEntryResponse_Response() {}
func (*StreamMutateEntryResponse_UpdateResponse) isStreamMutateEntryResponse_Response() {}
func (*StreamMutateEntryResponse_DeleteResponse) isStreamMutateEntryResponse_Response() {}
func (*StreamMutateEntryResponse_RenameResponse) isStreamMutateEntryResponse_Response() {}
// if found, send the exact address
// if not found, send the full list of existing brokers
type LocateBrokerResponse_Resource struct {
state protoimpl.MessageState `protogen:"open.v1"`
GrpcAddresses string `protobuf:"bytes,1,opt,name=grpc_addresses,json=grpcAddresses,proto3" json:"grpc_addresses,omitempty"`
ResourceCount int32 `protobuf:"varint,2,opt,name=resource_count,json=resourceCount,proto3" json:"resource_count,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LocateBrokerResponse_Resource) Reset() {
*x = LocateBrokerResponse_Resource{}
mi := &file_filer_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LocateBrokerResponse_Resource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LocateBrokerResponse_Resource) ProtoMessage() {}
func (x *LocateBrokerResponse_Resource) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[74]
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 LocateBrokerResponse_Resource.ProtoReflect.Descriptor instead.
func (*LocateBrokerResponse_Resource) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{50, 0}
}
func (x *LocateBrokerResponse_Resource) GetGrpcAddresses() string {
if x != nil {
return x.GrpcAddresses
}
return ""
}
func (x *LocateBrokerResponse_Resource) GetResourceCount() int32 {
if x != nil {
return x.ResourceCount
}
return 0
}
type FilerConf_PathConf struct {
state protoimpl.MessageState `protogen:"open.v1"`
LocationPrefix string `protobuf:"bytes,1,opt,name=location_prefix,json=locationPrefix,proto3" json:"location_prefix,omitempty"`
Collection string `protobuf:"bytes,2,opt,name=collection,proto3" json:"collection,omitempty"`
Replication string `protobuf:"bytes,3,opt,name=replication,proto3" json:"replication,omitempty"`
Ttl string `protobuf:"bytes,4,opt,name=ttl,proto3" json:"ttl,omitempty"`
DiskType string `protobuf:"bytes,5,opt,name=disk_type,json=diskType,proto3" json:"disk_type,omitempty"`
Fsync bool `protobuf:"varint,6,opt,name=fsync,proto3" json:"fsync,omitempty"`
VolumeGrowthCount uint32 `protobuf:"varint,7,opt,name=volume_growth_count,json=volumeGrowthCount,proto3" json:"volume_growth_count,omitempty"`
ReadOnly bool `protobuf:"varint,8,opt,name=read_only,json=readOnly,proto3" json:"read_only,omitempty"`
DataCenter string `protobuf:"bytes,9,opt,name=data_center,json=dataCenter,proto3" json:"data_center,omitempty"`
Rack string `protobuf:"bytes,10,opt,name=rack,proto3" json:"rack,omitempty"`
DataNode string `protobuf:"bytes,11,opt,name=data_node,json=dataNode,proto3" json:"data_node,omitempty"`
MaxFileNameLength uint32 `protobuf:"varint,12,opt,name=max_file_name_length,json=maxFileNameLength,proto3" json:"max_file_name_length,omitempty"`
DisableChunkDeletion bool `protobuf:"varint,13,opt,name=disable_chunk_deletion,json=disableChunkDeletion,proto3" json:"disable_chunk_deletion,omitempty"`
Worm bool `protobuf:"varint,14,opt,name=worm,proto3" json:"worm,omitempty"`
WormGracePeriodSeconds uint64 `protobuf:"varint,15,opt,name=worm_grace_period_seconds,json=wormGracePeriodSeconds,proto3" json:"worm_grace_period_seconds,omitempty"`
WormRetentionTimeSeconds uint64 `protobuf:"varint,16,opt,name=worm_retention_time_seconds,json=wormRetentionTimeSeconds,proto3" json:"worm_retention_time_seconds,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *FilerConf_PathConf) Reset() {
*x = FilerConf_PathConf{}
mi := &file_filer_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *FilerConf_PathConf) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FilerConf_PathConf) ProtoMessage() {}
func (x *FilerConf_PathConf) ProtoReflect() protoreflect.Message {
mi := &file_filer_proto_msgTypes[75]
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 FilerConf_PathConf.ProtoReflect.Descriptor instead.
func (*FilerConf_PathConf) Descriptor() ([]byte, []int) {
return file_filer_proto_rawDescGZIP(), []int{55, 0}
}
func (x *FilerConf_PathConf) GetLocationPrefix() string {
if x != nil {
return x.LocationPrefix
}
return ""
}
func (x *FilerConf_PathConf) GetCollection() string {
if x != nil {
return x.Collection
}
return ""
}
func (x *FilerConf_PathConf) GetReplication() string {
if x != nil {
return x.Replication
}
return ""
}
func (x *FilerConf_PathConf) GetTtl() string {
if x != nil {
return x.Ttl
}
return ""
}
func (x *FilerConf_PathConf) GetDiskType() string {
if x != nil {
return x.DiskType
}
return ""
}
func (x *FilerConf_PathConf) GetFsync() bool {
if x != nil {
return x.Fsync
}
return false
}
func (x *FilerConf_PathConf) GetVolumeGrowthCount() uint32 {
if x != nil {
return x.VolumeGrowthCount
}
return 0
}
func (x *FilerConf_PathConf) GetReadOnly() bool {
if x != nil {
return x.ReadOnly
}
return false
}
func (x *FilerConf_PathConf) GetDataCenter() string {
if x != nil {
return x.DataCenter
}
return ""
}
func (x *FilerConf_PathConf) GetRack() string {
if x != nil {
return x.Rack
}
return ""
}
func (x *FilerConf_PathConf) GetDataNode() string {
if x != nil {
return x.DataNode
}
return ""
}
func (x *FilerConf_PathConf) GetMaxFileNameLength() uint32 {
if x != nil {
return x.MaxFileNameLength
}
return 0
}
func (x *FilerConf_PathConf) GetDisableChunkDeletion() bool {
if x != nil {
return x.DisableChunkDeletion
}
return false
}
func (x *FilerConf_PathConf) GetWorm() bool {
if x != nil {
return x.Worm
}
return false
}
func (x *FilerConf_PathConf) GetWormGracePeriodSeconds() uint64 {
if x != nil {
return x.WormGracePeriodSeconds
}
return 0
}
func (x *FilerConf_PathConf) GetWormRetentionTimeSeconds() uint64 {
if x != nil {
return x.WormRetentionTimeSeconds
}
return 0
}
var File_filer_proto protoreflect.FileDescriptor
const file_filer_proto_rawDesc = "" +
"\n" +
"\vfiler.proto\x12\bfiler_pb\"O\n" +
"\x1bLookupDirectoryEntryRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12\x12\n" +
"\x04name\x18\x02 \x01(\tR\x04name\"E\n" +
"\x1cLookupDirectoryEntryResponse\x12%\n" +
"\x05entry\x18\x01 \x01(\v2\x0f.filer_pb.EntryR\x05entry\"\xe4\x01\n" +
"\x12ListEntriesRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12\x16\n" +
"\x06prefix\x18\x02 \x01(\tR\x06prefix\x12,\n" +
"\x11startFromFileName\x18\x03 \x01(\tR\x11startFromFileName\x12.\n" +
"\x12inclusiveStartFrom\x18\x04 \x01(\bR\x12inclusiveStartFrom\x12\x14\n" +
"\x05limit\x18\x05 \x01(\rR\x05limit\x12$\n" +
"\x0esnapshot_ts_ns\x18\x06 \x01(\x03R\fsnapshotTsNs\"b\n" +
"\x13ListEntriesResponse\x12%\n" +
"\x05entry\x18\x01 \x01(\v2\x0f.filer_pb.EntryR\x05entry\x12$\n" +
"\x0esnapshot_ts_ns\x18\x02 \x01(\x03R\fsnapshotTsNs\"\xc8\x01\n" +
"\vRemoteEntry\x12!\n" +
"\fstorage_name\x18\x01 \x01(\tR\vstorageName\x120\n" +
"\x15last_local_sync_ts_ns\x18\x02 \x01(\x03R\x11lastLocalSyncTsNs\x12 \n" +
"\fremote_e_tag\x18\x03 \x01(\tR\n" +
"remoteETag\x12!\n" +
"\fremote_mtime\x18\x04 \x01(\x03R\vremoteMtime\x12\x1f\n" +
"\vremote_size\x18\x05 \x01(\x03R\n" +
"remoteSize\"\x89\x04\n" +
"\x05Entry\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12!\n" +
"\fis_directory\x18\x02 \x01(\bR\visDirectory\x12+\n" +
"\x06chunks\x18\x03 \x03(\v2\x13.filer_pb.FileChunkR\x06chunks\x128\n" +
"\n" +
"attributes\x18\x04 \x01(\v2\x18.filer_pb.FuseAttributesR\n" +
"attributes\x129\n" +
"\bextended\x18\x05 \x03(\v2\x1d.filer_pb.Entry.ExtendedEntryR\bextended\x12 \n" +
"\fhard_link_id\x18\a \x01(\fR\n" +
"hardLinkId\x12*\n" +
"\x11hard_link_counter\x18\b \x01(\x05R\x0fhardLinkCounter\x12\x18\n" +
"\acontent\x18\t \x01(\fR\acontent\x128\n" +
"\fremote_entry\x18\n" +
" \x01(\v2\x15.filer_pb.RemoteEntryR\vremoteEntry\x12\x14\n" +
"\x05quota\x18\v \x01(\x03R\x05quota\x122\n" +
"\x16worm_enforced_at_ts_ns\x18\f \x01(\x03R\x12wormEnforcedAtTsNs\x1a;\n" +
"\rExtendedEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\fR\x05value:\x028\x01\"D\n" +
"\tFullEntry\x12\x10\n" +
"\x03dir\x18\x01 \x01(\tR\x03dir\x12%\n" +
"\x05entry\x18\x02 \x01(\v2\x0f.filer_pb.EntryR\x05entry\"\x8f\x02\n" +
"\x11EventNotification\x12,\n" +
"\told_entry\x18\x01 \x01(\v2\x0f.filer_pb.EntryR\boldEntry\x12,\n" +
"\tnew_entry\x18\x02 \x01(\v2\x0f.filer_pb.EntryR\bnewEntry\x12#\n" +
"\rdelete_chunks\x18\x03 \x01(\bR\fdeleteChunks\x12&\n" +
"\x0fnew_parent_path\x18\x04 \x01(\tR\rnewParentPath\x121\n" +
"\x15is_from_other_cluster\x18\x05 \x01(\bR\x12isFromOtherCluster\x12\x1e\n" +
"\n" +
"signatures\x18\x06 \x03(\x05R\n" +
"signatures\"\xc7\x03\n" +
"\tFileChunk\x12\x17\n" +
"\afile_id\x18\x01 \x01(\tR\x06fileId\x12\x16\n" +
"\x06offset\x18\x02 \x01(\x03R\x06offset\x12\x12\n" +
"\x04size\x18\x03 \x01(\x04R\x04size\x12$\n" +
"\x0emodified_ts_ns\x18\x04 \x01(\x03R\fmodifiedTsNs\x12\x13\n" +
"\x05e_tag\x18\x05 \x01(\tR\x04eTag\x12$\n" +
"\x0esource_file_id\x18\x06 \x01(\tR\fsourceFileId\x12\"\n" +
"\x03fid\x18\a \x01(\v2\x10.filer_pb.FileIdR\x03fid\x12/\n" +
"\n" +
"source_fid\x18\b \x01(\v2\x10.filer_pb.FileIdR\tsourceFid\x12\x1d\n" +
"\n" +
"cipher_key\x18\t \x01(\fR\tcipherKey\x12#\n" +
"\ris_compressed\x18\n" +
" \x01(\bR\fisCompressed\x12*\n" +
"\x11is_chunk_manifest\x18\v \x01(\bR\x0fisChunkManifest\x12,\n" +
"\bsse_type\x18\f \x01(\x0e2\x11.filer_pb.SSETypeR\asseType\x12!\n" +
"\fsse_metadata\x18\r \x01(\fR\vsseMetadata\"@\n" +
"\x11FileChunkManifest\x12+\n" +
"\x06chunks\x18\x01 \x03(\v2\x13.filer_pb.FileChunkR\x06chunks\"X\n" +
"\x06FileId\x12\x1b\n" +
"\tvolume_id\x18\x01 \x01(\rR\bvolumeId\x12\x19\n" +
"\bfile_key\x18\x02 \x01(\x04R\afileKey\x12\x16\n" +
"\x06cookie\x18\x03 \x01(\aR\x06cookie\"\xfe\x02\n" +
"\x0eFuseAttributes\x12\x1b\n" +
"\tfile_size\x18\x01 \x01(\x04R\bfileSize\x12\x14\n" +
"\x05mtime\x18\x02 \x01(\x03R\x05mtime\x12\x1b\n" +
"\tfile_mode\x18\x03 \x01(\rR\bfileMode\x12\x10\n" +
"\x03uid\x18\x04 \x01(\rR\x03uid\x12\x10\n" +
"\x03gid\x18\x05 \x01(\rR\x03gid\x12\x16\n" +
"\x06crtime\x18\x06 \x01(\x03R\x06crtime\x12\x12\n" +
"\x04mime\x18\a \x01(\tR\x04mime\x12\x17\n" +
"\attl_sec\x18\n" +
" \x01(\x05R\x06ttlSec\x12\x1b\n" +
"\tuser_name\x18\v \x01(\tR\buserName\x12\x1d\n" +
"\n" +
"group_name\x18\f \x03(\tR\tgroupName\x12%\n" +
"\x0esymlink_target\x18\r \x01(\tR\rsymlinkTarget\x12\x10\n" +
"\x03md5\x18\x0e \x01(\fR\x03md5\x12\x12\n" +
"\x04rdev\x18\x10 \x01(\rR\x04rdev\x12\x14\n" +
"\x05inode\x18\x11 \x01(\x04R\x05inode\x12\x14\n" +
"\x05ctime\x18\x12 \x01(\x03R\x05ctime\"\x82\x02\n" +
"\x12CreateEntryRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12%\n" +
"\x05entry\x18\x02 \x01(\v2\x0f.filer_pb.EntryR\x05entry\x12\x15\n" +
"\x06o_excl\x18\x03 \x01(\bR\x05oExcl\x121\n" +
"\x15is_from_other_cluster\x18\x04 \x01(\bR\x12isFromOtherCluster\x12\x1e\n" +
"\n" +
"signatures\x18\x05 \x03(\x05R\n" +
"signatures\x12=\n" +
"\x1bskip_check_parent_directory\x18\x06 \x01(\bR\x18skipCheckParentDirectory\"\xac\x01\n" +
"\x13CreateEntryResponse\x12\x14\n" +
"\x05error\x18\x01 \x01(\tR\x05error\x12J\n" +
"\x0emetadata_event\x18\x02 \x01(\v2#.filer_pb.SubscribeMetadataResponseR\rmetadataEvent\x123\n" +
"\n" +
"error_code\x18\x03 \x01(\x0e2\x14.filer_pb.FilerErrorR\terrorCode\"\xd2\x02\n" +
"\x12UpdateEntryRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12%\n" +
"\x05entry\x18\x02 \x01(\v2\x0f.filer_pb.EntryR\x05entry\x121\n" +
"\x15is_from_other_cluster\x18\x03 \x01(\bR\x12isFromOtherCluster\x12\x1e\n" +
"\n" +
"signatures\x18\x04 \x03(\x05R\n" +
"signatures\x12_\n" +
"\x11expected_extended\x18\x05 \x03(\v22.filer_pb.UpdateEntryRequest.ExpectedExtendedEntryR\x10expectedExtended\x1aC\n" +
"\x15ExpectedExtendedEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\fR\x05value:\x028\x01\"a\n" +
"\x13UpdateEntryResponse\x12J\n" +
"\x0emetadata_event\x18\x01 \x01(\v2#.filer_pb.SubscribeMetadataResponseR\rmetadataEvent\"\x80\x01\n" +
"\x14AppendToEntryRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12\x1d\n" +
"\n" +
"entry_name\x18\x02 \x01(\tR\tentryName\x12+\n" +
"\x06chunks\x18\x03 \x03(\v2\x13.filer_pb.FileChunkR\x06chunks\"\x17\n" +
"\x15AppendToEntryResponse\"\xcb\x02\n" +
"\x12DeleteEntryRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12\x12\n" +
"\x04name\x18\x02 \x01(\tR\x04name\x12$\n" +
"\x0eis_delete_data\x18\x04 \x01(\bR\fisDeleteData\x12!\n" +
"\fis_recursive\x18\x05 \x01(\bR\visRecursive\x124\n" +
"\x16ignore_recursive_error\x18\x06 \x01(\bR\x14ignoreRecursiveError\x121\n" +
"\x15is_from_other_cluster\x18\a \x01(\bR\x12isFromOtherCluster\x12\x1e\n" +
"\n" +
"signatures\x18\b \x03(\x05R\n" +
"signatures\x121\n" +
"\x15if_not_modified_after\x18\t \x01(\x03R\x12ifNotModifiedAfter\"w\n" +
"\x13DeleteEntryResponse\x12\x14\n" +
"\x05error\x18\x01 \x01(\tR\x05error\x12J\n" +
"\x0emetadata_event\x18\x02 \x01(\v2#.filer_pb.SubscribeMetadataResponseR\rmetadataEvent\"\xba\x01\n" +
"\x18AtomicRenameEntryRequest\x12#\n" +
"\rold_directory\x18\x01 \x01(\tR\foldDirectory\x12\x19\n" +
"\bold_name\x18\x02 \x01(\tR\aoldName\x12#\n" +
"\rnew_directory\x18\x03 \x01(\tR\fnewDirectory\x12\x19\n" +
"\bnew_name\x18\x04 \x01(\tR\anewName\x12\x1e\n" +
"\n" +
"signatures\x18\x05 \x03(\x05R\n" +
"signatures\"\x1b\n" +
"\x19AtomicRenameEntryResponse\"\xba\x01\n" +
"\x18StreamRenameEntryRequest\x12#\n" +
"\rold_directory\x18\x01 \x01(\tR\foldDirectory\x12\x19\n" +
"\bold_name\x18\x02 \x01(\tR\aoldName\x12#\n" +
"\rnew_directory\x18\x03 \x01(\tR\fnewDirectory\x12\x19\n" +
"\bnew_name\x18\x04 \x01(\tR\anewName\x12\x1e\n" +
"\n" +
"signatures\x18\x05 \x03(\x05R\n" +
"signatures\"\x9a\x01\n" +
"\x19StreamRenameEntryResponse\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12J\n" +
"\x12event_notification\x18\x02 \x01(\v2\x1b.filer_pb.EventNotificationR\x11eventNotification\x12\x13\n" +
"\x05ts_ns\x18\x03 \x01(\x03R\x04tsNs\"\x89\x02\n" +
"\x13AssignVolumeRequest\x12\x14\n" +
"\x05count\x18\x01 \x01(\x05R\x05count\x12\x1e\n" +
"\n" +
"collection\x18\x02 \x01(\tR\n" +
"collection\x12 \n" +
"\vreplication\x18\x03 \x01(\tR\vreplication\x12\x17\n" +
"\attl_sec\x18\x04 \x01(\x05R\x06ttlSec\x12\x1f\n" +
"\vdata_center\x18\x05 \x01(\tR\n" +
"dataCenter\x12\x12\n" +
"\x04path\x18\x06 \x01(\tR\x04path\x12\x12\n" +
"\x04rack\x18\a \x01(\tR\x04rack\x12\x1b\n" +
"\tdata_node\x18\t \x01(\tR\bdataNode\x12\x1b\n" +
"\tdisk_type\x18\b \x01(\tR\bdiskType\"\xe1\x01\n" +
"\x14AssignVolumeResponse\x12\x17\n" +
"\afile_id\x18\x01 \x01(\tR\x06fileId\x12\x14\n" +
"\x05count\x18\x04 \x01(\x05R\x05count\x12\x12\n" +
"\x04auth\x18\x05 \x01(\tR\x04auth\x12\x1e\n" +
"\n" +
"collection\x18\x06 \x01(\tR\n" +
"collection\x12 \n" +
"\vreplication\x18\a \x01(\tR\vreplication\x12\x14\n" +
"\x05error\x18\b \x01(\tR\x05error\x12.\n" +
"\blocation\x18\t \x01(\v2\x12.filer_pb.LocationR\blocation\"4\n" +
"\x13LookupVolumeRequest\x12\x1d\n" +
"\n" +
"volume_ids\x18\x01 \x03(\tR\tvolumeIds\"=\n" +
"\tLocations\x120\n" +
"\tlocations\x18\x01 \x03(\v2\x12.filer_pb.LocationR\tlocations\"y\n" +
"\bLocation\x12\x10\n" +
"\x03url\x18\x01 \x01(\tR\x03url\x12\x1d\n" +
"\n" +
"public_url\x18\x02 \x01(\tR\tpublicUrl\x12\x1b\n" +
"\tgrpc_port\x18\x03 \x01(\rR\bgrpcPort\x12\x1f\n" +
"\vdata_center\x18\x04 \x01(\tR\n" +
"dataCenter\"\xc3\x01\n" +
"\x14LookupVolumeResponse\x12U\n" +
"\rlocations_map\x18\x01 \x03(\v20.filer_pb.LookupVolumeResponse.LocationsMapEntryR\flocationsMap\x1aT\n" +
"\x11LocationsMapEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12)\n" +
"\x05value\x18\x02 \x01(\v2\x13.filer_pb.LocationsR\x05value:\x028\x01\" \n" +
"\n" +
"Collection\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"{\n" +
"\x15CollectionListRequest\x124\n" +
"\x16include_normal_volumes\x18\x01 \x01(\bR\x14includeNormalVolumes\x12,\n" +
"\x12include_ec_volumes\x18\x02 \x01(\bR\x10includeEcVolumes\"P\n" +
"\x16CollectionListResponse\x126\n" +
"\vcollections\x18\x01 \x03(\v2\x14.filer_pb.CollectionR\vcollections\"9\n" +
"\x17DeleteCollectionRequest\x12\x1e\n" +
"\n" +
"collection\x18\x01 \x01(\tR\n" +
"collection\"\x1a\n" +
"\x18DeleteCollectionResponse\"\x84\x01\n" +
"\x11StatisticsRequest\x12 \n" +
"\vreplication\x18\x01 \x01(\tR\vreplication\x12\x1e\n" +
"\n" +
"collection\x18\x02 \x01(\tR\n" +
"collection\x12\x10\n" +
"\x03ttl\x18\x03 \x01(\tR\x03ttl\x12\x1b\n" +
"\tdisk_type\x18\x04 \x01(\tR\bdiskType\"o\n" +
"\x12StatisticsResponse\x12\x1d\n" +
"\n" +
"total_size\x18\x04 \x01(\x04R\ttotalSize\x12\x1b\n" +
"\tused_size\x18\x05 \x01(\x04R\busedSize\x12\x1d\n" +
"\n" +
"file_count\x18\x06 \x01(\x04R\tfileCount\"F\n" +
"\vPingRequest\x12\x16\n" +
"\x06target\x18\x01 \x01(\tR\x06target\x12\x1f\n" +
"\vtarget_type\x18\x02 \x01(\tR\n" +
"targetType\"z\n" +
"\fPingResponse\x12\"\n" +
"\rstart_time_ns\x18\x01 \x01(\x03R\vstartTimeNs\x12$\n" +
"\x0eremote_time_ns\x18\x02 \x01(\x03R\fremoteTimeNs\x12 \n" +
"\fstop_time_ns\x18\x03 \x01(\x03R\n" +
"stopTimeNs\"\x1e\n" +
"\x1cGetFilerConfigurationRequest\"\xe8\x03\n" +
"\x1dGetFilerConfigurationResponse\x12\x18\n" +
"\amasters\x18\x01 \x03(\tR\amasters\x12 \n" +
"\vreplication\x18\x02 \x01(\tR\vreplication\x12\x1e\n" +
"\n" +
"collection\x18\x03 \x01(\tR\n" +
"collection\x12\x15\n" +
"\x06max_mb\x18\x04 \x01(\rR\x05maxMb\x12\x1f\n" +
"\vdir_buckets\x18\x05 \x01(\tR\n" +
"dirBuckets\x12\x16\n" +
"\x06cipher\x18\a \x01(\bR\x06cipher\x12\x1c\n" +
"\tsignature\x18\b \x01(\x05R\tsignature\x12'\n" +
"\x0fmetrics_address\x18\t \x01(\tR\x0emetricsAddress\x120\n" +
"\x14metrics_interval_sec\x18\n" +
" \x01(\x05R\x12metricsIntervalSec\x12\x18\n" +
"\aversion\x18\v \x01(\tR\aversion\x12\x1d\n" +
"\n" +
"cluster_id\x18\f \x01(\tR\tclusterId\x12\x1f\n" +
"\vfiler_group\x18\r \x01(\tR\n" +
"filerGroup\x12#\n" +
"\rmajor_version\x18\x0e \x01(\x05R\fmajorVersion\x12#\n" +
"\rminor_version\x18\x0f \x01(\x05R\fminorVersion\"\xb8\x03\n" +
"\x18SubscribeMetadataRequest\x12\x1f\n" +
"\vclient_name\x18\x01 \x01(\tR\n" +
"clientName\x12\x1f\n" +
"\vpath_prefix\x18\x02 \x01(\tR\n" +
"pathPrefix\x12\x19\n" +
"\bsince_ns\x18\x03 \x01(\x03R\asinceNs\x12\x1c\n" +
"\tsignature\x18\x04 \x01(\x05R\tsignature\x12#\n" +
"\rpath_prefixes\x18\x06 \x03(\tR\fpathPrefixes\x12\x1b\n" +
"\tclient_id\x18\a \x01(\x05R\bclientId\x12\x19\n" +
"\buntil_ns\x18\b \x01(\x03R\auntilNs\x12!\n" +
"\fclient_epoch\x18\t \x01(\x05R\vclientEpoch\x12 \n" +
"\vdirectories\x18\n" +
" \x03(\tR\vdirectories\x128\n" +
"\x18client_supports_batching\x18\v \x01(\bR\x16clientSupportsBatching\x12E\n" +
"\x1fclient_supports_metadata_chunks\x18\f \x01(\bR\x1cclientSupportsMetadataChunks\"\x96\x02\n" +
"\x19SubscribeMetadataResponse\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12J\n" +
"\x12event_notification\x18\x02 \x01(\v2\x1b.filer_pb.EventNotificationR\x11eventNotification\x12\x13\n" +
"\x05ts_ns\x18\x03 \x01(\x03R\x04tsNs\x12;\n" +
"\x06events\x18\x04 \x03(\v2#.filer_pb.SubscribeMetadataResponseR\x06events\x12=\n" +
"\rlog_file_refs\x18\x05 \x03(\v2\x19.filer_pb.LogFileChunkRefR\vlogFileRefs\"w\n" +
"\x0fLogFileChunkRef\x12+\n" +
"\x06chunks\x18\x01 \x03(\v2\x13.filer_pb.FileChunkR\x06chunks\x12\x1c\n" +
"\n" +
"file_ts_ns\x18\x02 \x01(\x03R\bfileTsNs\x12\x19\n" +
"\bfiler_id\x18\x03 \x01(\tR\afilerId\"g\n" +
"\x1aTraverseBfsMetadataRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12+\n" +
"\x11excluded_prefixes\x18\x02 \x03(\tR\x10excludedPrefixes\"b\n" +
"\x1bTraverseBfsMetadataResponse\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12%\n" +
"\x05entry\x18\x02 \x01(\v2\x0f.filer_pb.EntryR\x05entry\"\x8b\x01\n" +
"\bLogEntry\x12\x13\n" +
"\x05ts_ns\x18\x01 \x01(\x03R\x04tsNs\x12,\n" +
"\x12partition_key_hash\x18\x02 \x01(\x05R\x10partitionKeyHash\x12\x12\n" +
"\x04data\x18\x03 \x01(\fR\x04data\x12\x10\n" +
"\x03key\x18\x04 \x01(\fR\x03key\x12\x16\n" +
"\x06offset\x18\x05 \x01(\x03R\x06offset\"e\n" +
"\x14KeepConnectedRequest\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x1b\n" +
"\tgrpc_port\x18\x02 \x01(\rR\bgrpcPort\x12\x1c\n" +
"\tresources\x18\x03 \x03(\tR\tresources\"\x17\n" +
"\x15KeepConnectedResponse\"1\n" +
"\x13LocateBrokerRequest\x12\x1a\n" +
"\bresource\x18\x01 \x01(\tR\bresource\"\xcd\x01\n" +
"\x14LocateBrokerResponse\x12\x14\n" +
"\x05found\x18\x01 \x01(\bR\x05found\x12E\n" +
"\tresources\x18\x02 \x03(\v2'.filer_pb.LocateBrokerResponse.ResourceR\tresources\x1aX\n" +
"\bResource\x12%\n" +
"\x0egrpc_addresses\x18\x01 \x01(\tR\rgrpcAddresses\x12%\n" +
"\x0eresource_count\x18\x02 \x01(\x05R\rresourceCount\" \n" +
"\fKvGetRequest\x12\x10\n" +
"\x03key\x18\x01 \x01(\fR\x03key\";\n" +
"\rKvGetResponse\x12\x14\n" +
"\x05value\x18\x01 \x01(\fR\x05value\x12\x14\n" +
"\x05error\x18\x02 \x01(\tR\x05error\"6\n" +
"\fKvPutRequest\x12\x10\n" +
"\x03key\x18\x01 \x01(\fR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\fR\x05value\"%\n" +
"\rKvPutResponse\x12\x14\n" +
"\x05error\x18\x01 \x01(\tR\x05error\"\xb2\x05\n" +
"\tFilerConf\x12\x18\n" +
"\aversion\x18\x01 \x01(\x05R\aversion\x12:\n" +
"\tlocations\x18\x02 \x03(\v2\x1c.filer_pb.FilerConf.PathConfR\tlocations\x1a\xce\x04\n" +
"\bPathConf\x12'\n" +
"\x0flocation_prefix\x18\x01 \x01(\tR\x0elocationPrefix\x12\x1e\n" +
"\n" +
"collection\x18\x02 \x01(\tR\n" +
"collection\x12 \n" +
"\vreplication\x18\x03 \x01(\tR\vreplication\x12\x10\n" +
"\x03ttl\x18\x04 \x01(\tR\x03ttl\x12\x1b\n" +
"\tdisk_type\x18\x05 \x01(\tR\bdiskType\x12\x14\n" +
"\x05fsync\x18\x06 \x01(\bR\x05fsync\x12.\n" +
"\x13volume_growth_count\x18\a \x01(\rR\x11volumeGrowthCount\x12\x1b\n" +
"\tread_only\x18\b \x01(\bR\breadOnly\x12\x1f\n" +
"\vdata_center\x18\t \x01(\tR\n" +
"dataCenter\x12\x12\n" +
"\x04rack\x18\n" +
" \x01(\tR\x04rack\x12\x1b\n" +
"\tdata_node\x18\v \x01(\tR\bdataNode\x12/\n" +
"\x14max_file_name_length\x18\f \x01(\rR\x11maxFileNameLength\x124\n" +
"\x16disable_chunk_deletion\x18\r \x01(\bR\x14disableChunkDeletion\x12\x12\n" +
"\x04worm\x18\x0e \x01(\bR\x04worm\x129\n" +
"\x19worm_grace_period_seconds\x18\x0f \x01(\x04R\x16wormGracePeriodSeconds\x12=\n" +
"\x1bworm_retention_time_seconds\x18\x10 \x01(\x04R\x18wormRetentionTimeSeconds\"\xba\x01\n" +
"&CacheRemoteObjectToLocalClusterRequest\x12\x1c\n" +
"\tdirectory\x18\x01 \x01(\tR\tdirectory\x12\x12\n" +
"\x04name\x18\x02 \x01(\tR\x04name\x12+\n" +
"\x11chunk_concurrency\x18\x03 \x01(\x05R\x10chunkConcurrency\x121\n" +
"\x14download_concurrency\x18\x04 \x01(\x05R\x13downloadConcurrency\"\x9c\x01\n" +
"'CacheRemoteObjectToLocalClusterResponse\x12%\n" +
"\x05entry\x18\x01 \x01(\v2\x0f.filer_pb.EntryR\x05entry\x12J\n" +
"\x0emetadata_event\x18\x02 \x01(\v2#.filer_pb.SubscribeMetadataResponseR\rmetadataEvent\"\x9b\x01\n" +
"\vLockRequest\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12&\n" +
"\x0fseconds_to_lock\x18\x02 \x01(\x03R\rsecondsToLock\x12\x1f\n" +
"\vrenew_token\x18\x03 \x01(\tR\n" +
"renewToken\x12\x19\n" +
"\bis_moved\x18\x04 \x01(\bR\aisMoved\x12\x14\n" +
"\x05owner\x18\x05 \x01(\tR\x05owner\"\xb1\x01\n" +
"\fLockResponse\x12\x1f\n" +
"\vrenew_token\x18\x01 \x01(\tR\n" +
"renewToken\x12\x1d\n" +
"\n" +
"lock_owner\x18\x02 \x01(\tR\tlockOwner\x12+\n" +
"\x12lock_host_moved_to\x18\x03 \x01(\tR\x0flockHostMovedTo\x12\x14\n" +
"\x05error\x18\x04 \x01(\tR\x05error\x12\x1e\n" +
"\n" +
"generation\x18\x05 \x01(\x03R\n" +
"generation\"_\n" +
"\rUnlockRequest\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x1f\n" +
"\vrenew_token\x18\x02 \x01(\tR\n" +
"renewToken\x12\x19\n" +
"\bis_moved\x18\x03 \x01(\bR\aisMoved\"A\n" +
"\x0eUnlockResponse\x12\x14\n" +
"\x05error\x18\x01 \x01(\tR\x05error\x12\x19\n" +
"\bmoved_to\x18\x02 \x01(\tR\amovedTo\"E\n" +
"\x14FindLockOwnerRequest\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x19\n" +
"\bis_moved\x18\x02 \x01(\bR\aisMoved\"-\n" +
"\x15FindLockOwnerResponse\x12\x14\n" +
"\x05owner\x18\x01 \x01(\tR\x05owner\"\xc4\x01\n" +
"\x04Lock\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x1f\n" +
"\vrenew_token\x18\x02 \x01(\tR\n" +
"renewToken\x12\"\n" +
"\rexpired_at_ns\x18\x03 \x01(\x03R\vexpiredAtNs\x12\x14\n" +
"\x05owner\x18\x04 \x01(\tR\x05owner\x12\x1e\n" +
"\n" +
"generation\x18\x05 \x01(\x03R\n" +
"generation\x12\x1b\n" +
"\tis_backup\x18\x06 \x01(\bR\bisBackup\x12\x10\n" +
"\x03seq\x18\a \x01(\x03R\x03seq\"<\n" +
"\x14TransferLocksRequest\x12$\n" +
"\x05locks\x18\x01 \x03(\v2\x0e.filer_pb.LockR\x05locks\"\x17\n" +
"\x15TransferLocksResponse\"\xd4\x01\n" +
"\x14ReplicateLockRequest\x12\x12\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x1f\n" +
"\vrenew_token\x18\x02 \x01(\tR\n" +
"renewToken\x12\"\n" +
"\rexpired_at_ns\x18\x03 \x01(\x03R\vexpiredAtNs\x12\x14\n" +
"\x05owner\x18\x04 \x01(\tR\x05owner\x12\x1e\n" +
"\n" +
"generation\x18\x05 \x01(\x03R\n" +
"generation\x12\x1b\n" +
"\tis_unlock\x18\x06 \x01(\bR\bisUnlock\x12\x10\n" +
"\x03seq\x18\a \x01(\x03R\x03seq\"\x17\n" +
"\x15ReplicateLockResponse\"\xe6\x02\n" +
"\x18StreamMutateEntryRequest\x12\x1d\n" +
"\n" +
"request_id\x18\x01 \x01(\x04R\trequestId\x12E\n" +
"\x0ecreate_request\x18\x02 \x01(\v2\x1c.filer_pb.CreateEntryRequestH\x00R\rcreateRequest\x12E\n" +
"\x0eupdate_request\x18\x03 \x01(\v2\x1c.filer_pb.UpdateEntryRequestH\x00R\rupdateRequest\x12E\n" +
"\x0edelete_request\x18\x04 \x01(\v2\x1c.filer_pb.DeleteEntryRequestH\x00R\rdeleteRequest\x12K\n" +
"\x0erename_request\x18\x05 \x01(\v2\".filer_pb.StreamRenameEntryRequestH\x00R\rrenameRequestB\t\n" +
"\arequest\"\xb9\x03\n" +
"\x19StreamMutateEntryResponse\x12\x1d\n" +
"\n" +
"request_id\x18\x01 \x01(\x04R\trequestId\x12\x17\n" +
"\ais_last\x18\x02 \x01(\bR\x06isLast\x12H\n" +
"\x0fcreate_response\x18\x03 \x01(\v2\x1d.filer_pb.CreateEntryResponseH\x00R\x0ecreateResponse\x12H\n" +
"\x0fupdate_response\x18\x04 \x01(\v2\x1d.filer_pb.UpdateEntryResponseH\x00R\x0eupdateResponse\x12H\n" +
"\x0fdelete_response\x18\x05 \x01(\v2\x1d.filer_pb.DeleteEntryResponseH\x00R\x0edeleteResponse\x12N\n" +
"\x0frename_response\x18\x06 \x01(\v2#.filer_pb.StreamRenameEntryResponseH\x00R\x0erenameResponse\x12\x14\n" +
"\x05error\x18\a \x01(\tR\x05error\x12\x14\n" +
"\x05errno\x18\b \x01(\x05R\x05errnoB\n" +
"\n" +
"\bresponse*7\n" +
"\aSSEType\x12\b\n" +
"\x04NONE\x10\x00\x12\t\n" +
"\x05SSE_C\x10\x01\x12\v\n" +
"\aSSE_KMS\x10\x02\x12\n" +
"\n" +
"\x06SSE_S3\x10\x03*\x8c\x01\n" +
"\n" +
"FilerError\x12\x06\n" +
"\x02OK\x10\x00\x12\x17\n" +
"\x13ENTRY_NAME_TOO_LONG\x10\x01\x12\x12\n" +
"\x0ePARENT_IS_FILE\x10\x02\x12\x19\n" +
"\x15EXISTING_IS_DIRECTORY\x10\x03\x12\x14\n" +
"\x10EXISTING_IS_FILE\x10\x04\x12\x18\n" +
"\x14ENTRY_ALREADY_EXISTS\x10\x052\xaf\x12\n" +
"\fSeaweedFiler\x12g\n" +
"\x14LookupDirectoryEntry\x12%.filer_pb.LookupDirectoryEntryRequest\x1a&.filer_pb.LookupDirectoryEntryResponse\"\x00\x12N\n" +
"\vListEntries\x12\x1c.filer_pb.ListEntriesRequest\x1a\x1d.filer_pb.ListEntriesResponse\"\x000\x01\x12L\n" +
"\vCreateEntry\x12\x1c.filer_pb.CreateEntryRequest\x1a\x1d.filer_pb.CreateEntryResponse\"\x00\x12L\n" +
"\vUpdateEntry\x12\x1c.filer_pb.UpdateEntryRequest\x1a\x1d.filer_pb.UpdateEntryResponse\"\x00\x12R\n" +
"\rAppendToEntry\x12\x1e.filer_pb.AppendToEntryRequest\x1a\x1f.filer_pb.AppendToEntryResponse\"\x00\x12L\n" +
"\vDeleteEntry\x12\x1c.filer_pb.DeleteEntryRequest\x1a\x1d.filer_pb.DeleteEntryResponse\"\x00\x12^\n" +
"\x11AtomicRenameEntry\x12\".filer_pb.AtomicRenameEntryRequest\x1a#.filer_pb.AtomicRenameEntryResponse\"\x00\x12`\n" +
"\x11StreamRenameEntry\x12\".filer_pb.StreamRenameEntryRequest\x1a#.filer_pb.StreamRenameEntryResponse\"\x000\x01\x12b\n" +
"\x11StreamMutateEntry\x12\".filer_pb.StreamMutateEntryRequest\x1a#.filer_pb.StreamMutateEntryResponse\"\x00(\x010\x01\x12O\n" +
"\fAssignVolume\x12\x1d.filer_pb.AssignVolumeRequest\x1a\x1e.filer_pb.AssignVolumeResponse\"\x00\x12O\n" +
"\fLookupVolume\x12\x1d.filer_pb.LookupVolumeRequest\x1a\x1e.filer_pb.LookupVolumeResponse\"\x00\x12U\n" +
"\x0eCollectionList\x12\x1f.filer_pb.CollectionListRequest\x1a .filer_pb.CollectionListResponse\"\x00\x12[\n" +
"\x10DeleteCollection\x12!.filer_pb.DeleteCollectionRequest\x1a\".filer_pb.DeleteCollectionResponse\"\x00\x12I\n" +
"\n" +
"Statistics\x12\x1b.filer_pb.StatisticsRequest\x1a\x1c.filer_pb.StatisticsResponse\"\x00\x127\n" +
"\x04Ping\x12\x15.filer_pb.PingRequest\x1a\x16.filer_pb.PingResponse\"\x00\x12j\n" +
"\x15GetFilerConfiguration\x12&.filer_pb.GetFilerConfigurationRequest\x1a'.filer_pb.GetFilerConfigurationResponse\"\x00\x12f\n" +
"\x13TraverseBfsMetadata\x12$.filer_pb.TraverseBfsMetadataRequest\x1a%.filer_pb.TraverseBfsMetadataResponse\"\x000\x01\x12`\n" +
"\x11SubscribeMetadata\x12\".filer_pb.SubscribeMetadataRequest\x1a#.filer_pb.SubscribeMetadataResponse\"\x000\x01\x12e\n" +
"\x16SubscribeLocalMetadata\x12\".filer_pb.SubscribeMetadataRequest\x1a#.filer_pb.SubscribeMetadataResponse\"\x000\x01\x12:\n" +
"\x05KvGet\x12\x16.filer_pb.KvGetRequest\x1a\x17.filer_pb.KvGetResponse\"\x00\x12:\n" +
"\x05KvPut\x12\x16.filer_pb.KvPutRequest\x1a\x17.filer_pb.KvPutResponse\"\x00\x12\x88\x01\n" +
"\x1fCacheRemoteObjectToLocalCluster\x120.filer_pb.CacheRemoteObjectToLocalClusterRequest\x1a1.filer_pb.CacheRemoteObjectToLocalClusterResponse\"\x00\x12B\n" +
"\x0fDistributedLock\x12\x15.filer_pb.LockRequest\x1a\x16.filer_pb.LockResponse\"\x00\x12H\n" +
"\x11DistributedUnlock\x12\x17.filer_pb.UnlockRequest\x1a\x18.filer_pb.UnlockResponse\"\x00\x12R\n" +
"\rFindLockOwner\x12\x1e.filer_pb.FindLockOwnerRequest\x1a\x1f.filer_pb.FindLockOwnerResponse\"\x00\x12R\n" +
"\rTransferLocks\x12\x1e.filer_pb.TransferLocksRequest\x1a\x1f.filer_pb.TransferLocksResponse\"\x00\x12R\n" +
"\rReplicateLock\x12\x1e.filer_pb.ReplicateLockRequest\x1a\x1f.filer_pb.ReplicateLockResponse\"\x00BO\n" +
"\x10seaweedfs.clientB\n" +
"FilerProtoZ/github.com/seaweedfs/seaweedfs/weed/pb/filer_pbb\x06proto3"
var (
file_filer_proto_rawDescOnce sync.Once
file_filer_proto_rawDescData []byte
)
func file_filer_proto_rawDescGZIP() []byte {
file_filer_proto_rawDescOnce.Do(func() {
file_filer_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_filer_proto_rawDesc), len(file_filer_proto_rawDesc)))
})
return file_filer_proto_rawDescData
}
var file_filer_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_filer_proto_msgTypes = make([]protoimpl.MessageInfo, 76)
var file_filer_proto_goTypes = []any{
(SSEType)(0), // 0: filer_pb.SSEType
(FilerError)(0), // 1: filer_pb.FilerError
(*LookupDirectoryEntryRequest)(nil), // 2: filer_pb.LookupDirectoryEntryRequest
(*LookupDirectoryEntryResponse)(nil), // 3: filer_pb.LookupDirectoryEntryResponse
(*ListEntriesRequest)(nil), // 4: filer_pb.ListEntriesRequest
(*ListEntriesResponse)(nil), // 5: filer_pb.ListEntriesResponse
(*RemoteEntry)(nil), // 6: filer_pb.RemoteEntry
(*Entry)(nil), // 7: filer_pb.Entry
(*FullEntry)(nil), // 8: filer_pb.FullEntry
(*EventNotification)(nil), // 9: filer_pb.EventNotification
(*FileChunk)(nil), // 10: filer_pb.FileChunk
(*FileChunkManifest)(nil), // 11: filer_pb.FileChunkManifest
(*FileId)(nil), // 12: filer_pb.FileId
(*FuseAttributes)(nil), // 13: filer_pb.FuseAttributes
(*CreateEntryRequest)(nil), // 14: filer_pb.CreateEntryRequest
(*CreateEntryResponse)(nil), // 15: filer_pb.CreateEntryResponse
(*UpdateEntryRequest)(nil), // 16: filer_pb.UpdateEntryRequest
(*UpdateEntryResponse)(nil), // 17: filer_pb.UpdateEntryResponse
(*AppendToEntryRequest)(nil), // 18: filer_pb.AppendToEntryRequest
(*AppendToEntryResponse)(nil), // 19: filer_pb.AppendToEntryResponse
(*DeleteEntryRequest)(nil), // 20: filer_pb.DeleteEntryRequest
(*DeleteEntryResponse)(nil), // 21: filer_pb.DeleteEntryResponse
(*AtomicRenameEntryRequest)(nil), // 22: filer_pb.AtomicRenameEntryRequest
(*AtomicRenameEntryResponse)(nil), // 23: filer_pb.AtomicRenameEntryResponse
(*StreamRenameEntryRequest)(nil), // 24: filer_pb.StreamRenameEntryRequest
(*StreamRenameEntryResponse)(nil), // 25: filer_pb.StreamRenameEntryResponse
(*AssignVolumeRequest)(nil), // 26: filer_pb.AssignVolumeRequest
(*AssignVolumeResponse)(nil), // 27: filer_pb.AssignVolumeResponse
(*LookupVolumeRequest)(nil), // 28: filer_pb.LookupVolumeRequest
(*Locations)(nil), // 29: filer_pb.Locations
(*Location)(nil), // 30: filer_pb.Location
(*LookupVolumeResponse)(nil), // 31: filer_pb.LookupVolumeResponse
(*Collection)(nil), // 32: filer_pb.Collection
(*CollectionListRequest)(nil), // 33: filer_pb.CollectionListRequest
(*CollectionListResponse)(nil), // 34: filer_pb.CollectionListResponse
(*DeleteCollectionRequest)(nil), // 35: filer_pb.DeleteCollectionRequest
(*DeleteCollectionResponse)(nil), // 36: filer_pb.DeleteCollectionResponse
(*StatisticsRequest)(nil), // 37: filer_pb.StatisticsRequest
(*StatisticsResponse)(nil), // 38: filer_pb.StatisticsResponse
(*PingRequest)(nil), // 39: filer_pb.PingRequest
(*PingResponse)(nil), // 40: filer_pb.PingResponse
(*GetFilerConfigurationRequest)(nil), // 41: filer_pb.GetFilerConfigurationRequest
(*GetFilerConfigurationResponse)(nil), // 42: filer_pb.GetFilerConfigurationResponse
(*SubscribeMetadataRequest)(nil), // 43: filer_pb.SubscribeMetadataRequest
(*SubscribeMetadataResponse)(nil), // 44: filer_pb.SubscribeMetadataResponse
(*LogFileChunkRef)(nil), // 45: filer_pb.LogFileChunkRef
(*TraverseBfsMetadataRequest)(nil), // 46: filer_pb.TraverseBfsMetadataRequest
(*TraverseBfsMetadataResponse)(nil), // 47: filer_pb.TraverseBfsMetadataResponse
(*LogEntry)(nil), // 48: filer_pb.LogEntry
(*KeepConnectedRequest)(nil), // 49: filer_pb.KeepConnectedRequest
(*KeepConnectedResponse)(nil), // 50: filer_pb.KeepConnectedResponse
(*LocateBrokerRequest)(nil), // 51: filer_pb.LocateBrokerRequest
(*LocateBrokerResponse)(nil), // 52: filer_pb.LocateBrokerResponse
(*KvGetRequest)(nil), // 53: filer_pb.KvGetRequest
(*KvGetResponse)(nil), // 54: filer_pb.KvGetResponse
(*KvPutRequest)(nil), // 55: filer_pb.KvPutRequest
(*KvPutResponse)(nil), // 56: filer_pb.KvPutResponse
(*FilerConf)(nil), // 57: filer_pb.FilerConf
(*CacheRemoteObjectToLocalClusterRequest)(nil), // 58: filer_pb.CacheRemoteObjectToLocalClusterRequest
(*CacheRemoteObjectToLocalClusterResponse)(nil), // 59: filer_pb.CacheRemoteObjectToLocalClusterResponse
(*LockRequest)(nil), // 60: filer_pb.LockRequest
(*LockResponse)(nil), // 61: filer_pb.LockResponse
(*UnlockRequest)(nil), // 62: filer_pb.UnlockRequest
(*UnlockResponse)(nil), // 63: filer_pb.UnlockResponse
(*FindLockOwnerRequest)(nil), // 64: filer_pb.FindLockOwnerRequest
(*FindLockOwnerResponse)(nil), // 65: filer_pb.FindLockOwnerResponse
(*Lock)(nil), // 66: filer_pb.Lock
(*TransferLocksRequest)(nil), // 67: filer_pb.TransferLocksRequest
(*TransferLocksResponse)(nil), // 68: filer_pb.TransferLocksResponse
(*ReplicateLockRequest)(nil), // 69: filer_pb.ReplicateLockRequest
(*ReplicateLockResponse)(nil), // 70: filer_pb.ReplicateLockResponse
(*StreamMutateEntryRequest)(nil), // 71: filer_pb.StreamMutateEntryRequest
(*StreamMutateEntryResponse)(nil), // 72: filer_pb.StreamMutateEntryResponse
nil, // 73: filer_pb.Entry.ExtendedEntry
nil, // 74: filer_pb.UpdateEntryRequest.ExpectedExtendedEntry
nil, // 75: filer_pb.LookupVolumeResponse.LocationsMapEntry
(*LocateBrokerResponse_Resource)(nil), // 76: filer_pb.LocateBrokerResponse.Resource
(*FilerConf_PathConf)(nil), // 77: filer_pb.FilerConf.PathConf
}
var file_filer_proto_depIdxs = []int32{
7, // 0: filer_pb.LookupDirectoryEntryResponse.entry:type_name -> filer_pb.Entry
7, // 1: filer_pb.ListEntriesResponse.entry:type_name -> filer_pb.Entry
10, // 2: filer_pb.Entry.chunks:type_name -> filer_pb.FileChunk
13, // 3: filer_pb.Entry.attributes:type_name -> filer_pb.FuseAttributes
73, // 4: filer_pb.Entry.extended:type_name -> filer_pb.Entry.ExtendedEntry
6, // 5: filer_pb.Entry.remote_entry:type_name -> filer_pb.RemoteEntry
7, // 6: filer_pb.FullEntry.entry:type_name -> filer_pb.Entry
7, // 7: filer_pb.EventNotification.old_entry:type_name -> filer_pb.Entry
7, // 8: filer_pb.EventNotification.new_entry:type_name -> filer_pb.Entry
12, // 9: filer_pb.FileChunk.fid:type_name -> filer_pb.FileId
12, // 10: filer_pb.FileChunk.source_fid:type_name -> filer_pb.FileId
0, // 11: filer_pb.FileChunk.sse_type:type_name -> filer_pb.SSEType
10, // 12: filer_pb.FileChunkManifest.chunks:type_name -> filer_pb.FileChunk
7, // 13: filer_pb.CreateEntryRequest.entry:type_name -> filer_pb.Entry
44, // 14: filer_pb.CreateEntryResponse.metadata_event:type_name -> filer_pb.SubscribeMetadataResponse
1, // 15: filer_pb.CreateEntryResponse.error_code:type_name -> filer_pb.FilerError
7, // 16: filer_pb.UpdateEntryRequest.entry:type_name -> filer_pb.Entry
74, // 17: filer_pb.UpdateEntryRequest.expected_extended:type_name -> filer_pb.UpdateEntryRequest.ExpectedExtendedEntry
44, // 18: filer_pb.UpdateEntryResponse.metadata_event:type_name -> filer_pb.SubscribeMetadataResponse
10, // 19: filer_pb.AppendToEntryRequest.chunks:type_name -> filer_pb.FileChunk
44, // 20: filer_pb.DeleteEntryResponse.metadata_event:type_name -> filer_pb.SubscribeMetadataResponse
9, // 21: filer_pb.StreamRenameEntryResponse.event_notification:type_name -> filer_pb.EventNotification
30, // 22: filer_pb.AssignVolumeResponse.location:type_name -> filer_pb.Location
30, // 23: filer_pb.Locations.locations:type_name -> filer_pb.Location
75, // 24: filer_pb.LookupVolumeResponse.locations_map:type_name -> filer_pb.LookupVolumeResponse.LocationsMapEntry
32, // 25: filer_pb.CollectionListResponse.collections:type_name -> filer_pb.Collection
9, // 26: filer_pb.SubscribeMetadataResponse.event_notification:type_name -> filer_pb.EventNotification
44, // 27: filer_pb.SubscribeMetadataResponse.events:type_name -> filer_pb.SubscribeMetadataResponse
45, // 28: filer_pb.SubscribeMetadataResponse.log_file_refs:type_name -> filer_pb.LogFileChunkRef
10, // 29: filer_pb.LogFileChunkRef.chunks:type_name -> filer_pb.FileChunk
7, // 30: filer_pb.TraverseBfsMetadataResponse.entry:type_name -> filer_pb.Entry
76, // 31: filer_pb.LocateBrokerResponse.resources:type_name -> filer_pb.LocateBrokerResponse.Resource
77, // 32: filer_pb.FilerConf.locations:type_name -> filer_pb.FilerConf.PathConf
7, // 33: filer_pb.CacheRemoteObjectToLocalClusterResponse.entry:type_name -> filer_pb.Entry
44, // 34: filer_pb.CacheRemoteObjectToLocalClusterResponse.metadata_event:type_name -> filer_pb.SubscribeMetadataResponse
66, // 35: filer_pb.TransferLocksRequest.locks:type_name -> filer_pb.Lock
14, // 36: filer_pb.StreamMutateEntryRequest.create_request:type_name -> filer_pb.CreateEntryRequest
16, // 37: filer_pb.StreamMutateEntryRequest.update_request:type_name -> filer_pb.UpdateEntryRequest
20, // 38: filer_pb.StreamMutateEntryRequest.delete_request:type_name -> filer_pb.DeleteEntryRequest
24, // 39: filer_pb.StreamMutateEntryRequest.rename_request:type_name -> filer_pb.StreamRenameEntryRequest
15, // 40: filer_pb.StreamMutateEntryResponse.create_response:type_name -> filer_pb.CreateEntryResponse
17, // 41: filer_pb.StreamMutateEntryResponse.update_response:type_name -> filer_pb.UpdateEntryResponse
21, // 42: filer_pb.StreamMutateEntryResponse.delete_response:type_name -> filer_pb.DeleteEntryResponse
25, // 43: filer_pb.StreamMutateEntryResponse.rename_response:type_name -> filer_pb.StreamRenameEntryResponse
29, // 44: filer_pb.LookupVolumeResponse.LocationsMapEntry.value:type_name -> filer_pb.Locations
2, // 45: filer_pb.SeaweedFiler.LookupDirectoryEntry:input_type -> filer_pb.LookupDirectoryEntryRequest
4, // 46: filer_pb.SeaweedFiler.ListEntries:input_type -> filer_pb.ListEntriesRequest
14, // 47: filer_pb.SeaweedFiler.CreateEntry:input_type -> filer_pb.CreateEntryRequest
16, // 48: filer_pb.SeaweedFiler.UpdateEntry:input_type -> filer_pb.UpdateEntryRequest
18, // 49: filer_pb.SeaweedFiler.AppendToEntry:input_type -> filer_pb.AppendToEntryRequest
20, // 50: filer_pb.SeaweedFiler.DeleteEntry:input_type -> filer_pb.DeleteEntryRequest
22, // 51: filer_pb.SeaweedFiler.AtomicRenameEntry:input_type -> filer_pb.AtomicRenameEntryRequest
24, // 52: filer_pb.SeaweedFiler.StreamRenameEntry:input_type -> filer_pb.StreamRenameEntryRequest
71, // 53: filer_pb.SeaweedFiler.StreamMutateEntry:input_type -> filer_pb.StreamMutateEntryRequest
26, // 54: filer_pb.SeaweedFiler.AssignVolume:input_type -> filer_pb.AssignVolumeRequest
28, // 55: filer_pb.SeaweedFiler.LookupVolume:input_type -> filer_pb.LookupVolumeRequest
33, // 56: filer_pb.SeaweedFiler.CollectionList:input_type -> filer_pb.CollectionListRequest
35, // 57: filer_pb.SeaweedFiler.DeleteCollection:input_type -> filer_pb.DeleteCollectionRequest
37, // 58: filer_pb.SeaweedFiler.Statistics:input_type -> filer_pb.StatisticsRequest
39, // 59: filer_pb.SeaweedFiler.Ping:input_type -> filer_pb.PingRequest
41, // 60: filer_pb.SeaweedFiler.GetFilerConfiguration:input_type -> filer_pb.GetFilerConfigurationRequest
46, // 61: filer_pb.SeaweedFiler.TraverseBfsMetadata:input_type -> filer_pb.TraverseBfsMetadataRequest
43, // 62: filer_pb.SeaweedFiler.SubscribeMetadata:input_type -> filer_pb.SubscribeMetadataRequest
43, // 63: filer_pb.SeaweedFiler.SubscribeLocalMetadata:input_type -> filer_pb.SubscribeMetadataRequest
53, // 64: filer_pb.SeaweedFiler.KvGet:input_type -> filer_pb.KvGetRequest
55, // 65: filer_pb.SeaweedFiler.KvPut:input_type -> filer_pb.KvPutRequest
58, // 66: filer_pb.SeaweedFiler.CacheRemoteObjectToLocalCluster:input_type -> filer_pb.CacheRemoteObjectToLocalClusterRequest
60, // 67: filer_pb.SeaweedFiler.DistributedLock:input_type -> filer_pb.LockRequest
62, // 68: filer_pb.SeaweedFiler.DistributedUnlock:input_type -> filer_pb.UnlockRequest
64, // 69: filer_pb.SeaweedFiler.FindLockOwner:input_type -> filer_pb.FindLockOwnerRequest
67, // 70: filer_pb.SeaweedFiler.TransferLocks:input_type -> filer_pb.TransferLocksRequest
69, // 71: filer_pb.SeaweedFiler.ReplicateLock:input_type -> filer_pb.ReplicateLockRequest
3, // 72: filer_pb.SeaweedFiler.LookupDirectoryEntry:output_type -> filer_pb.LookupDirectoryEntryResponse
5, // 73: filer_pb.SeaweedFiler.ListEntries:output_type -> filer_pb.ListEntriesResponse
15, // 74: filer_pb.SeaweedFiler.CreateEntry:output_type -> filer_pb.CreateEntryResponse
17, // 75: filer_pb.SeaweedFiler.UpdateEntry:output_type -> filer_pb.UpdateEntryResponse
19, // 76: filer_pb.SeaweedFiler.AppendToEntry:output_type -> filer_pb.AppendToEntryResponse
21, // 77: filer_pb.SeaweedFiler.DeleteEntry:output_type -> filer_pb.DeleteEntryResponse
23, // 78: filer_pb.SeaweedFiler.AtomicRenameEntry:output_type -> filer_pb.AtomicRenameEntryResponse
25, // 79: filer_pb.SeaweedFiler.StreamRenameEntry:output_type -> filer_pb.StreamRenameEntryResponse
72, // 80: filer_pb.SeaweedFiler.StreamMutateEntry:output_type -> filer_pb.StreamMutateEntryResponse
27, // 81: filer_pb.SeaweedFiler.AssignVolume:output_type -> filer_pb.AssignVolumeResponse
31, // 82: filer_pb.SeaweedFiler.LookupVolume:output_type -> filer_pb.LookupVolumeResponse
34, // 83: filer_pb.SeaweedFiler.CollectionList:output_type -> filer_pb.CollectionListResponse
36, // 84: filer_pb.SeaweedFiler.DeleteCollection:output_type -> filer_pb.DeleteCollectionResponse
38, // 85: filer_pb.SeaweedFiler.Statistics:output_type -> filer_pb.StatisticsResponse
40, // 86: filer_pb.SeaweedFiler.Ping:output_type -> filer_pb.PingResponse
42, // 87: filer_pb.SeaweedFiler.GetFilerConfiguration:output_type -> filer_pb.GetFilerConfigurationResponse
47, // 88: filer_pb.SeaweedFiler.TraverseBfsMetadata:output_type -> filer_pb.TraverseBfsMetadataResponse
44, // 89: filer_pb.SeaweedFiler.SubscribeMetadata:output_type -> filer_pb.SubscribeMetadataResponse
44, // 90: filer_pb.SeaweedFiler.SubscribeLocalMetadata:output_type -> filer_pb.SubscribeMetadataResponse
54, // 91: filer_pb.SeaweedFiler.KvGet:output_type -> filer_pb.KvGetResponse
56, // 92: filer_pb.SeaweedFiler.KvPut:output_type -> filer_pb.KvPutResponse
59, // 93: filer_pb.SeaweedFiler.CacheRemoteObjectToLocalCluster:output_type -> filer_pb.CacheRemoteObjectToLocalClusterResponse
61, // 94: filer_pb.SeaweedFiler.DistributedLock:output_type -> filer_pb.LockResponse
63, // 95: filer_pb.SeaweedFiler.DistributedUnlock:output_type -> filer_pb.UnlockResponse
65, // 96: filer_pb.SeaweedFiler.FindLockOwner:output_type -> filer_pb.FindLockOwnerResponse
68, // 97: filer_pb.SeaweedFiler.TransferLocks:output_type -> filer_pb.TransferLocksResponse
70, // 98: filer_pb.SeaweedFiler.ReplicateLock:output_type -> filer_pb.ReplicateLockResponse
72, // [72:99] is the sub-list for method output_type
45, // [45:72] is the sub-list for method input_type
45, // [45:45] is the sub-list for extension type_name
45, // [45:45] is the sub-list for extension extendee
0, // [0:45] is the sub-list for field type_name
}
func init() { file_filer_proto_init() }
func file_filer_proto_init() {
if File_filer_proto != nil {
return
}
file_filer_proto_msgTypes[69].OneofWrappers = []any{
(*StreamMutateEntryRequest_CreateRequest)(nil),
(*StreamMutateEntryRequest_UpdateRequest)(nil),
(*StreamMutateEntryRequest_DeleteRequest)(nil),
(*StreamMutateEntryRequest_RenameRequest)(nil),
}
file_filer_proto_msgTypes[70].OneofWrappers = []any{
(*StreamMutateEntryResponse_CreateResponse)(nil),
(*StreamMutateEntryResponse_UpdateResponse)(nil),
(*StreamMutateEntryResponse_DeleteResponse)(nil),
(*StreamMutateEntryResponse_RenameResponse)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_filer_proto_rawDesc), len(file_filer_proto_rawDesc)),
NumEnums: 2,
NumMessages: 76,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_filer_proto_goTypes,
DependencyIndexes: file_filer_proto_depIdxs,
EnumInfos: file_filer_proto_enumTypes,
MessageInfos: file_filer_proto_msgTypes,
}.Build()
File_filer_proto = out.File
file_filer_proto_goTypes = nil
file_filer_proto_depIdxs = nil
}