You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1582 lines
55 KiB

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