filer.pb.go 57 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580
  1. // Code generated by protoc-gen-go.
  2. // source: filer.proto
  3. // DO NOT EDIT!
  4. /*
  5. Package filer_pb is a generated protocol buffer package.
  6. It is generated from these files:
  7. filer.proto
  8. It has these top-level messages:
  9. LookupDirectoryEntryRequest
  10. LookupDirectoryEntryResponse
  11. ListEntriesRequest
  12. ListEntriesResponse
  13. Entry
  14. FullEntry
  15. EventNotification
  16. FileChunk
  17. FileId
  18. FuseAttributes
  19. CreateEntryRequest
  20. CreateEntryResponse
  21. UpdateEntryRequest
  22. UpdateEntryResponse
  23. DeleteEntryRequest
  24. DeleteEntryResponse
  25. AtomicRenameEntryRequest
  26. AtomicRenameEntryResponse
  27. AssignVolumeRequest
  28. AssignVolumeResponse
  29. LookupVolumeRequest
  30. Locations
  31. Location
  32. LookupVolumeResponse
  33. DeleteCollectionRequest
  34. DeleteCollectionResponse
  35. StatisticsRequest
  36. StatisticsResponse
  37. GetFilerConfigurationRequest
  38. GetFilerConfigurationResponse
  39. */
  40. package filer_pb
  41. import proto "github.com/golang/protobuf/proto"
  42. import fmt "fmt"
  43. import math "math"
  44. import (
  45. context "golang.org/x/net/context"
  46. grpc "google.golang.org/grpc"
  47. )
  48. // Reference imports to suppress errors if they are not otherwise used.
  49. var _ = proto.Marshal
  50. var _ = fmt.Errorf
  51. var _ = math.Inf
  52. // This is a compile-time assertion to ensure that this generated file
  53. // is compatible with the proto package it is being compiled against.
  54. // A compilation error at this line likely means your copy of the
  55. // proto package needs to be updated.
  56. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  57. type LookupDirectoryEntryRequest struct {
  58. Directory string `protobuf:"bytes,1,opt,name=directory" json:"directory,omitempty"`
  59. Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  60. }
  61. func (m *LookupDirectoryEntryRequest) Reset() { *m = LookupDirectoryEntryRequest{} }
  62. func (m *LookupDirectoryEntryRequest) String() string { return proto.CompactTextString(m) }
  63. func (*LookupDirectoryEntryRequest) ProtoMessage() {}
  64. func (*LookupDirectoryEntryRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
  65. func (m *LookupDirectoryEntryRequest) GetDirectory() string {
  66. if m != nil {
  67. return m.Directory
  68. }
  69. return ""
  70. }
  71. func (m *LookupDirectoryEntryRequest) GetName() string {
  72. if m != nil {
  73. return m.Name
  74. }
  75. return ""
  76. }
  77. type LookupDirectoryEntryResponse struct {
  78. Entry *Entry `protobuf:"bytes,1,opt,name=entry" json:"entry,omitempty"`
  79. }
  80. func (m *LookupDirectoryEntryResponse) Reset() { *m = LookupDirectoryEntryResponse{} }
  81. func (m *LookupDirectoryEntryResponse) String() string { return proto.CompactTextString(m) }
  82. func (*LookupDirectoryEntryResponse) ProtoMessage() {}
  83. func (*LookupDirectoryEntryResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
  84. func (m *LookupDirectoryEntryResponse) GetEntry() *Entry {
  85. if m != nil {
  86. return m.Entry
  87. }
  88. return nil
  89. }
  90. type ListEntriesRequest struct {
  91. Directory string `protobuf:"bytes,1,opt,name=directory" json:"directory,omitempty"`
  92. Prefix string `protobuf:"bytes,2,opt,name=prefix" json:"prefix,omitempty"`
  93. StartFromFileName string `protobuf:"bytes,3,opt,name=startFromFileName" json:"startFromFileName,omitempty"`
  94. InclusiveStartFrom bool `protobuf:"varint,4,opt,name=inclusiveStartFrom" json:"inclusiveStartFrom,omitempty"`
  95. Limit uint32 `protobuf:"varint,5,opt,name=limit" json:"limit,omitempty"`
  96. }
  97. func (m *ListEntriesRequest) Reset() { *m = ListEntriesRequest{} }
  98. func (m *ListEntriesRequest) String() string { return proto.CompactTextString(m) }
  99. func (*ListEntriesRequest) ProtoMessage() {}
  100. func (*ListEntriesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
  101. func (m *ListEntriesRequest) GetDirectory() string {
  102. if m != nil {
  103. return m.Directory
  104. }
  105. return ""
  106. }
  107. func (m *ListEntriesRequest) GetPrefix() string {
  108. if m != nil {
  109. return m.Prefix
  110. }
  111. return ""
  112. }
  113. func (m *ListEntriesRequest) GetStartFromFileName() string {
  114. if m != nil {
  115. return m.StartFromFileName
  116. }
  117. return ""
  118. }
  119. func (m *ListEntriesRequest) GetInclusiveStartFrom() bool {
  120. if m != nil {
  121. return m.InclusiveStartFrom
  122. }
  123. return false
  124. }
  125. func (m *ListEntriesRequest) GetLimit() uint32 {
  126. if m != nil {
  127. return m.Limit
  128. }
  129. return 0
  130. }
  131. type ListEntriesResponse struct {
  132. Entry *Entry `protobuf:"bytes,1,opt,name=entry" json:"entry,omitempty"`
  133. }
  134. func (m *ListEntriesResponse) Reset() { *m = ListEntriesResponse{} }
  135. func (m *ListEntriesResponse) String() string { return proto.CompactTextString(m) }
  136. func (*ListEntriesResponse) ProtoMessage() {}
  137. func (*ListEntriesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
  138. func (m *ListEntriesResponse) GetEntry() *Entry {
  139. if m != nil {
  140. return m.Entry
  141. }
  142. return nil
  143. }
  144. type Entry struct {
  145. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  146. IsDirectory bool `protobuf:"varint,2,opt,name=is_directory,json=isDirectory" json:"is_directory,omitempty"`
  147. Chunks []*FileChunk `protobuf:"bytes,3,rep,name=chunks" json:"chunks,omitempty"`
  148. Attributes *FuseAttributes `protobuf:"bytes,4,opt,name=attributes" json:"attributes,omitempty"`
  149. Extended map[string][]byte `protobuf:"bytes,5,rep,name=extended" json:"extended,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value,proto3"`
  150. }
  151. func (m *Entry) Reset() { *m = Entry{} }
  152. func (m *Entry) String() string { return proto.CompactTextString(m) }
  153. func (*Entry) ProtoMessage() {}
  154. func (*Entry) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
  155. func (m *Entry) GetName() string {
  156. if m != nil {
  157. return m.Name
  158. }
  159. return ""
  160. }
  161. func (m *Entry) GetIsDirectory() bool {
  162. if m != nil {
  163. return m.IsDirectory
  164. }
  165. return false
  166. }
  167. func (m *Entry) GetChunks() []*FileChunk {
  168. if m != nil {
  169. return m.Chunks
  170. }
  171. return nil
  172. }
  173. func (m *Entry) GetAttributes() *FuseAttributes {
  174. if m != nil {
  175. return m.Attributes
  176. }
  177. return nil
  178. }
  179. func (m *Entry) GetExtended() map[string][]byte {
  180. if m != nil {
  181. return m.Extended
  182. }
  183. return nil
  184. }
  185. type FullEntry struct {
  186. Dir string `protobuf:"bytes,1,opt,name=dir" json:"dir,omitempty"`
  187. Entry *Entry `protobuf:"bytes,2,opt,name=entry" json:"entry,omitempty"`
  188. }
  189. func (m *FullEntry) Reset() { *m = FullEntry{} }
  190. func (m *FullEntry) String() string { return proto.CompactTextString(m) }
  191. func (*FullEntry) ProtoMessage() {}
  192. func (*FullEntry) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
  193. func (m *FullEntry) GetDir() string {
  194. if m != nil {
  195. return m.Dir
  196. }
  197. return ""
  198. }
  199. func (m *FullEntry) GetEntry() *Entry {
  200. if m != nil {
  201. return m.Entry
  202. }
  203. return nil
  204. }
  205. type EventNotification struct {
  206. OldEntry *Entry `protobuf:"bytes,1,opt,name=old_entry,json=oldEntry" json:"old_entry,omitempty"`
  207. NewEntry *Entry `protobuf:"bytes,2,opt,name=new_entry,json=newEntry" json:"new_entry,omitempty"`
  208. DeleteChunks bool `protobuf:"varint,3,opt,name=delete_chunks,json=deleteChunks" json:"delete_chunks,omitempty"`
  209. NewParentPath string `protobuf:"bytes,4,opt,name=new_parent_path,json=newParentPath" json:"new_parent_path,omitempty"`
  210. }
  211. func (m *EventNotification) Reset() { *m = EventNotification{} }
  212. func (m *EventNotification) String() string { return proto.CompactTextString(m) }
  213. func (*EventNotification) ProtoMessage() {}
  214. func (*EventNotification) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
  215. func (m *EventNotification) GetOldEntry() *Entry {
  216. if m != nil {
  217. return m.OldEntry
  218. }
  219. return nil
  220. }
  221. func (m *EventNotification) GetNewEntry() *Entry {
  222. if m != nil {
  223. return m.NewEntry
  224. }
  225. return nil
  226. }
  227. func (m *EventNotification) GetDeleteChunks() bool {
  228. if m != nil {
  229. return m.DeleteChunks
  230. }
  231. return false
  232. }
  233. func (m *EventNotification) GetNewParentPath() string {
  234. if m != nil {
  235. return m.NewParentPath
  236. }
  237. return ""
  238. }
  239. type FileChunk struct {
  240. FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId" json:"file_id,omitempty"`
  241. Offset int64 `protobuf:"varint,2,opt,name=offset" json:"offset,omitempty"`
  242. Size uint64 `protobuf:"varint,3,opt,name=size" json:"size,omitempty"`
  243. Mtime int64 `protobuf:"varint,4,opt,name=mtime" json:"mtime,omitempty"`
  244. ETag string `protobuf:"bytes,5,opt,name=e_tag,json=eTag" json:"e_tag,omitempty"`
  245. SourceFileId string `protobuf:"bytes,6,opt,name=source_file_id,json=sourceFileId" json:"source_file_id,omitempty"`
  246. Fid *FileId `protobuf:"bytes,7,opt,name=fid" json:"fid,omitempty"`
  247. SourceFid *FileId `protobuf:"bytes,8,opt,name=source_fid,json=sourceFid" json:"source_fid,omitempty"`
  248. }
  249. func (m *FileChunk) Reset() { *m = FileChunk{} }
  250. func (m *FileChunk) String() string { return proto.CompactTextString(m) }
  251. func (*FileChunk) ProtoMessage() {}
  252. func (*FileChunk) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
  253. func (m *FileChunk) GetFileId() string {
  254. if m != nil {
  255. return m.FileId
  256. }
  257. return ""
  258. }
  259. func (m *FileChunk) GetOffset() int64 {
  260. if m != nil {
  261. return m.Offset
  262. }
  263. return 0
  264. }
  265. func (m *FileChunk) GetSize() uint64 {
  266. if m != nil {
  267. return m.Size
  268. }
  269. return 0
  270. }
  271. func (m *FileChunk) GetMtime() int64 {
  272. if m != nil {
  273. return m.Mtime
  274. }
  275. return 0
  276. }
  277. func (m *FileChunk) GetETag() string {
  278. if m != nil {
  279. return m.ETag
  280. }
  281. return ""
  282. }
  283. func (m *FileChunk) GetSourceFileId() string {
  284. if m != nil {
  285. return m.SourceFileId
  286. }
  287. return ""
  288. }
  289. func (m *FileChunk) GetFid() *FileId {
  290. if m != nil {
  291. return m.Fid
  292. }
  293. return nil
  294. }
  295. func (m *FileChunk) GetSourceFid() *FileId {
  296. if m != nil {
  297. return m.SourceFid
  298. }
  299. return nil
  300. }
  301. type FileId struct {
  302. VolumeId uint32 `protobuf:"varint,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"`
  303. FileKey uint64 `protobuf:"varint,2,opt,name=file_key,json=fileKey" json:"file_key,omitempty"`
  304. Cookie uint32 `protobuf:"fixed32,3,opt,name=cookie" json:"cookie,omitempty"`
  305. }
  306. func (m *FileId) Reset() { *m = FileId{} }
  307. func (m *FileId) String() string { return proto.CompactTextString(m) }
  308. func (*FileId) ProtoMessage() {}
  309. func (*FileId) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
  310. func (m *FileId) GetVolumeId() uint32 {
  311. if m != nil {
  312. return m.VolumeId
  313. }
  314. return 0
  315. }
  316. func (m *FileId) GetFileKey() uint64 {
  317. if m != nil {
  318. return m.FileKey
  319. }
  320. return 0
  321. }
  322. func (m *FileId) GetCookie() uint32 {
  323. if m != nil {
  324. return m.Cookie
  325. }
  326. return 0
  327. }
  328. type FuseAttributes struct {
  329. FileSize uint64 `protobuf:"varint,1,opt,name=file_size,json=fileSize" json:"file_size,omitempty"`
  330. Mtime int64 `protobuf:"varint,2,opt,name=mtime" json:"mtime,omitempty"`
  331. FileMode uint32 `protobuf:"varint,3,opt,name=file_mode,json=fileMode" json:"file_mode,omitempty"`
  332. Uid uint32 `protobuf:"varint,4,opt,name=uid" json:"uid,omitempty"`
  333. Gid uint32 `protobuf:"varint,5,opt,name=gid" json:"gid,omitempty"`
  334. Crtime int64 `protobuf:"varint,6,opt,name=crtime" json:"crtime,omitempty"`
  335. Mime string `protobuf:"bytes,7,opt,name=mime" json:"mime,omitempty"`
  336. Replication string `protobuf:"bytes,8,opt,name=replication" json:"replication,omitempty"`
  337. Collection string `protobuf:"bytes,9,opt,name=collection" json:"collection,omitempty"`
  338. TtlSec int32 `protobuf:"varint,10,opt,name=ttl_sec,json=ttlSec" json:"ttl_sec,omitempty"`
  339. UserName string `protobuf:"bytes,11,opt,name=user_name,json=userName" json:"user_name,omitempty"`
  340. GroupName []string `protobuf:"bytes,12,rep,name=group_name,json=groupName" json:"group_name,omitempty"`
  341. SymlinkTarget string `protobuf:"bytes,13,opt,name=symlink_target,json=symlinkTarget" json:"symlink_target,omitempty"`
  342. }
  343. func (m *FuseAttributes) Reset() { *m = FuseAttributes{} }
  344. func (m *FuseAttributes) String() string { return proto.CompactTextString(m) }
  345. func (*FuseAttributes) ProtoMessage() {}
  346. func (*FuseAttributes) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
  347. func (m *FuseAttributes) GetFileSize() uint64 {
  348. if m != nil {
  349. return m.FileSize
  350. }
  351. return 0
  352. }
  353. func (m *FuseAttributes) GetMtime() int64 {
  354. if m != nil {
  355. return m.Mtime
  356. }
  357. return 0
  358. }
  359. func (m *FuseAttributes) GetFileMode() uint32 {
  360. if m != nil {
  361. return m.FileMode
  362. }
  363. return 0
  364. }
  365. func (m *FuseAttributes) GetUid() uint32 {
  366. if m != nil {
  367. return m.Uid
  368. }
  369. return 0
  370. }
  371. func (m *FuseAttributes) GetGid() uint32 {
  372. if m != nil {
  373. return m.Gid
  374. }
  375. return 0
  376. }
  377. func (m *FuseAttributes) GetCrtime() int64 {
  378. if m != nil {
  379. return m.Crtime
  380. }
  381. return 0
  382. }
  383. func (m *FuseAttributes) GetMime() string {
  384. if m != nil {
  385. return m.Mime
  386. }
  387. return ""
  388. }
  389. func (m *FuseAttributes) GetReplication() string {
  390. if m != nil {
  391. return m.Replication
  392. }
  393. return ""
  394. }
  395. func (m *FuseAttributes) GetCollection() string {
  396. if m != nil {
  397. return m.Collection
  398. }
  399. return ""
  400. }
  401. func (m *FuseAttributes) GetTtlSec() int32 {
  402. if m != nil {
  403. return m.TtlSec
  404. }
  405. return 0
  406. }
  407. func (m *FuseAttributes) GetUserName() string {
  408. if m != nil {
  409. return m.UserName
  410. }
  411. return ""
  412. }
  413. func (m *FuseAttributes) GetGroupName() []string {
  414. if m != nil {
  415. return m.GroupName
  416. }
  417. return nil
  418. }
  419. func (m *FuseAttributes) GetSymlinkTarget() string {
  420. if m != nil {
  421. return m.SymlinkTarget
  422. }
  423. return ""
  424. }
  425. type CreateEntryRequest struct {
  426. Directory string `protobuf:"bytes,1,opt,name=directory" json:"directory,omitempty"`
  427. Entry *Entry `protobuf:"bytes,2,opt,name=entry" json:"entry,omitempty"`
  428. OExcl bool `protobuf:"varint,3,opt,name=o_excl,json=oExcl" json:"o_excl,omitempty"`
  429. }
  430. func (m *CreateEntryRequest) Reset() { *m = CreateEntryRequest{} }
  431. func (m *CreateEntryRequest) String() string { return proto.CompactTextString(m) }
  432. func (*CreateEntryRequest) ProtoMessage() {}
  433. func (*CreateEntryRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
  434. func (m *CreateEntryRequest) GetDirectory() string {
  435. if m != nil {
  436. return m.Directory
  437. }
  438. return ""
  439. }
  440. func (m *CreateEntryRequest) GetEntry() *Entry {
  441. if m != nil {
  442. return m.Entry
  443. }
  444. return nil
  445. }
  446. func (m *CreateEntryRequest) GetOExcl() bool {
  447. if m != nil {
  448. return m.OExcl
  449. }
  450. return false
  451. }
  452. type CreateEntryResponse struct {
  453. Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
  454. }
  455. func (m *CreateEntryResponse) Reset() { *m = CreateEntryResponse{} }
  456. func (m *CreateEntryResponse) String() string { return proto.CompactTextString(m) }
  457. func (*CreateEntryResponse) ProtoMessage() {}
  458. func (*CreateEntryResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
  459. func (m *CreateEntryResponse) GetError() string {
  460. if m != nil {
  461. return m.Error
  462. }
  463. return ""
  464. }
  465. type UpdateEntryRequest struct {
  466. Directory string `protobuf:"bytes,1,opt,name=directory" json:"directory,omitempty"`
  467. Entry *Entry `protobuf:"bytes,2,opt,name=entry" json:"entry,omitempty"`
  468. }
  469. func (m *UpdateEntryRequest) Reset() { *m = UpdateEntryRequest{} }
  470. func (m *UpdateEntryRequest) String() string { return proto.CompactTextString(m) }
  471. func (*UpdateEntryRequest) ProtoMessage() {}
  472. func (*UpdateEntryRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
  473. func (m *UpdateEntryRequest) GetDirectory() string {
  474. if m != nil {
  475. return m.Directory
  476. }
  477. return ""
  478. }
  479. func (m *UpdateEntryRequest) GetEntry() *Entry {
  480. if m != nil {
  481. return m.Entry
  482. }
  483. return nil
  484. }
  485. type UpdateEntryResponse struct {
  486. }
  487. func (m *UpdateEntryResponse) Reset() { *m = UpdateEntryResponse{} }
  488. func (m *UpdateEntryResponse) String() string { return proto.CompactTextString(m) }
  489. func (*UpdateEntryResponse) ProtoMessage() {}
  490. func (*UpdateEntryResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
  491. type DeleteEntryRequest struct {
  492. Directory string `protobuf:"bytes,1,opt,name=directory" json:"directory,omitempty"`
  493. Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  494. // bool is_directory = 3;
  495. IsDeleteData bool `protobuf:"varint,4,opt,name=is_delete_data,json=isDeleteData" json:"is_delete_data,omitempty"`
  496. IsRecursive bool `protobuf:"varint,5,opt,name=is_recursive,json=isRecursive" json:"is_recursive,omitempty"`
  497. IgnoreRecursiveError bool `protobuf:"varint,6,opt,name=ignore_recursive_error,json=ignoreRecursiveError" json:"ignore_recursive_error,omitempty"`
  498. }
  499. func (m *DeleteEntryRequest) Reset() { *m = DeleteEntryRequest{} }
  500. func (m *DeleteEntryRequest) String() string { return proto.CompactTextString(m) }
  501. func (*DeleteEntryRequest) ProtoMessage() {}
  502. func (*DeleteEntryRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
  503. func (m *DeleteEntryRequest) GetDirectory() string {
  504. if m != nil {
  505. return m.Directory
  506. }
  507. return ""
  508. }
  509. func (m *DeleteEntryRequest) GetName() string {
  510. if m != nil {
  511. return m.Name
  512. }
  513. return ""
  514. }
  515. func (m *DeleteEntryRequest) GetIsDeleteData() bool {
  516. if m != nil {
  517. return m.IsDeleteData
  518. }
  519. return false
  520. }
  521. func (m *DeleteEntryRequest) GetIsRecursive() bool {
  522. if m != nil {
  523. return m.IsRecursive
  524. }
  525. return false
  526. }
  527. func (m *DeleteEntryRequest) GetIgnoreRecursiveError() bool {
  528. if m != nil {
  529. return m.IgnoreRecursiveError
  530. }
  531. return false
  532. }
  533. type DeleteEntryResponse struct {
  534. }
  535. func (m *DeleteEntryResponse) Reset() { *m = DeleteEntryResponse{} }
  536. func (m *DeleteEntryResponse) String() string { return proto.CompactTextString(m) }
  537. func (*DeleteEntryResponse) ProtoMessage() {}
  538. func (*DeleteEntryResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
  539. type AtomicRenameEntryRequest struct {
  540. OldDirectory string `protobuf:"bytes,1,opt,name=old_directory,json=oldDirectory" json:"old_directory,omitempty"`
  541. OldName string `protobuf:"bytes,2,opt,name=old_name,json=oldName" json:"old_name,omitempty"`
  542. NewDirectory string `protobuf:"bytes,3,opt,name=new_directory,json=newDirectory" json:"new_directory,omitempty"`
  543. NewName string `protobuf:"bytes,4,opt,name=new_name,json=newName" json:"new_name,omitempty"`
  544. }
  545. func (m *AtomicRenameEntryRequest) Reset() { *m = AtomicRenameEntryRequest{} }
  546. func (m *AtomicRenameEntryRequest) String() string { return proto.CompactTextString(m) }
  547. func (*AtomicRenameEntryRequest) ProtoMessage() {}
  548. func (*AtomicRenameEntryRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
  549. func (m *AtomicRenameEntryRequest) GetOldDirectory() string {
  550. if m != nil {
  551. return m.OldDirectory
  552. }
  553. return ""
  554. }
  555. func (m *AtomicRenameEntryRequest) GetOldName() string {
  556. if m != nil {
  557. return m.OldName
  558. }
  559. return ""
  560. }
  561. func (m *AtomicRenameEntryRequest) GetNewDirectory() string {
  562. if m != nil {
  563. return m.NewDirectory
  564. }
  565. return ""
  566. }
  567. func (m *AtomicRenameEntryRequest) GetNewName() string {
  568. if m != nil {
  569. return m.NewName
  570. }
  571. return ""
  572. }
  573. type AtomicRenameEntryResponse struct {
  574. }
  575. func (m *AtomicRenameEntryResponse) Reset() { *m = AtomicRenameEntryResponse{} }
  576. func (m *AtomicRenameEntryResponse) String() string { return proto.CompactTextString(m) }
  577. func (*AtomicRenameEntryResponse) ProtoMessage() {}
  578. func (*AtomicRenameEntryResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
  579. type AssignVolumeRequest struct {
  580. Count int32 `protobuf:"varint,1,opt,name=count" json:"count,omitempty"`
  581. Collection string `protobuf:"bytes,2,opt,name=collection" json:"collection,omitempty"`
  582. Replication string `protobuf:"bytes,3,opt,name=replication" json:"replication,omitempty"`
  583. TtlSec int32 `protobuf:"varint,4,opt,name=ttl_sec,json=ttlSec" json:"ttl_sec,omitempty"`
  584. DataCenter string `protobuf:"bytes,5,opt,name=data_center,json=dataCenter" json:"data_center,omitempty"`
  585. }
  586. func (m *AssignVolumeRequest) Reset() { *m = AssignVolumeRequest{} }
  587. func (m *AssignVolumeRequest) String() string { return proto.CompactTextString(m) }
  588. func (*AssignVolumeRequest) ProtoMessage() {}
  589. func (*AssignVolumeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
  590. func (m *AssignVolumeRequest) GetCount() int32 {
  591. if m != nil {
  592. return m.Count
  593. }
  594. return 0
  595. }
  596. func (m *AssignVolumeRequest) GetCollection() string {
  597. if m != nil {
  598. return m.Collection
  599. }
  600. return ""
  601. }
  602. func (m *AssignVolumeRequest) GetReplication() string {
  603. if m != nil {
  604. return m.Replication
  605. }
  606. return ""
  607. }
  608. func (m *AssignVolumeRequest) GetTtlSec() int32 {
  609. if m != nil {
  610. return m.TtlSec
  611. }
  612. return 0
  613. }
  614. func (m *AssignVolumeRequest) GetDataCenter() string {
  615. if m != nil {
  616. return m.DataCenter
  617. }
  618. return ""
  619. }
  620. type AssignVolumeResponse struct {
  621. FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId" json:"file_id,omitempty"`
  622. Url string `protobuf:"bytes,2,opt,name=url" json:"url,omitempty"`
  623. PublicUrl string `protobuf:"bytes,3,opt,name=public_url,json=publicUrl" json:"public_url,omitempty"`
  624. Count int32 `protobuf:"varint,4,opt,name=count" json:"count,omitempty"`
  625. Auth string `protobuf:"bytes,5,opt,name=auth" json:"auth,omitempty"`
  626. }
  627. func (m *AssignVolumeResponse) Reset() { *m = AssignVolumeResponse{} }
  628. func (m *AssignVolumeResponse) String() string { return proto.CompactTextString(m) }
  629. func (*AssignVolumeResponse) ProtoMessage() {}
  630. func (*AssignVolumeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
  631. func (m *AssignVolumeResponse) GetFileId() string {
  632. if m != nil {
  633. return m.FileId
  634. }
  635. return ""
  636. }
  637. func (m *AssignVolumeResponse) GetUrl() string {
  638. if m != nil {
  639. return m.Url
  640. }
  641. return ""
  642. }
  643. func (m *AssignVolumeResponse) GetPublicUrl() string {
  644. if m != nil {
  645. return m.PublicUrl
  646. }
  647. return ""
  648. }
  649. func (m *AssignVolumeResponse) GetCount() int32 {
  650. if m != nil {
  651. return m.Count
  652. }
  653. return 0
  654. }
  655. func (m *AssignVolumeResponse) GetAuth() string {
  656. if m != nil {
  657. return m.Auth
  658. }
  659. return ""
  660. }
  661. type LookupVolumeRequest struct {
  662. VolumeIds []string `protobuf:"bytes,1,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"`
  663. }
  664. func (m *LookupVolumeRequest) Reset() { *m = LookupVolumeRequest{} }
  665. func (m *LookupVolumeRequest) String() string { return proto.CompactTextString(m) }
  666. func (*LookupVolumeRequest) ProtoMessage() {}
  667. func (*LookupVolumeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
  668. func (m *LookupVolumeRequest) GetVolumeIds() []string {
  669. if m != nil {
  670. return m.VolumeIds
  671. }
  672. return nil
  673. }
  674. type Locations struct {
  675. Locations []*Location `protobuf:"bytes,1,rep,name=locations" json:"locations,omitempty"`
  676. }
  677. func (m *Locations) Reset() { *m = Locations{} }
  678. func (m *Locations) String() string { return proto.CompactTextString(m) }
  679. func (*Locations) ProtoMessage() {}
  680. func (*Locations) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
  681. func (m *Locations) GetLocations() []*Location {
  682. if m != nil {
  683. return m.Locations
  684. }
  685. return nil
  686. }
  687. type Location struct {
  688. Url string `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
  689. PublicUrl string `protobuf:"bytes,2,opt,name=public_url,json=publicUrl" json:"public_url,omitempty"`
  690. }
  691. func (m *Location) Reset() { *m = Location{} }
  692. func (m *Location) String() string { return proto.CompactTextString(m) }
  693. func (*Location) ProtoMessage() {}
  694. func (*Location) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
  695. func (m *Location) GetUrl() string {
  696. if m != nil {
  697. return m.Url
  698. }
  699. return ""
  700. }
  701. func (m *Location) GetPublicUrl() string {
  702. if m != nil {
  703. return m.PublicUrl
  704. }
  705. return ""
  706. }
  707. type LookupVolumeResponse struct {
  708. LocationsMap map[string]*Locations `protobuf:"bytes,1,rep,name=locations_map,json=locationsMap" json:"locations_map,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
  709. }
  710. func (m *LookupVolumeResponse) Reset() { *m = LookupVolumeResponse{} }
  711. func (m *LookupVolumeResponse) String() string { return proto.CompactTextString(m) }
  712. func (*LookupVolumeResponse) ProtoMessage() {}
  713. func (*LookupVolumeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
  714. func (m *LookupVolumeResponse) GetLocationsMap() map[string]*Locations {
  715. if m != nil {
  716. return m.LocationsMap
  717. }
  718. return nil
  719. }
  720. type DeleteCollectionRequest struct {
  721. Collection string `protobuf:"bytes,1,opt,name=collection" json:"collection,omitempty"`
  722. }
  723. func (m *DeleteCollectionRequest) Reset() { *m = DeleteCollectionRequest{} }
  724. func (m *DeleteCollectionRequest) String() string { return proto.CompactTextString(m) }
  725. func (*DeleteCollectionRequest) ProtoMessage() {}
  726. func (*DeleteCollectionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
  727. func (m *DeleteCollectionRequest) GetCollection() string {
  728. if m != nil {
  729. return m.Collection
  730. }
  731. return ""
  732. }
  733. type DeleteCollectionResponse struct {
  734. }
  735. func (m *DeleteCollectionResponse) Reset() { *m = DeleteCollectionResponse{} }
  736. func (m *DeleteCollectionResponse) String() string { return proto.CompactTextString(m) }
  737. func (*DeleteCollectionResponse) ProtoMessage() {}
  738. func (*DeleteCollectionResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
  739. type StatisticsRequest struct {
  740. Replication string `protobuf:"bytes,1,opt,name=replication" json:"replication,omitempty"`
  741. Collection string `protobuf:"bytes,2,opt,name=collection" json:"collection,omitempty"`
  742. Ttl string `protobuf:"bytes,3,opt,name=ttl" json:"ttl,omitempty"`
  743. }
  744. func (m *StatisticsRequest) Reset() { *m = StatisticsRequest{} }
  745. func (m *StatisticsRequest) String() string { return proto.CompactTextString(m) }
  746. func (*StatisticsRequest) ProtoMessage() {}
  747. func (*StatisticsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
  748. func (m *StatisticsRequest) GetReplication() string {
  749. if m != nil {
  750. return m.Replication
  751. }
  752. return ""
  753. }
  754. func (m *StatisticsRequest) GetCollection() string {
  755. if m != nil {
  756. return m.Collection
  757. }
  758. return ""
  759. }
  760. func (m *StatisticsRequest) GetTtl() string {
  761. if m != nil {
  762. return m.Ttl
  763. }
  764. return ""
  765. }
  766. type StatisticsResponse struct {
  767. Replication string `protobuf:"bytes,1,opt,name=replication" json:"replication,omitempty"`
  768. Collection string `protobuf:"bytes,2,opt,name=collection" json:"collection,omitempty"`
  769. Ttl string `protobuf:"bytes,3,opt,name=ttl" json:"ttl,omitempty"`
  770. TotalSize uint64 `protobuf:"varint,4,opt,name=total_size,json=totalSize" json:"total_size,omitempty"`
  771. UsedSize uint64 `protobuf:"varint,5,opt,name=used_size,json=usedSize" json:"used_size,omitempty"`
  772. FileCount uint64 `protobuf:"varint,6,opt,name=file_count,json=fileCount" json:"file_count,omitempty"`
  773. }
  774. func (m *StatisticsResponse) Reset() { *m = StatisticsResponse{} }
  775. func (m *StatisticsResponse) String() string { return proto.CompactTextString(m) }
  776. func (*StatisticsResponse) ProtoMessage() {}
  777. func (*StatisticsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
  778. func (m *StatisticsResponse) GetReplication() string {
  779. if m != nil {
  780. return m.Replication
  781. }
  782. return ""
  783. }
  784. func (m *StatisticsResponse) GetCollection() string {
  785. if m != nil {
  786. return m.Collection
  787. }
  788. return ""
  789. }
  790. func (m *StatisticsResponse) GetTtl() string {
  791. if m != nil {
  792. return m.Ttl
  793. }
  794. return ""
  795. }
  796. func (m *StatisticsResponse) GetTotalSize() uint64 {
  797. if m != nil {
  798. return m.TotalSize
  799. }
  800. return 0
  801. }
  802. func (m *StatisticsResponse) GetUsedSize() uint64 {
  803. if m != nil {
  804. return m.UsedSize
  805. }
  806. return 0
  807. }
  808. func (m *StatisticsResponse) GetFileCount() uint64 {
  809. if m != nil {
  810. return m.FileCount
  811. }
  812. return 0
  813. }
  814. type GetFilerConfigurationRequest struct {
  815. }
  816. func (m *GetFilerConfigurationRequest) Reset() { *m = GetFilerConfigurationRequest{} }
  817. func (m *GetFilerConfigurationRequest) String() string { return proto.CompactTextString(m) }
  818. func (*GetFilerConfigurationRequest) ProtoMessage() {}
  819. func (*GetFilerConfigurationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
  820. type GetFilerConfigurationResponse struct {
  821. Masters []string `protobuf:"bytes,1,rep,name=masters" json:"masters,omitempty"`
  822. Replication string `protobuf:"bytes,2,opt,name=replication" json:"replication,omitempty"`
  823. Collection string `protobuf:"bytes,3,opt,name=collection" json:"collection,omitempty"`
  824. MaxMb uint32 `protobuf:"varint,4,opt,name=max_mb,json=maxMb" json:"max_mb,omitempty"`
  825. }
  826. func (m *GetFilerConfigurationResponse) Reset() { *m = GetFilerConfigurationResponse{} }
  827. func (m *GetFilerConfigurationResponse) String() string { return proto.CompactTextString(m) }
  828. func (*GetFilerConfigurationResponse) ProtoMessage() {}
  829. func (*GetFilerConfigurationResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
  830. func (m *GetFilerConfigurationResponse) GetMasters() []string {
  831. if m != nil {
  832. return m.Masters
  833. }
  834. return nil
  835. }
  836. func (m *GetFilerConfigurationResponse) GetReplication() string {
  837. if m != nil {
  838. return m.Replication
  839. }
  840. return ""
  841. }
  842. func (m *GetFilerConfigurationResponse) GetCollection() string {
  843. if m != nil {
  844. return m.Collection
  845. }
  846. return ""
  847. }
  848. func (m *GetFilerConfigurationResponse) GetMaxMb() uint32 {
  849. if m != nil {
  850. return m.MaxMb
  851. }
  852. return 0
  853. }
  854. func init() {
  855. proto.RegisterType((*LookupDirectoryEntryRequest)(nil), "filer_pb.LookupDirectoryEntryRequest")
  856. proto.RegisterType((*LookupDirectoryEntryResponse)(nil), "filer_pb.LookupDirectoryEntryResponse")
  857. proto.RegisterType((*ListEntriesRequest)(nil), "filer_pb.ListEntriesRequest")
  858. proto.RegisterType((*ListEntriesResponse)(nil), "filer_pb.ListEntriesResponse")
  859. proto.RegisterType((*Entry)(nil), "filer_pb.Entry")
  860. proto.RegisterType((*FullEntry)(nil), "filer_pb.FullEntry")
  861. proto.RegisterType((*EventNotification)(nil), "filer_pb.EventNotification")
  862. proto.RegisterType((*FileChunk)(nil), "filer_pb.FileChunk")
  863. proto.RegisterType((*FileId)(nil), "filer_pb.FileId")
  864. proto.RegisterType((*FuseAttributes)(nil), "filer_pb.FuseAttributes")
  865. proto.RegisterType((*CreateEntryRequest)(nil), "filer_pb.CreateEntryRequest")
  866. proto.RegisterType((*CreateEntryResponse)(nil), "filer_pb.CreateEntryResponse")
  867. proto.RegisterType((*UpdateEntryRequest)(nil), "filer_pb.UpdateEntryRequest")
  868. proto.RegisterType((*UpdateEntryResponse)(nil), "filer_pb.UpdateEntryResponse")
  869. proto.RegisterType((*DeleteEntryRequest)(nil), "filer_pb.DeleteEntryRequest")
  870. proto.RegisterType((*DeleteEntryResponse)(nil), "filer_pb.DeleteEntryResponse")
  871. proto.RegisterType((*AtomicRenameEntryRequest)(nil), "filer_pb.AtomicRenameEntryRequest")
  872. proto.RegisterType((*AtomicRenameEntryResponse)(nil), "filer_pb.AtomicRenameEntryResponse")
  873. proto.RegisterType((*AssignVolumeRequest)(nil), "filer_pb.AssignVolumeRequest")
  874. proto.RegisterType((*AssignVolumeResponse)(nil), "filer_pb.AssignVolumeResponse")
  875. proto.RegisterType((*LookupVolumeRequest)(nil), "filer_pb.LookupVolumeRequest")
  876. proto.RegisterType((*Locations)(nil), "filer_pb.Locations")
  877. proto.RegisterType((*Location)(nil), "filer_pb.Location")
  878. proto.RegisterType((*LookupVolumeResponse)(nil), "filer_pb.LookupVolumeResponse")
  879. proto.RegisterType((*DeleteCollectionRequest)(nil), "filer_pb.DeleteCollectionRequest")
  880. proto.RegisterType((*DeleteCollectionResponse)(nil), "filer_pb.DeleteCollectionResponse")
  881. proto.RegisterType((*StatisticsRequest)(nil), "filer_pb.StatisticsRequest")
  882. proto.RegisterType((*StatisticsResponse)(nil), "filer_pb.StatisticsResponse")
  883. proto.RegisterType((*GetFilerConfigurationRequest)(nil), "filer_pb.GetFilerConfigurationRequest")
  884. proto.RegisterType((*GetFilerConfigurationResponse)(nil), "filer_pb.GetFilerConfigurationResponse")
  885. }
  886. // Reference imports to suppress errors if they are not otherwise used.
  887. var _ context.Context
  888. var _ grpc.ClientConn
  889. // This is a compile-time assertion to ensure that this generated file
  890. // is compatible with the grpc package it is being compiled against.
  891. const _ = grpc.SupportPackageIsVersion4
  892. // Client API for SeaweedFiler service
  893. type SeaweedFilerClient interface {
  894. LookupDirectoryEntry(ctx context.Context, in *LookupDirectoryEntryRequest, opts ...grpc.CallOption) (*LookupDirectoryEntryResponse, error)
  895. ListEntries(ctx context.Context, in *ListEntriesRequest, opts ...grpc.CallOption) (SeaweedFiler_ListEntriesClient, error)
  896. CreateEntry(ctx context.Context, in *CreateEntryRequest, opts ...grpc.CallOption) (*CreateEntryResponse, error)
  897. UpdateEntry(ctx context.Context, in *UpdateEntryRequest, opts ...grpc.CallOption) (*UpdateEntryResponse, error)
  898. DeleteEntry(ctx context.Context, in *DeleteEntryRequest, opts ...grpc.CallOption) (*DeleteEntryResponse, error)
  899. AtomicRenameEntry(ctx context.Context, in *AtomicRenameEntryRequest, opts ...grpc.CallOption) (*AtomicRenameEntryResponse, error)
  900. AssignVolume(ctx context.Context, in *AssignVolumeRequest, opts ...grpc.CallOption) (*AssignVolumeResponse, error)
  901. LookupVolume(ctx context.Context, in *LookupVolumeRequest, opts ...grpc.CallOption) (*LookupVolumeResponse, error)
  902. DeleteCollection(ctx context.Context, in *DeleteCollectionRequest, opts ...grpc.CallOption) (*DeleteCollectionResponse, error)
  903. Statistics(ctx context.Context, in *StatisticsRequest, opts ...grpc.CallOption) (*StatisticsResponse, error)
  904. GetFilerConfiguration(ctx context.Context, in *GetFilerConfigurationRequest, opts ...grpc.CallOption) (*GetFilerConfigurationResponse, error)
  905. }
  906. type seaweedFilerClient struct {
  907. cc *grpc.ClientConn
  908. }
  909. func NewSeaweedFilerClient(cc *grpc.ClientConn) SeaweedFilerClient {
  910. return &seaweedFilerClient{cc}
  911. }
  912. func (c *seaweedFilerClient) LookupDirectoryEntry(ctx context.Context, in *LookupDirectoryEntryRequest, opts ...grpc.CallOption) (*LookupDirectoryEntryResponse, error) {
  913. out := new(LookupDirectoryEntryResponse)
  914. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/LookupDirectoryEntry", in, out, c.cc, opts...)
  915. if err != nil {
  916. return nil, err
  917. }
  918. return out, nil
  919. }
  920. func (c *seaweedFilerClient) ListEntries(ctx context.Context, in *ListEntriesRequest, opts ...grpc.CallOption) (SeaweedFiler_ListEntriesClient, error) {
  921. stream, err := grpc.NewClientStream(ctx, &_SeaweedFiler_serviceDesc.Streams[0], c.cc, "/filer_pb.SeaweedFiler/ListEntries", opts...)
  922. if err != nil {
  923. return nil, err
  924. }
  925. x := &seaweedFilerListEntriesClient{stream}
  926. if err := x.ClientStream.SendMsg(in); err != nil {
  927. return nil, err
  928. }
  929. if err := x.ClientStream.CloseSend(); err != nil {
  930. return nil, err
  931. }
  932. return x, nil
  933. }
  934. type SeaweedFiler_ListEntriesClient interface {
  935. Recv() (*ListEntriesResponse, error)
  936. grpc.ClientStream
  937. }
  938. type seaweedFilerListEntriesClient struct {
  939. grpc.ClientStream
  940. }
  941. func (x *seaweedFilerListEntriesClient) Recv() (*ListEntriesResponse, error) {
  942. m := new(ListEntriesResponse)
  943. if err := x.ClientStream.RecvMsg(m); err != nil {
  944. return nil, err
  945. }
  946. return m, nil
  947. }
  948. func (c *seaweedFilerClient) CreateEntry(ctx context.Context, in *CreateEntryRequest, opts ...grpc.CallOption) (*CreateEntryResponse, error) {
  949. out := new(CreateEntryResponse)
  950. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/CreateEntry", in, out, c.cc, opts...)
  951. if err != nil {
  952. return nil, err
  953. }
  954. return out, nil
  955. }
  956. func (c *seaweedFilerClient) UpdateEntry(ctx context.Context, in *UpdateEntryRequest, opts ...grpc.CallOption) (*UpdateEntryResponse, error) {
  957. out := new(UpdateEntryResponse)
  958. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/UpdateEntry", in, out, c.cc, opts...)
  959. if err != nil {
  960. return nil, err
  961. }
  962. return out, nil
  963. }
  964. func (c *seaweedFilerClient) DeleteEntry(ctx context.Context, in *DeleteEntryRequest, opts ...grpc.CallOption) (*DeleteEntryResponse, error) {
  965. out := new(DeleteEntryResponse)
  966. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/DeleteEntry", in, out, c.cc, opts...)
  967. if err != nil {
  968. return nil, err
  969. }
  970. return out, nil
  971. }
  972. func (c *seaweedFilerClient) AtomicRenameEntry(ctx context.Context, in *AtomicRenameEntryRequest, opts ...grpc.CallOption) (*AtomicRenameEntryResponse, error) {
  973. out := new(AtomicRenameEntryResponse)
  974. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/AtomicRenameEntry", in, out, c.cc, opts...)
  975. if err != nil {
  976. return nil, err
  977. }
  978. return out, nil
  979. }
  980. func (c *seaweedFilerClient) AssignVolume(ctx context.Context, in *AssignVolumeRequest, opts ...grpc.CallOption) (*AssignVolumeResponse, error) {
  981. out := new(AssignVolumeResponse)
  982. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/AssignVolume", in, out, c.cc, opts...)
  983. if err != nil {
  984. return nil, err
  985. }
  986. return out, nil
  987. }
  988. func (c *seaweedFilerClient) LookupVolume(ctx context.Context, in *LookupVolumeRequest, opts ...grpc.CallOption) (*LookupVolumeResponse, error) {
  989. out := new(LookupVolumeResponse)
  990. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/LookupVolume", in, out, c.cc, opts...)
  991. if err != nil {
  992. return nil, err
  993. }
  994. return out, nil
  995. }
  996. func (c *seaweedFilerClient) DeleteCollection(ctx context.Context, in *DeleteCollectionRequest, opts ...grpc.CallOption) (*DeleteCollectionResponse, error) {
  997. out := new(DeleteCollectionResponse)
  998. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/DeleteCollection", in, out, c.cc, opts...)
  999. if err != nil {
  1000. return nil, err
  1001. }
  1002. return out, nil
  1003. }
  1004. func (c *seaweedFilerClient) Statistics(ctx context.Context, in *StatisticsRequest, opts ...grpc.CallOption) (*StatisticsResponse, error) {
  1005. out := new(StatisticsResponse)
  1006. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/Statistics", in, out, c.cc, opts...)
  1007. if err != nil {
  1008. return nil, err
  1009. }
  1010. return out, nil
  1011. }
  1012. func (c *seaweedFilerClient) GetFilerConfiguration(ctx context.Context, in *GetFilerConfigurationRequest, opts ...grpc.CallOption) (*GetFilerConfigurationResponse, error) {
  1013. out := new(GetFilerConfigurationResponse)
  1014. err := grpc.Invoke(ctx, "/filer_pb.SeaweedFiler/GetFilerConfiguration", in, out, c.cc, opts...)
  1015. if err != nil {
  1016. return nil, err
  1017. }
  1018. return out, nil
  1019. }
  1020. // Server API for SeaweedFiler service
  1021. type SeaweedFilerServer interface {
  1022. LookupDirectoryEntry(context.Context, *LookupDirectoryEntryRequest) (*LookupDirectoryEntryResponse, error)
  1023. ListEntries(*ListEntriesRequest, SeaweedFiler_ListEntriesServer) error
  1024. CreateEntry(context.Context, *CreateEntryRequest) (*CreateEntryResponse, error)
  1025. UpdateEntry(context.Context, *UpdateEntryRequest) (*UpdateEntryResponse, error)
  1026. DeleteEntry(context.Context, *DeleteEntryRequest) (*DeleteEntryResponse, error)
  1027. AtomicRenameEntry(context.Context, *AtomicRenameEntryRequest) (*AtomicRenameEntryResponse, error)
  1028. AssignVolume(context.Context, *AssignVolumeRequest) (*AssignVolumeResponse, error)
  1029. LookupVolume(context.Context, *LookupVolumeRequest) (*LookupVolumeResponse, error)
  1030. DeleteCollection(context.Context, *DeleteCollectionRequest) (*DeleteCollectionResponse, error)
  1031. Statistics(context.Context, *StatisticsRequest) (*StatisticsResponse, error)
  1032. GetFilerConfiguration(context.Context, *GetFilerConfigurationRequest) (*GetFilerConfigurationResponse, error)
  1033. }
  1034. func RegisterSeaweedFilerServer(s *grpc.Server, srv SeaweedFilerServer) {
  1035. s.RegisterService(&_SeaweedFiler_serviceDesc, srv)
  1036. }
  1037. func _SeaweedFiler_LookupDirectoryEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1038. in := new(LookupDirectoryEntryRequest)
  1039. if err := dec(in); err != nil {
  1040. return nil, err
  1041. }
  1042. if interceptor == nil {
  1043. return srv.(SeaweedFilerServer).LookupDirectoryEntry(ctx, in)
  1044. }
  1045. info := &grpc.UnaryServerInfo{
  1046. Server: srv,
  1047. FullMethod: "/filer_pb.SeaweedFiler/LookupDirectoryEntry",
  1048. }
  1049. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1050. return srv.(SeaweedFilerServer).LookupDirectoryEntry(ctx, req.(*LookupDirectoryEntryRequest))
  1051. }
  1052. return interceptor(ctx, in, info, handler)
  1053. }
  1054. func _SeaweedFiler_ListEntries_Handler(srv interface{}, stream grpc.ServerStream) error {
  1055. m := new(ListEntriesRequest)
  1056. if err := stream.RecvMsg(m); err != nil {
  1057. return err
  1058. }
  1059. return srv.(SeaweedFilerServer).ListEntries(m, &seaweedFilerListEntriesServer{stream})
  1060. }
  1061. type SeaweedFiler_ListEntriesServer interface {
  1062. Send(*ListEntriesResponse) error
  1063. grpc.ServerStream
  1064. }
  1065. type seaweedFilerListEntriesServer struct {
  1066. grpc.ServerStream
  1067. }
  1068. func (x *seaweedFilerListEntriesServer) Send(m *ListEntriesResponse) error {
  1069. return x.ServerStream.SendMsg(m)
  1070. }
  1071. func _SeaweedFiler_CreateEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1072. in := new(CreateEntryRequest)
  1073. if err := dec(in); err != nil {
  1074. return nil, err
  1075. }
  1076. if interceptor == nil {
  1077. return srv.(SeaweedFilerServer).CreateEntry(ctx, in)
  1078. }
  1079. info := &grpc.UnaryServerInfo{
  1080. Server: srv,
  1081. FullMethod: "/filer_pb.SeaweedFiler/CreateEntry",
  1082. }
  1083. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1084. return srv.(SeaweedFilerServer).CreateEntry(ctx, req.(*CreateEntryRequest))
  1085. }
  1086. return interceptor(ctx, in, info, handler)
  1087. }
  1088. func _SeaweedFiler_UpdateEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1089. in := new(UpdateEntryRequest)
  1090. if err := dec(in); err != nil {
  1091. return nil, err
  1092. }
  1093. if interceptor == nil {
  1094. return srv.(SeaweedFilerServer).UpdateEntry(ctx, in)
  1095. }
  1096. info := &grpc.UnaryServerInfo{
  1097. Server: srv,
  1098. FullMethod: "/filer_pb.SeaweedFiler/UpdateEntry",
  1099. }
  1100. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1101. return srv.(SeaweedFilerServer).UpdateEntry(ctx, req.(*UpdateEntryRequest))
  1102. }
  1103. return interceptor(ctx, in, info, handler)
  1104. }
  1105. func _SeaweedFiler_DeleteEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1106. in := new(DeleteEntryRequest)
  1107. if err := dec(in); err != nil {
  1108. return nil, err
  1109. }
  1110. if interceptor == nil {
  1111. return srv.(SeaweedFilerServer).DeleteEntry(ctx, in)
  1112. }
  1113. info := &grpc.UnaryServerInfo{
  1114. Server: srv,
  1115. FullMethod: "/filer_pb.SeaweedFiler/DeleteEntry",
  1116. }
  1117. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1118. return srv.(SeaweedFilerServer).DeleteEntry(ctx, req.(*DeleteEntryRequest))
  1119. }
  1120. return interceptor(ctx, in, info, handler)
  1121. }
  1122. func _SeaweedFiler_AtomicRenameEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1123. in := new(AtomicRenameEntryRequest)
  1124. if err := dec(in); err != nil {
  1125. return nil, err
  1126. }
  1127. if interceptor == nil {
  1128. return srv.(SeaweedFilerServer).AtomicRenameEntry(ctx, in)
  1129. }
  1130. info := &grpc.UnaryServerInfo{
  1131. Server: srv,
  1132. FullMethod: "/filer_pb.SeaweedFiler/AtomicRenameEntry",
  1133. }
  1134. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1135. return srv.(SeaweedFilerServer).AtomicRenameEntry(ctx, req.(*AtomicRenameEntryRequest))
  1136. }
  1137. return interceptor(ctx, in, info, handler)
  1138. }
  1139. func _SeaweedFiler_AssignVolume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1140. in := new(AssignVolumeRequest)
  1141. if err := dec(in); err != nil {
  1142. return nil, err
  1143. }
  1144. if interceptor == nil {
  1145. return srv.(SeaweedFilerServer).AssignVolume(ctx, in)
  1146. }
  1147. info := &grpc.UnaryServerInfo{
  1148. Server: srv,
  1149. FullMethod: "/filer_pb.SeaweedFiler/AssignVolume",
  1150. }
  1151. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1152. return srv.(SeaweedFilerServer).AssignVolume(ctx, req.(*AssignVolumeRequest))
  1153. }
  1154. return interceptor(ctx, in, info, handler)
  1155. }
  1156. func _SeaweedFiler_LookupVolume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1157. in := new(LookupVolumeRequest)
  1158. if err := dec(in); err != nil {
  1159. return nil, err
  1160. }
  1161. if interceptor == nil {
  1162. return srv.(SeaweedFilerServer).LookupVolume(ctx, in)
  1163. }
  1164. info := &grpc.UnaryServerInfo{
  1165. Server: srv,
  1166. FullMethod: "/filer_pb.SeaweedFiler/LookupVolume",
  1167. }
  1168. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1169. return srv.(SeaweedFilerServer).LookupVolume(ctx, req.(*LookupVolumeRequest))
  1170. }
  1171. return interceptor(ctx, in, info, handler)
  1172. }
  1173. func _SeaweedFiler_DeleteCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1174. in := new(DeleteCollectionRequest)
  1175. if err := dec(in); err != nil {
  1176. return nil, err
  1177. }
  1178. if interceptor == nil {
  1179. return srv.(SeaweedFilerServer).DeleteCollection(ctx, in)
  1180. }
  1181. info := &grpc.UnaryServerInfo{
  1182. Server: srv,
  1183. FullMethod: "/filer_pb.SeaweedFiler/DeleteCollection",
  1184. }
  1185. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1186. return srv.(SeaweedFilerServer).DeleteCollection(ctx, req.(*DeleteCollectionRequest))
  1187. }
  1188. return interceptor(ctx, in, info, handler)
  1189. }
  1190. func _SeaweedFiler_Statistics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1191. in := new(StatisticsRequest)
  1192. if err := dec(in); err != nil {
  1193. return nil, err
  1194. }
  1195. if interceptor == nil {
  1196. return srv.(SeaweedFilerServer).Statistics(ctx, in)
  1197. }
  1198. info := &grpc.UnaryServerInfo{
  1199. Server: srv,
  1200. FullMethod: "/filer_pb.SeaweedFiler/Statistics",
  1201. }
  1202. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1203. return srv.(SeaweedFilerServer).Statistics(ctx, req.(*StatisticsRequest))
  1204. }
  1205. return interceptor(ctx, in, info, handler)
  1206. }
  1207. func _SeaweedFiler_GetFilerConfiguration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1208. in := new(GetFilerConfigurationRequest)
  1209. if err := dec(in); err != nil {
  1210. return nil, err
  1211. }
  1212. if interceptor == nil {
  1213. return srv.(SeaweedFilerServer).GetFilerConfiguration(ctx, in)
  1214. }
  1215. info := &grpc.UnaryServerInfo{
  1216. Server: srv,
  1217. FullMethod: "/filer_pb.SeaweedFiler/GetFilerConfiguration",
  1218. }
  1219. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1220. return srv.(SeaweedFilerServer).GetFilerConfiguration(ctx, req.(*GetFilerConfigurationRequest))
  1221. }
  1222. return interceptor(ctx, in, info, handler)
  1223. }
  1224. var _SeaweedFiler_serviceDesc = grpc.ServiceDesc{
  1225. ServiceName: "filer_pb.SeaweedFiler",
  1226. HandlerType: (*SeaweedFilerServer)(nil),
  1227. Methods: []grpc.MethodDesc{
  1228. {
  1229. MethodName: "LookupDirectoryEntry",
  1230. Handler: _SeaweedFiler_LookupDirectoryEntry_Handler,
  1231. },
  1232. {
  1233. MethodName: "CreateEntry",
  1234. Handler: _SeaweedFiler_CreateEntry_Handler,
  1235. },
  1236. {
  1237. MethodName: "UpdateEntry",
  1238. Handler: _SeaweedFiler_UpdateEntry_Handler,
  1239. },
  1240. {
  1241. MethodName: "DeleteEntry",
  1242. Handler: _SeaweedFiler_DeleteEntry_Handler,
  1243. },
  1244. {
  1245. MethodName: "AtomicRenameEntry",
  1246. Handler: _SeaweedFiler_AtomicRenameEntry_Handler,
  1247. },
  1248. {
  1249. MethodName: "AssignVolume",
  1250. Handler: _SeaweedFiler_AssignVolume_Handler,
  1251. },
  1252. {
  1253. MethodName: "LookupVolume",
  1254. Handler: _SeaweedFiler_LookupVolume_Handler,
  1255. },
  1256. {
  1257. MethodName: "DeleteCollection",
  1258. Handler: _SeaweedFiler_DeleteCollection_Handler,
  1259. },
  1260. {
  1261. MethodName: "Statistics",
  1262. Handler: _SeaweedFiler_Statistics_Handler,
  1263. },
  1264. {
  1265. MethodName: "GetFilerConfiguration",
  1266. Handler: _SeaweedFiler_GetFilerConfiguration_Handler,
  1267. },
  1268. },
  1269. Streams: []grpc.StreamDesc{
  1270. {
  1271. StreamName: "ListEntries",
  1272. Handler: _SeaweedFiler_ListEntries_Handler,
  1273. ServerStreams: true,
  1274. },
  1275. },
  1276. Metadata: "filer.proto",
  1277. }
  1278. func init() { proto.RegisterFile("filer.proto", fileDescriptor0) }
  1279. var fileDescriptor0 = []byte{
  1280. // 1633 bytes of a gzipped FileDescriptorProto
  1281. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xb4, 0x18, 0x4b, 0x6f, 0xdc, 0xc6,
  1282. 0x59, 0xdc, 0x37, 0xbf, 0xdd, 0xb5, 0xa5, 0x59, 0xc9, 0x5e, 0xaf, 0x1e, 0x95, 0xa9, 0xda, 0x55,
  1283. 0x61, 0x43, 0x35, 0x54, 0x1f, 0xec, 0xba, 0x3d, 0xd8, 0x7a, 0x14, 0x42, 0xe5, 0x07, 0x28, 0xbb,
  1284. 0x68, 0x11, 0x20, 0x04, 0x45, 0xce, 0xae, 0x26, 0x22, 0x39, 0x9b, 0xe1, 0x50, 0x92, 0xf3, 0x13,
  1285. 0x72, 0xcc, 0x31, 0x40, 0xce, 0xf9, 0x13, 0x41, 0x2e, 0x41, 0x90, 0x7f, 0x93, 0x63, 0xce, 0xc1,
  1286. 0xcc, 0x90, 0xdc, 0xe1, 0x72, 0x25, 0xd9, 0x08, 0x7c, 0x9b, 0xf9, 0xde, 0xef, 0x6f, 0x48, 0x68,
  1287. 0x0f, 0x49, 0x80, 0xd9, 0xd6, 0x98, 0x51, 0x4e, 0x51, 0x4b, 0x5e, 0x9c, 0xf1, 0xb1, 0xf5, 0x1a,
  1288. 0x96, 0x0f, 0x29, 0x3d, 0x4d, 0xc6, 0xbb, 0x84, 0x61, 0x8f, 0x53, 0xf6, 0x7e, 0x2f, 0xe2, 0xec,
  1289. 0xbd, 0x8d, 0xbf, 0x4c, 0x70, 0xcc, 0xd1, 0x0a, 0x98, 0x7e, 0x86, 0xe8, 0x1b, 0xeb, 0xc6, 0xa6,
  1290. 0x69, 0x4f, 0x00, 0x08, 0x41, 0x2d, 0x72, 0x43, 0xdc, 0xaf, 0x48, 0x84, 0x3c, 0x5b, 0x7b, 0xb0,
  1291. 0x32, 0x5b, 0x60, 0x3c, 0xa6, 0x51, 0x8c, 0xd1, 0x3d, 0xa8, 0x63, 0x01, 0x90, 0xd2, 0xda, 0xdb,
  1292. 0x37, 0xb7, 0x32, 0x53, 0xb6, 0x14, 0x9d, 0xc2, 0x5a, 0x3f, 0x1a, 0x80, 0x0e, 0x49, 0xcc, 0x05,
  1293. 0x90, 0xe0, 0xf8, 0xc3, 0xec, 0xb9, 0x05, 0x8d, 0x31, 0xc3, 0x43, 0x72, 0x91, 0x5a, 0x94, 0xde,
  1294. 0xd0, 0x43, 0x58, 0x88, 0xb9, 0xcb, 0xf8, 0x3e, 0xa3, 0xe1, 0x3e, 0x09, 0xf0, 0x2b, 0x61, 0x74,
  1295. 0x55, 0x92, 0x94, 0x11, 0x68, 0x0b, 0x10, 0x89, 0xbc, 0x20, 0x89, 0xc9, 0x19, 0x3e, 0xca, 0xb0,
  1296. 0xfd, 0xda, 0xba, 0xb1, 0xd9, 0xb2, 0x67, 0x60, 0xd0, 0x22, 0xd4, 0x03, 0x12, 0x12, 0xde, 0xaf,
  1297. 0xaf, 0x1b, 0x9b, 0x5d, 0x5b, 0x5d, 0xac, 0x7f, 0x42, 0xaf, 0x60, 0xff, 0xc7, 0xb9, 0xff, 0x5d,
  1298. 0x05, 0xea, 0x12, 0x90, 0xc7, 0xd8, 0x98, 0xc4, 0x18, 0xdd, 0x85, 0x0e, 0x89, 0x9d, 0x49, 0x20,
  1299. 0x2a, 0xd2, 0xb6, 0x36, 0x89, 0xf3, 0x98, 0xa3, 0x07, 0xd0, 0xf0, 0x4e, 0x92, 0xe8, 0x34, 0xee,
  1300. 0x57, 0xd7, 0xab, 0x9b, 0xed, 0xed, 0xde, 0x44, 0x91, 0x70, 0x74, 0x47, 0xe0, 0xec, 0x94, 0x04,
  1301. 0x3d, 0x01, 0x70, 0x39, 0x67, 0xe4, 0x38, 0xe1, 0x38, 0x96, 0x9e, 0xb6, 0xb7, 0xfb, 0x1a, 0x43,
  1302. 0x12, 0xe3, 0xe7, 0x39, 0xde, 0xd6, 0x68, 0xd1, 0x53, 0x68, 0xe1, 0x0b, 0x8e, 0x23, 0x1f, 0xfb,
  1303. 0xfd, 0xba, 0x54, 0xb4, 0x3a, 0xe5, 0xd1, 0xd6, 0x5e, 0x8a, 0x57, 0xfe, 0xe5, 0xe4, 0x83, 0x67,
  1304. 0xd0, 0x2d, 0xa0, 0xd0, 0x3c, 0x54, 0x4f, 0x71, 0x96, 0x55, 0x71, 0x14, 0x91, 0x3d, 0x73, 0x83,
  1305. 0x44, 0x15, 0x58, 0xc7, 0x56, 0x97, 0x7f, 0x54, 0x9e, 0x18, 0xd6, 0x2e, 0x98, 0xfb, 0x49, 0x10,
  1306. 0xe4, 0x8c, 0x3e, 0x61, 0x19, 0xa3, 0x4f, 0xd8, 0x24, 0xca, 0x95, 0x2b, 0xa3, 0xfc, 0x83, 0x01,
  1307. 0x0b, 0x7b, 0x67, 0x38, 0xe2, 0xaf, 0x28, 0x27, 0x43, 0xe2, 0xb9, 0x9c, 0xd0, 0x08, 0x3d, 0x04,
  1308. 0x93, 0x06, 0xbe, 0x73, 0x65, 0x9a, 0x5a, 0x34, 0x48, 0xad, 0x7e, 0x08, 0x66, 0x84, 0xcf, 0x9d,
  1309. 0x2b, 0xd5, 0xb5, 0x22, 0x7c, 0xae, 0xa8, 0x37, 0xa0, 0xeb, 0xe3, 0x00, 0x73, 0xec, 0xe4, 0xd9,
  1310. 0x11, 0xa9, 0xeb, 0x28, 0xe0, 0x8e, 0x4a, 0xc7, 0x7d, 0xb8, 0x29, 0x44, 0x8e, 0x5d, 0x86, 0x23,
  1311. 0xee, 0x8c, 0x5d, 0x7e, 0x22, 0x73, 0x62, 0xda, 0xdd, 0x08, 0x9f, 0xbf, 0x91, 0xd0, 0x37, 0x2e,
  1312. 0x3f, 0xb1, 0x7e, 0x33, 0xc0, 0xcc, 0x93, 0x89, 0x6e, 0x43, 0x53, 0xa8, 0x75, 0x88, 0x9f, 0x46,
  1313. 0xa2, 0x21, 0xae, 0x07, 0xbe, 0xe8, 0x0a, 0x3a, 0x1c, 0xc6, 0x98, 0x4b, 0xf3, 0xaa, 0x76, 0x7a,
  1314. 0x13, 0x95, 0x15, 0x93, 0xaf, 0x54, 0x23, 0xd4, 0x6c, 0x79, 0x16, 0x11, 0x0f, 0x39, 0x09, 0xb1,
  1315. 0x54, 0x58, 0xb5, 0xd5, 0x05, 0xf5, 0xa0, 0x8e, 0x1d, 0xee, 0x8e, 0x64, 0x85, 0x9b, 0x76, 0x0d,
  1316. 0xbf, 0x75, 0x47, 0xe8, 0xcf, 0x70, 0x23, 0xa6, 0x09, 0xf3, 0xb0, 0x93, 0xa9, 0x6d, 0x48, 0x6c,
  1317. 0x47, 0x41, 0xf7, 0x95, 0x72, 0x0b, 0xaa, 0x43, 0xe2, 0xf7, 0x9b, 0x32, 0x30, 0xf3, 0xc5, 0x22,
  1318. 0x3c, 0xf0, 0x6d, 0x81, 0x44, 0x7f, 0x03, 0xc8, 0x25, 0xf9, 0xfd, 0xd6, 0x25, 0xa4, 0x66, 0x26,
  1319. 0xd7, 0xb7, 0xfe, 0x07, 0x8d, 0x54, 0xfc, 0x32, 0x98, 0x67, 0x34, 0x48, 0xc2, 0xdc, 0xed, 0xae,
  1320. 0xdd, 0x52, 0x80, 0x03, 0x1f, 0xdd, 0x01, 0x39, 0xe7, 0x1c, 0x51, 0x55, 0x15, 0xe9, 0xa4, 0x8c,
  1321. 0xd0, 0x7f, 0xb0, 0x9c, 0x14, 0x1e, 0xa5, 0xa7, 0x44, 0x79, 0xdf, 0xb4, 0xd3, 0x9b, 0xf5, 0x6b,
  1322. 0x05, 0x6e, 0x14, 0xcb, 0x5d, 0xa8, 0x90, 0x52, 0x64, 0xac, 0x0c, 0x29, 0x46, 0x8a, 0x3d, 0x2a,
  1323. 0xc4, 0xab, 0xa2, 0xc7, 0x2b, 0x63, 0x09, 0xa9, 0xaf, 0x14, 0x74, 0x15, 0xcb, 0x4b, 0xea, 0x63,
  1324. 0x51, 0xad, 0x09, 0xf1, 0x65, 0x80, 0xbb, 0xb6, 0x38, 0x0a, 0xc8, 0x88, 0xf8, 0xe9, 0xf8, 0x10,
  1325. 0x47, 0x69, 0x1e, 0x93, 0x72, 0x1b, 0x2a, 0x65, 0xea, 0x26, 0x52, 0x16, 0x0a, 0x68, 0x53, 0xe5,
  1326. 0x41, 0x9c, 0xd1, 0x3a, 0xb4, 0x19, 0x1e, 0x07, 0x69, 0xf5, 0xca, 0xf0, 0x99, 0xb6, 0x0e, 0x42,
  1327. 0x6b, 0x00, 0x1e, 0x0d, 0x02, 0xec, 0x49, 0x02, 0x53, 0x12, 0x68, 0x10, 0x51, 0x39, 0x9c, 0x07,
  1328. 0x4e, 0x8c, 0xbd, 0x3e, 0xac, 0x1b, 0x9b, 0x75, 0xbb, 0xc1, 0x79, 0x70, 0x84, 0x3d, 0xe1, 0x47,
  1329. 0x12, 0x63, 0xe6, 0xc8, 0x01, 0xd4, 0x96, 0x7c, 0x2d, 0x01, 0x90, 0x63, 0x72, 0x15, 0x60, 0xc4,
  1330. 0x68, 0x32, 0x56, 0xd8, 0xce, 0x7a, 0x55, 0xcc, 0x62, 0x09, 0x91, 0xe8, 0x7b, 0x70, 0x23, 0x7e,
  1331. 0x1f, 0x06, 0x24, 0x3a, 0x75, 0xb8, 0xcb, 0x46, 0x98, 0xf7, 0xbb, 0xaa, 0x86, 0x53, 0xe8, 0x5b,
  1332. 0x09, 0xb4, 0xc6, 0x80, 0x76, 0x18, 0x76, 0x39, 0xfe, 0x88, 0xb5, 0xf3, 0x61, 0xdd, 0x8d, 0x96,
  1333. 0xa0, 0x41, 0x1d, 0x7c, 0xe1, 0x05, 0x69, 0x93, 0xd5, 0xe9, 0xde, 0x85, 0x17, 0x58, 0x0f, 0xa0,
  1334. 0x57, 0xd0, 0x98, 0x0e, 0xe6, 0x45, 0xa8, 0x63, 0xc6, 0x68, 0x36, 0x46, 0xd4, 0xc5, 0xfa, 0x3f,
  1335. 0xa0, 0x77, 0x63, 0xff, 0x53, 0x98, 0x67, 0x2d, 0x41, 0xaf, 0x20, 0x5a, 0xd9, 0x61, 0xfd, 0x6c,
  1336. 0x00, 0xda, 0x95, 0xd3, 0xe0, 0x8f, 0x2d, 0x62, 0xd1, 0x9f, 0x62, 0x49, 0xa8, 0x69, 0xe3, 0xbb,
  1337. 0xdc, 0x4d, 0x57, 0x58, 0x87, 0xc4, 0x4a, 0xfe, 0xae, 0xcb, 0xdd, 0x74, 0x95, 0x30, 0xec, 0x25,
  1338. 0x4c, 0x6c, 0x35, 0x59, 0x84, 0x72, 0x95, 0xd8, 0x19, 0x08, 0x3d, 0x86, 0x5b, 0x64, 0x14, 0x51,
  1339. 0x86, 0x27, 0x64, 0x8e, 0x0a, 0x55, 0x43, 0x12, 0x2f, 0x2a, 0x6c, 0xce, 0xb0, 0x27, 0x23, 0xb7,
  1340. 0x04, 0xbd, 0x82, 0x1b, 0xa9, 0x7b, 0xdf, 0x1a, 0xd0, 0x7f, 0xce, 0x69, 0x48, 0x3c, 0x1b, 0x0b,
  1341. 0x33, 0x0b, 0x4e, 0x6e, 0x40, 0x57, 0x4c, 0xde, 0x69, 0x47, 0x3b, 0x34, 0xf0, 0x27, 0x9b, 0xed,
  1342. 0x0e, 0x88, 0xe1, 0xeb, 0x68, 0xfe, 0x36, 0x69, 0xe0, 0xcb, 0x9a, 0xdb, 0x00, 0x31, 0x21, 0x35,
  1343. 0x7e, 0xb5, 0xe3, 0x3b, 0x11, 0x3e, 0x2f, 0xf0, 0x0b, 0x22, 0xc9, 0xaf, 0xc6, 0x6a, 0x33, 0xc2,
  1344. 0xe7, 0x82, 0xdf, 0x5a, 0x86, 0x3b, 0x33, 0x6c, 0x4b, 0x2d, 0xff, 0xde, 0x80, 0xde, 0xf3, 0x38,
  1345. 0x26, 0xa3, 0xe8, 0xbf, 0x72, 0xc0, 0x64, 0x46, 0x2f, 0x42, 0xdd, 0xa3, 0x49, 0xc4, 0xa5, 0xb1,
  1346. 0x75, 0x5b, 0x5d, 0xa6, 0x7a, 0xae, 0x52, 0xea, 0xb9, 0xa9, 0xae, 0xad, 0x96, 0xbb, 0x56, 0xeb,
  1347. 0xca, 0x5a, 0xa1, 0x2b, 0xff, 0x04, 0x6d, 0x91, 0x4e, 0xc7, 0xc3, 0x11, 0xc7, 0x2c, 0x9d, 0xc9,
  1348. 0x20, 0x40, 0x3b, 0x12, 0x62, 0x7d, 0x6d, 0xc0, 0x62, 0xd1, 0xd2, 0xb4, 0xc6, 0x2f, 0x5d, 0x11,
  1349. 0x62, 0x26, 0xb1, 0x20, 0x35, 0x53, 0x1c, 0x45, 0x77, 0x8f, 0x93, 0xe3, 0x80, 0x78, 0x8e, 0x40,
  1350. 0x28, 0xf3, 0x4c, 0x05, 0x79, 0xc7, 0x82, 0x89, 0xd3, 0x35, 0xdd, 0x69, 0x04, 0x35, 0x37, 0xe1,
  1351. 0x27, 0xd9, 0x9a, 0x10, 0x67, 0xeb, 0x31, 0xf4, 0xd4, 0x7b, 0xb0, 0x18, 0xb5, 0x55, 0x80, 0x7c,
  1352. 0x70, 0xc7, 0x7d, 0x43, 0x4d, 0x8f, 0x6c, 0x72, 0xc7, 0xd6, 0xbf, 0xc0, 0x3c, 0xa4, 0x2a, 0x10,
  1353. 0x31, 0x7a, 0x04, 0x66, 0x90, 0x5d, 0x24, 0x69, 0x7b, 0x1b, 0x4d, 0x9a, 0x2a, 0xa3, 0xb3, 0x27,
  1354. 0x44, 0xd6, 0x33, 0x68, 0x65, 0xe0, 0xcc, 0x37, 0xe3, 0x32, 0xdf, 0x2a, 0x53, 0xbe, 0x59, 0x3f,
  1355. 0x19, 0xb0, 0x58, 0x34, 0x39, 0x0d, 0xdf, 0x3b, 0xe8, 0xe6, 0x2a, 0x9c, 0xd0, 0x1d, 0xa7, 0xb6,
  1356. 0x3c, 0xd2, 0x6d, 0x29, 0xb3, 0xe5, 0x06, 0xc6, 0x2f, 0xdd, 0xb1, 0x2a, 0xa9, 0x4e, 0xa0, 0x81,
  1357. 0x06, 0x6f, 0x61, 0xa1, 0x44, 0x32, 0xe3, 0x31, 0xf4, 0x57, 0xfd, 0x31, 0x54, 0x78, 0xd0, 0xe5,
  1358. 0xdc, 0xfa, 0x0b, 0xe9, 0x29, 0xdc, 0x56, 0xfd, 0xb7, 0x93, 0x17, 0x5d, 0x16, 0xfb, 0x62, 0x6d,
  1359. 0x1a, 0xd3, 0xb5, 0x69, 0x0d, 0xa0, 0x5f, 0x66, 0x4d, 0xbb, 0x60, 0x04, 0x0b, 0x47, 0xdc, 0xe5,
  1360. 0x24, 0xe6, 0xc4, 0xcb, 0x5f, 0xe5, 0x53, 0xc5, 0x6c, 0x5c, 0xb7, 0x82, 0xca, 0xed, 0x30, 0x0f,
  1361. 0x55, 0xce, 0xb3, 0x3a, 0x13, 0x47, 0x91, 0x05, 0xa4, 0x6b, 0x4a, 0x73, 0xf0, 0x09, 0x54, 0x89,
  1362. 0x7a, 0xe0, 0x94, 0xbb, 0x81, 0x5a, 0xf1, 0x35, 0xb9, 0xe2, 0x4d, 0x09, 0x91, 0x3b, 0x5e, 0x6d,
  1363. 0x41, 0x5f, 0x61, 0xeb, 0xea, 0x01, 0x20, 0x00, 0x12, 0xb9, 0x0a, 0x20, 0x5b, 0x4a, 0x75, 0x43,
  1364. 0x43, 0xf1, 0x0a, 0xc8, 0x8e, 0x00, 0x58, 0x6b, 0xb0, 0xf2, 0x6f, 0xcc, 0xc5, 0x63, 0x85, 0xed,
  1365. 0xd0, 0x68, 0x48, 0x46, 0x09, 0x73, 0xb5, 0x54, 0x58, 0xdf, 0x18, 0xb0, 0x7a, 0x09, 0x41, 0xea,
  1366. 0x70, 0x1f, 0x9a, 0xa1, 0x1b, 0x73, 0xcc, 0xb2, 0x2e, 0xc9, 0xae, 0xd3, 0xa1, 0xa8, 0x5c, 0x17,
  1367. 0x8a, 0x6a, 0x29, 0x14, 0x4b, 0xd0, 0x08, 0xdd, 0x0b, 0x27, 0x3c, 0x4e, 0x5f, 0x23, 0xf5, 0xd0,
  1368. 0xbd, 0x78, 0x79, 0xbc, 0xfd, 0x4b, 0x13, 0x3a, 0x47, 0xd8, 0x3d, 0xc7, 0xd8, 0x97, 0x86, 0xa1,
  1369. 0x51, 0xd6, 0x10, 0xc5, 0x6f, 0x3a, 0x74, 0x6f, 0xba, 0xf2, 0x67, 0x7e, 0x44, 0x0e, 0xee, 0x5f,
  1370. 0x47, 0x96, 0xd6, 0xd6, 0x1c, 0x7a, 0x05, 0x6d, 0xed, 0xa3, 0x09, 0xad, 0x68, 0x8c, 0xa5, 0x6f,
  1371. 0xc1, 0xc1, 0xea, 0x25, 0xd8, 0x4c, 0xda, 0x23, 0x03, 0x1d, 0x42, 0x5b, 0xdb, 0xf5, 0xba, 0xbc,
  1372. 0xf2, 0xa3, 0x43, 0x97, 0x37, 0xe3, 0x81, 0x60, 0xcd, 0x09, 0x69, 0xda, 0xc6, 0xd6, 0xa5, 0x95,
  1373. 0xdf, 0x08, 0xba, 0xb4, 0x59, 0x6b, 0x5e, 0x4a, 0xd3, 0x16, 0xa4, 0x2e, 0xad, 0xbc, 0xfe, 0x75,
  1374. 0x69, 0xb3, 0xb6, 0xea, 0x1c, 0xfa, 0x1c, 0x16, 0x4a, 0xab, 0x0b, 0x59, 0x13, 0xae, 0xcb, 0x76,
  1375. 0xee, 0x60, 0xe3, 0x4a, 0x9a, 0x5c, 0xfe, 0x6b, 0xe8, 0xe8, 0x2b, 0x05, 0x69, 0x06, 0xcd, 0x58,
  1376. 0x8a, 0x83, 0xb5, 0xcb, 0xd0, 0xba, 0x40, 0x7d, 0x5a, 0xea, 0x02, 0x67, 0xec, 0x0b, 0x5d, 0xe0,
  1377. 0xac, 0x21, 0x6b, 0xcd, 0xa1, 0xcf, 0x60, 0x7e, 0x7a, 0x6a, 0xa1, 0xbb, 0xd3, 0x61, 0x2b, 0x0d,
  1378. 0xc3, 0x81, 0x75, 0x15, 0x49, 0x2e, 0xfc, 0x00, 0x60, 0x32, 0x8c, 0xd0, 0xf2, 0x84, 0xa7, 0x34,
  1379. 0x0c, 0x07, 0x2b, 0xb3, 0x91, 0xb9, 0xa8, 0x2f, 0x60, 0x69, 0x66, 0xc7, 0x23, 0xad, 0x4d, 0xae,
  1380. 0x9a, 0x19, 0x83, 0xbf, 0x5c, 0x4b, 0x97, 0xe9, 0x7a, 0xb1, 0x06, 0xf3, 0xb1, 0x6a, 0xe4, 0x61,
  1381. 0xbc, 0xe5, 0x05, 0x04, 0x47, 0xfc, 0x05, 0x48, 0x8e, 0x37, 0x8c, 0x72, 0x7a, 0xdc, 0x90, 0xbf,
  1382. 0x83, 0xfe, 0xfe, 0x7b, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc5, 0xce, 0x15, 0x02, 0x1d, 0x12, 0x00,
  1383. 0x00,
  1384. }