raft.pb.go 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212
  1. // Code generated by protoc-gen-gogo.
  2. // source: raft.proto
  3. // DO NOT EDIT!
  4. /*
  5. Package raftpb is a generated protocol buffer package.
  6. It is generated from these files:
  7. raft.proto
  8. It has these top-level messages:
  9. Entry
  10. Snapshot
  11. Message
  12. HardState
  13. ConfChange
  14. */
  15. package raftpb
  16. import proto "github.com/coreos/etcd/Godeps/_workspace/src/code.google.com/p/gogoprotobuf/proto"
  17. import json "encoding/json"
  18. import math "math"
  19. // discarding unused import gogoproto "code.google.com/p/gogoprotobuf/gogoproto/gogo.pb"
  20. import io "io"
  21. import code_google_com_p_gogoprotobuf_proto "github.com/coreos/etcd/Godeps/_workspace/src/code.google.com/p/gogoprotobuf/proto"
  22. // Reference proto, json, and math imports to suppress error if they are not otherwise used.
  23. var _ = proto.Marshal
  24. var _ = &json.SyntaxError{}
  25. var _ = math.Inf
  26. type EntryType int32
  27. const (
  28. EntryNormal EntryType = 0
  29. EntryConfChange EntryType = 1
  30. )
  31. var EntryType_name = map[int32]string{
  32. 0: "EntryNormal",
  33. 1: "EntryConfChange",
  34. }
  35. var EntryType_value = map[string]int32{
  36. "EntryNormal": 0,
  37. "EntryConfChange": 1,
  38. }
  39. func (x EntryType) Enum() *EntryType {
  40. p := new(EntryType)
  41. *p = x
  42. return p
  43. }
  44. func (x EntryType) String() string {
  45. return proto.EnumName(EntryType_name, int32(x))
  46. }
  47. func (x *EntryType) UnmarshalJSON(data []byte) error {
  48. value, err := proto.UnmarshalJSONEnum(EntryType_value, data, "EntryType")
  49. if err != nil {
  50. return err
  51. }
  52. *x = EntryType(value)
  53. return nil
  54. }
  55. type MessageType int32
  56. const (
  57. MsgHup MessageType = 0
  58. MsgBeat MessageType = 1
  59. MsgProp MessageType = 2
  60. MsgApp MessageType = 3
  61. MsgAppResp MessageType = 4
  62. MsgVote MessageType = 5
  63. MsgVoteResp MessageType = 6
  64. MsgSnap MessageType = 7
  65. MsgDenied MessageType = 8
  66. )
  67. var MessageType_name = map[int32]string{
  68. 0: "MsgHup",
  69. 1: "MsgBeat",
  70. 2: "MsgProp",
  71. 3: "MsgApp",
  72. 4: "MsgAppResp",
  73. 5: "MsgVote",
  74. 6: "MsgVoteResp",
  75. 7: "MsgSnap",
  76. 8: "MsgDenied",
  77. }
  78. var MessageType_value = map[string]int32{
  79. "MsgHup": 0,
  80. "MsgBeat": 1,
  81. "MsgProp": 2,
  82. "MsgApp": 3,
  83. "MsgAppResp": 4,
  84. "MsgVote": 5,
  85. "MsgVoteResp": 6,
  86. "MsgSnap": 7,
  87. "MsgDenied": 8,
  88. }
  89. func (x MessageType) Enum() *MessageType {
  90. p := new(MessageType)
  91. *p = x
  92. return p
  93. }
  94. func (x MessageType) String() string {
  95. return proto.EnumName(MessageType_name, int32(x))
  96. }
  97. func (x *MessageType) UnmarshalJSON(data []byte) error {
  98. value, err := proto.UnmarshalJSONEnum(MessageType_value, data, "MessageType")
  99. if err != nil {
  100. return err
  101. }
  102. *x = MessageType(value)
  103. return nil
  104. }
  105. type ConfChangeType int32
  106. const (
  107. ConfChangeAddNode ConfChangeType = 0
  108. ConfChangeRemoveNode ConfChangeType = 1
  109. )
  110. var ConfChangeType_name = map[int32]string{
  111. 0: "ConfChangeAddNode",
  112. 1: "ConfChangeRemoveNode",
  113. }
  114. var ConfChangeType_value = map[string]int32{
  115. "ConfChangeAddNode": 0,
  116. "ConfChangeRemoveNode": 1,
  117. }
  118. func (x ConfChangeType) Enum() *ConfChangeType {
  119. p := new(ConfChangeType)
  120. *p = x
  121. return p
  122. }
  123. func (x ConfChangeType) String() string {
  124. return proto.EnumName(ConfChangeType_name, int32(x))
  125. }
  126. func (x *ConfChangeType) UnmarshalJSON(data []byte) error {
  127. value, err := proto.UnmarshalJSONEnum(ConfChangeType_value, data, "ConfChangeType")
  128. if err != nil {
  129. return err
  130. }
  131. *x = ConfChangeType(value)
  132. return nil
  133. }
  134. type Entry struct {
  135. Type EntryType `protobuf:"varint,1,req,enum=raftpb.EntryType" json:"Type"`
  136. Term uint64 `protobuf:"varint,2,req" json:"Term"`
  137. Index uint64 `protobuf:"varint,3,req" json:"Index"`
  138. Data []byte `protobuf:"bytes,4,opt" json:"Data"`
  139. XXX_unrecognized []byte `json:"-"`
  140. }
  141. func (m *Entry) Reset() { *m = Entry{} }
  142. func (m *Entry) String() string { return proto.CompactTextString(m) }
  143. func (*Entry) ProtoMessage() {}
  144. type Snapshot struct {
  145. Data []byte `protobuf:"bytes,1,req,name=data" json:"data"`
  146. Nodes []uint64 `protobuf:"varint,2,rep,name=nodes" json:"nodes"`
  147. Index uint64 `protobuf:"varint,3,req,name=index" json:"index"`
  148. Term uint64 `protobuf:"varint,4,req,name=term" json:"term"`
  149. RemovedNodes []uint64 `protobuf:"varint,5,rep,name=removed_nodes" json:"removed_nodes"`
  150. XXX_unrecognized []byte `json:"-"`
  151. }
  152. func (m *Snapshot) Reset() { *m = Snapshot{} }
  153. func (m *Snapshot) String() string { return proto.CompactTextString(m) }
  154. func (*Snapshot) ProtoMessage() {}
  155. type Message struct {
  156. Type MessageType `protobuf:"varint,1,req,name=type,enum=raftpb.MessageType" json:"type"`
  157. To uint64 `protobuf:"varint,2,req,name=to" json:"to"`
  158. From uint64 `protobuf:"varint,3,req,name=from" json:"from"`
  159. Term uint64 `protobuf:"varint,4,req,name=term" json:"term"`
  160. LogTerm uint64 `protobuf:"varint,5,req,name=logTerm" json:"logTerm"`
  161. Index uint64 `protobuf:"varint,6,req,name=index" json:"index"`
  162. Entries []Entry `protobuf:"bytes,7,rep,name=entries" json:"entries"`
  163. Commit uint64 `protobuf:"varint,8,req,name=commit" json:"commit"`
  164. Snapshot Snapshot `protobuf:"bytes,9,req,name=snapshot" json:"snapshot"`
  165. Reject bool `protobuf:"varint,10,req,name=reject" json:"reject"`
  166. XXX_unrecognized []byte `json:"-"`
  167. }
  168. func (m *Message) Reset() { *m = Message{} }
  169. func (m *Message) String() string { return proto.CompactTextString(m) }
  170. func (*Message) ProtoMessage() {}
  171. type HardState struct {
  172. Term uint64 `protobuf:"varint,1,req,name=term" json:"term"`
  173. Vote uint64 `protobuf:"varint,2,req,name=vote" json:"vote"`
  174. Commit uint64 `protobuf:"varint,3,req,name=commit" json:"commit"`
  175. XXX_unrecognized []byte `json:"-"`
  176. }
  177. func (m *HardState) Reset() { *m = HardState{} }
  178. func (m *HardState) String() string { return proto.CompactTextString(m) }
  179. func (*HardState) ProtoMessage() {}
  180. type ConfChange struct {
  181. ID uint64 `protobuf:"varint,1,req" json:"ID"`
  182. Type ConfChangeType `protobuf:"varint,2,req,enum=raftpb.ConfChangeType" json:"Type"`
  183. NodeID uint64 `protobuf:"varint,3,req" json:"NodeID"`
  184. Context []byte `protobuf:"bytes,4,opt" json:"Context"`
  185. XXX_unrecognized []byte `json:"-"`
  186. }
  187. func (m *ConfChange) Reset() { *m = ConfChange{} }
  188. func (m *ConfChange) String() string { return proto.CompactTextString(m) }
  189. func (*ConfChange) ProtoMessage() {}
  190. func init() {
  191. proto.RegisterEnum("raftpb.EntryType", EntryType_name, EntryType_value)
  192. proto.RegisterEnum("raftpb.MessageType", MessageType_name, MessageType_value)
  193. proto.RegisterEnum("raftpb.ConfChangeType", ConfChangeType_name, ConfChangeType_value)
  194. }
  195. func (m *Entry) Unmarshal(data []byte) error {
  196. l := len(data)
  197. index := 0
  198. for index < l {
  199. var wire uint64
  200. for shift := uint(0); ; shift += 7 {
  201. if index >= l {
  202. return io.ErrUnexpectedEOF
  203. }
  204. b := data[index]
  205. index++
  206. wire |= (uint64(b) & 0x7F) << shift
  207. if b < 0x80 {
  208. break
  209. }
  210. }
  211. fieldNum := int32(wire >> 3)
  212. wireType := int(wire & 0x7)
  213. switch fieldNum {
  214. case 1:
  215. if wireType != 0 {
  216. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  217. }
  218. for shift := uint(0); ; shift += 7 {
  219. if index >= l {
  220. return io.ErrUnexpectedEOF
  221. }
  222. b := data[index]
  223. index++
  224. m.Type |= (EntryType(b) & 0x7F) << shift
  225. if b < 0x80 {
  226. break
  227. }
  228. }
  229. case 2:
  230. if wireType != 0 {
  231. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  232. }
  233. for shift := uint(0); ; shift += 7 {
  234. if index >= l {
  235. return io.ErrUnexpectedEOF
  236. }
  237. b := data[index]
  238. index++
  239. m.Term |= (uint64(b) & 0x7F) << shift
  240. if b < 0x80 {
  241. break
  242. }
  243. }
  244. case 3:
  245. if wireType != 0 {
  246. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  247. }
  248. for shift := uint(0); ; shift += 7 {
  249. if index >= l {
  250. return io.ErrUnexpectedEOF
  251. }
  252. b := data[index]
  253. index++
  254. m.Index |= (uint64(b) & 0x7F) << shift
  255. if b < 0x80 {
  256. break
  257. }
  258. }
  259. case 4:
  260. if wireType != 2 {
  261. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  262. }
  263. var byteLen int
  264. for shift := uint(0); ; shift += 7 {
  265. if index >= l {
  266. return io.ErrUnexpectedEOF
  267. }
  268. b := data[index]
  269. index++
  270. byteLen |= (int(b) & 0x7F) << shift
  271. if b < 0x80 {
  272. break
  273. }
  274. }
  275. postIndex := index + byteLen
  276. if postIndex > l {
  277. return io.ErrUnexpectedEOF
  278. }
  279. m.Data = append(m.Data, data[index:postIndex]...)
  280. index = postIndex
  281. default:
  282. var sizeOfWire int
  283. for {
  284. sizeOfWire++
  285. wire >>= 7
  286. if wire == 0 {
  287. break
  288. }
  289. }
  290. index -= sizeOfWire
  291. skippy, err := code_google_com_p_gogoprotobuf_proto.Skip(data[index:])
  292. if err != nil {
  293. return err
  294. }
  295. if (index + skippy) > l {
  296. return io.ErrUnexpectedEOF
  297. }
  298. m.XXX_unrecognized = append(m.XXX_unrecognized, data[index:index+skippy]...)
  299. index += skippy
  300. }
  301. }
  302. return nil
  303. }
  304. func (m *Snapshot) Unmarshal(data []byte) error {
  305. l := len(data)
  306. index := 0
  307. for index < l {
  308. var wire uint64
  309. for shift := uint(0); ; shift += 7 {
  310. if index >= l {
  311. return io.ErrUnexpectedEOF
  312. }
  313. b := data[index]
  314. index++
  315. wire |= (uint64(b) & 0x7F) << shift
  316. if b < 0x80 {
  317. break
  318. }
  319. }
  320. fieldNum := int32(wire >> 3)
  321. wireType := int(wire & 0x7)
  322. switch fieldNum {
  323. case 1:
  324. if wireType != 2 {
  325. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  326. }
  327. var byteLen int
  328. for shift := uint(0); ; shift += 7 {
  329. if index >= l {
  330. return io.ErrUnexpectedEOF
  331. }
  332. b := data[index]
  333. index++
  334. byteLen |= (int(b) & 0x7F) << shift
  335. if b < 0x80 {
  336. break
  337. }
  338. }
  339. postIndex := index + byteLen
  340. if postIndex > l {
  341. return io.ErrUnexpectedEOF
  342. }
  343. m.Data = append(m.Data, data[index:postIndex]...)
  344. index = postIndex
  345. case 2:
  346. if wireType != 0 {
  347. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  348. }
  349. var v uint64
  350. for shift := uint(0); ; shift += 7 {
  351. if index >= l {
  352. return io.ErrUnexpectedEOF
  353. }
  354. b := data[index]
  355. index++
  356. v |= (uint64(b) & 0x7F) << shift
  357. if b < 0x80 {
  358. break
  359. }
  360. }
  361. m.Nodes = append(m.Nodes, v)
  362. case 3:
  363. if wireType != 0 {
  364. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  365. }
  366. for shift := uint(0); ; shift += 7 {
  367. if index >= l {
  368. return io.ErrUnexpectedEOF
  369. }
  370. b := data[index]
  371. index++
  372. m.Index |= (uint64(b) & 0x7F) << shift
  373. if b < 0x80 {
  374. break
  375. }
  376. }
  377. case 4:
  378. if wireType != 0 {
  379. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  380. }
  381. for shift := uint(0); ; shift += 7 {
  382. if index >= l {
  383. return io.ErrUnexpectedEOF
  384. }
  385. b := data[index]
  386. index++
  387. m.Term |= (uint64(b) & 0x7F) << shift
  388. if b < 0x80 {
  389. break
  390. }
  391. }
  392. case 5:
  393. if wireType != 0 {
  394. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  395. }
  396. var v uint64
  397. for shift := uint(0); ; shift += 7 {
  398. if index >= l {
  399. return io.ErrUnexpectedEOF
  400. }
  401. b := data[index]
  402. index++
  403. v |= (uint64(b) & 0x7F) << shift
  404. if b < 0x80 {
  405. break
  406. }
  407. }
  408. m.RemovedNodes = append(m.RemovedNodes, v)
  409. default:
  410. var sizeOfWire int
  411. for {
  412. sizeOfWire++
  413. wire >>= 7
  414. if wire == 0 {
  415. break
  416. }
  417. }
  418. index -= sizeOfWire
  419. skippy, err := code_google_com_p_gogoprotobuf_proto.Skip(data[index:])
  420. if err != nil {
  421. return err
  422. }
  423. if (index + skippy) > l {
  424. return io.ErrUnexpectedEOF
  425. }
  426. m.XXX_unrecognized = append(m.XXX_unrecognized, data[index:index+skippy]...)
  427. index += skippy
  428. }
  429. }
  430. return nil
  431. }
  432. func (m *Message) Unmarshal(data []byte) error {
  433. l := len(data)
  434. index := 0
  435. for index < l {
  436. var wire uint64
  437. for shift := uint(0); ; shift += 7 {
  438. if index >= l {
  439. return io.ErrUnexpectedEOF
  440. }
  441. b := data[index]
  442. index++
  443. wire |= (uint64(b) & 0x7F) << shift
  444. if b < 0x80 {
  445. break
  446. }
  447. }
  448. fieldNum := int32(wire >> 3)
  449. wireType := int(wire & 0x7)
  450. switch fieldNum {
  451. case 1:
  452. if wireType != 0 {
  453. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  454. }
  455. for shift := uint(0); ; shift += 7 {
  456. if index >= l {
  457. return io.ErrUnexpectedEOF
  458. }
  459. b := data[index]
  460. index++
  461. m.Type |= (MessageType(b) & 0x7F) << shift
  462. if b < 0x80 {
  463. break
  464. }
  465. }
  466. case 2:
  467. if wireType != 0 {
  468. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  469. }
  470. for shift := uint(0); ; shift += 7 {
  471. if index >= l {
  472. return io.ErrUnexpectedEOF
  473. }
  474. b := data[index]
  475. index++
  476. m.To |= (uint64(b) & 0x7F) << shift
  477. if b < 0x80 {
  478. break
  479. }
  480. }
  481. case 3:
  482. if wireType != 0 {
  483. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  484. }
  485. for shift := uint(0); ; shift += 7 {
  486. if index >= l {
  487. return io.ErrUnexpectedEOF
  488. }
  489. b := data[index]
  490. index++
  491. m.From |= (uint64(b) & 0x7F) << shift
  492. if b < 0x80 {
  493. break
  494. }
  495. }
  496. case 4:
  497. if wireType != 0 {
  498. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  499. }
  500. for shift := uint(0); ; shift += 7 {
  501. if index >= l {
  502. return io.ErrUnexpectedEOF
  503. }
  504. b := data[index]
  505. index++
  506. m.Term |= (uint64(b) & 0x7F) << shift
  507. if b < 0x80 {
  508. break
  509. }
  510. }
  511. case 5:
  512. if wireType != 0 {
  513. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  514. }
  515. for shift := uint(0); ; shift += 7 {
  516. if index >= l {
  517. return io.ErrUnexpectedEOF
  518. }
  519. b := data[index]
  520. index++
  521. m.LogTerm |= (uint64(b) & 0x7F) << shift
  522. if b < 0x80 {
  523. break
  524. }
  525. }
  526. case 6:
  527. if wireType != 0 {
  528. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  529. }
  530. for shift := uint(0); ; shift += 7 {
  531. if index >= l {
  532. return io.ErrUnexpectedEOF
  533. }
  534. b := data[index]
  535. index++
  536. m.Index |= (uint64(b) & 0x7F) << shift
  537. if b < 0x80 {
  538. break
  539. }
  540. }
  541. case 7:
  542. if wireType != 2 {
  543. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  544. }
  545. var msglen int
  546. for shift := uint(0); ; shift += 7 {
  547. if index >= l {
  548. return io.ErrUnexpectedEOF
  549. }
  550. b := data[index]
  551. index++
  552. msglen |= (int(b) & 0x7F) << shift
  553. if b < 0x80 {
  554. break
  555. }
  556. }
  557. postIndex := index + msglen
  558. if postIndex > l {
  559. return io.ErrUnexpectedEOF
  560. }
  561. m.Entries = append(m.Entries, Entry{})
  562. m.Entries[len(m.Entries)-1].Unmarshal(data[index:postIndex])
  563. index = postIndex
  564. case 8:
  565. if wireType != 0 {
  566. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  567. }
  568. for shift := uint(0); ; shift += 7 {
  569. if index >= l {
  570. return io.ErrUnexpectedEOF
  571. }
  572. b := data[index]
  573. index++
  574. m.Commit |= (uint64(b) & 0x7F) << shift
  575. if b < 0x80 {
  576. break
  577. }
  578. }
  579. case 9:
  580. if wireType != 2 {
  581. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  582. }
  583. var msglen int
  584. for shift := uint(0); ; shift += 7 {
  585. if index >= l {
  586. return io.ErrUnexpectedEOF
  587. }
  588. b := data[index]
  589. index++
  590. msglen |= (int(b) & 0x7F) << shift
  591. if b < 0x80 {
  592. break
  593. }
  594. }
  595. postIndex := index + msglen
  596. if postIndex > l {
  597. return io.ErrUnexpectedEOF
  598. }
  599. if err := m.Snapshot.Unmarshal(data[index:postIndex]); err != nil {
  600. return err
  601. }
  602. index = postIndex
  603. case 10:
  604. if wireType != 0 {
  605. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  606. }
  607. var v int
  608. for shift := uint(0); ; shift += 7 {
  609. if index >= l {
  610. return io.ErrUnexpectedEOF
  611. }
  612. b := data[index]
  613. index++
  614. v |= (int(b) & 0x7F) << shift
  615. if b < 0x80 {
  616. break
  617. }
  618. }
  619. m.Reject = bool(v != 0)
  620. default:
  621. var sizeOfWire int
  622. for {
  623. sizeOfWire++
  624. wire >>= 7
  625. if wire == 0 {
  626. break
  627. }
  628. }
  629. index -= sizeOfWire
  630. skippy, err := code_google_com_p_gogoprotobuf_proto.Skip(data[index:])
  631. if err != nil {
  632. return err
  633. }
  634. if (index + skippy) > l {
  635. return io.ErrUnexpectedEOF
  636. }
  637. m.XXX_unrecognized = append(m.XXX_unrecognized, data[index:index+skippy]...)
  638. index += skippy
  639. }
  640. }
  641. return nil
  642. }
  643. func (m *HardState) Unmarshal(data []byte) error {
  644. l := len(data)
  645. index := 0
  646. for index < l {
  647. var wire uint64
  648. for shift := uint(0); ; shift += 7 {
  649. if index >= l {
  650. return io.ErrUnexpectedEOF
  651. }
  652. b := data[index]
  653. index++
  654. wire |= (uint64(b) & 0x7F) << shift
  655. if b < 0x80 {
  656. break
  657. }
  658. }
  659. fieldNum := int32(wire >> 3)
  660. wireType := int(wire & 0x7)
  661. switch fieldNum {
  662. case 1:
  663. if wireType != 0 {
  664. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  665. }
  666. for shift := uint(0); ; shift += 7 {
  667. if index >= l {
  668. return io.ErrUnexpectedEOF
  669. }
  670. b := data[index]
  671. index++
  672. m.Term |= (uint64(b) & 0x7F) << shift
  673. if b < 0x80 {
  674. break
  675. }
  676. }
  677. case 2:
  678. if wireType != 0 {
  679. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  680. }
  681. for shift := uint(0); ; shift += 7 {
  682. if index >= l {
  683. return io.ErrUnexpectedEOF
  684. }
  685. b := data[index]
  686. index++
  687. m.Vote |= (uint64(b) & 0x7F) << shift
  688. if b < 0x80 {
  689. break
  690. }
  691. }
  692. case 3:
  693. if wireType != 0 {
  694. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  695. }
  696. for shift := uint(0); ; shift += 7 {
  697. if index >= l {
  698. return io.ErrUnexpectedEOF
  699. }
  700. b := data[index]
  701. index++
  702. m.Commit |= (uint64(b) & 0x7F) << shift
  703. if b < 0x80 {
  704. break
  705. }
  706. }
  707. default:
  708. var sizeOfWire int
  709. for {
  710. sizeOfWire++
  711. wire >>= 7
  712. if wire == 0 {
  713. break
  714. }
  715. }
  716. index -= sizeOfWire
  717. skippy, err := code_google_com_p_gogoprotobuf_proto.Skip(data[index:])
  718. if err != nil {
  719. return err
  720. }
  721. if (index + skippy) > l {
  722. return io.ErrUnexpectedEOF
  723. }
  724. m.XXX_unrecognized = append(m.XXX_unrecognized, data[index:index+skippy]...)
  725. index += skippy
  726. }
  727. }
  728. return nil
  729. }
  730. func (m *ConfChange) Unmarshal(data []byte) error {
  731. l := len(data)
  732. index := 0
  733. for index < l {
  734. var wire uint64
  735. for shift := uint(0); ; shift += 7 {
  736. if index >= l {
  737. return io.ErrUnexpectedEOF
  738. }
  739. b := data[index]
  740. index++
  741. wire |= (uint64(b) & 0x7F) << shift
  742. if b < 0x80 {
  743. break
  744. }
  745. }
  746. fieldNum := int32(wire >> 3)
  747. wireType := int(wire & 0x7)
  748. switch fieldNum {
  749. case 1:
  750. if wireType != 0 {
  751. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  752. }
  753. for shift := uint(0); ; shift += 7 {
  754. if index >= l {
  755. return io.ErrUnexpectedEOF
  756. }
  757. b := data[index]
  758. index++
  759. m.ID |= (uint64(b) & 0x7F) << shift
  760. if b < 0x80 {
  761. break
  762. }
  763. }
  764. case 2:
  765. if wireType != 0 {
  766. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  767. }
  768. for shift := uint(0); ; shift += 7 {
  769. if index >= l {
  770. return io.ErrUnexpectedEOF
  771. }
  772. b := data[index]
  773. index++
  774. m.Type |= (ConfChangeType(b) & 0x7F) << shift
  775. if b < 0x80 {
  776. break
  777. }
  778. }
  779. case 3:
  780. if wireType != 0 {
  781. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  782. }
  783. for shift := uint(0); ; shift += 7 {
  784. if index >= l {
  785. return io.ErrUnexpectedEOF
  786. }
  787. b := data[index]
  788. index++
  789. m.NodeID |= (uint64(b) & 0x7F) << shift
  790. if b < 0x80 {
  791. break
  792. }
  793. }
  794. case 4:
  795. if wireType != 2 {
  796. return code_google_com_p_gogoprotobuf_proto.ErrWrongType
  797. }
  798. var byteLen int
  799. for shift := uint(0); ; shift += 7 {
  800. if index >= l {
  801. return io.ErrUnexpectedEOF
  802. }
  803. b := data[index]
  804. index++
  805. byteLen |= (int(b) & 0x7F) << shift
  806. if b < 0x80 {
  807. break
  808. }
  809. }
  810. postIndex := index + byteLen
  811. if postIndex > l {
  812. return io.ErrUnexpectedEOF
  813. }
  814. m.Context = append(m.Context, data[index:postIndex]...)
  815. index = postIndex
  816. default:
  817. var sizeOfWire int
  818. for {
  819. sizeOfWire++
  820. wire >>= 7
  821. if wire == 0 {
  822. break
  823. }
  824. }
  825. index -= sizeOfWire
  826. skippy, err := code_google_com_p_gogoprotobuf_proto.Skip(data[index:])
  827. if err != nil {
  828. return err
  829. }
  830. if (index + skippy) > l {
  831. return io.ErrUnexpectedEOF
  832. }
  833. m.XXX_unrecognized = append(m.XXX_unrecognized, data[index:index+skippy]...)
  834. index += skippy
  835. }
  836. }
  837. return nil
  838. }
  839. func (m *Entry) Size() (n int) {
  840. var l int
  841. _ = l
  842. n += 1 + sovRaft(uint64(m.Type))
  843. n += 1 + sovRaft(uint64(m.Term))
  844. n += 1 + sovRaft(uint64(m.Index))
  845. l = len(m.Data)
  846. n += 1 + l + sovRaft(uint64(l))
  847. if m.XXX_unrecognized != nil {
  848. n += len(m.XXX_unrecognized)
  849. }
  850. return n
  851. }
  852. func (m *Snapshot) Size() (n int) {
  853. var l int
  854. _ = l
  855. l = len(m.Data)
  856. n += 1 + l + sovRaft(uint64(l))
  857. if len(m.Nodes) > 0 {
  858. for _, e := range m.Nodes {
  859. n += 1 + sovRaft(uint64(e))
  860. }
  861. }
  862. n += 1 + sovRaft(uint64(m.Index))
  863. n += 1 + sovRaft(uint64(m.Term))
  864. if len(m.RemovedNodes) > 0 {
  865. for _, e := range m.RemovedNodes {
  866. n += 1 + sovRaft(uint64(e))
  867. }
  868. }
  869. if m.XXX_unrecognized != nil {
  870. n += len(m.XXX_unrecognized)
  871. }
  872. return n
  873. }
  874. func (m *Message) Size() (n int) {
  875. var l int
  876. _ = l
  877. n += 1 + sovRaft(uint64(m.Type))
  878. n += 1 + sovRaft(uint64(m.To))
  879. n += 1 + sovRaft(uint64(m.From))
  880. n += 1 + sovRaft(uint64(m.Term))
  881. n += 1 + sovRaft(uint64(m.LogTerm))
  882. n += 1 + sovRaft(uint64(m.Index))
  883. if len(m.Entries) > 0 {
  884. for _, e := range m.Entries {
  885. l = e.Size()
  886. n += 1 + l + sovRaft(uint64(l))
  887. }
  888. }
  889. n += 1 + sovRaft(uint64(m.Commit))
  890. l = m.Snapshot.Size()
  891. n += 1 + l + sovRaft(uint64(l))
  892. n += 2
  893. if m.XXX_unrecognized != nil {
  894. n += len(m.XXX_unrecognized)
  895. }
  896. return n
  897. }
  898. func (m *HardState) Size() (n int) {
  899. var l int
  900. _ = l
  901. n += 1 + sovRaft(uint64(m.Term))
  902. n += 1 + sovRaft(uint64(m.Vote))
  903. n += 1 + sovRaft(uint64(m.Commit))
  904. if m.XXX_unrecognized != nil {
  905. n += len(m.XXX_unrecognized)
  906. }
  907. return n
  908. }
  909. func (m *ConfChange) Size() (n int) {
  910. var l int
  911. _ = l
  912. n += 1 + sovRaft(uint64(m.ID))
  913. n += 1 + sovRaft(uint64(m.Type))
  914. n += 1 + sovRaft(uint64(m.NodeID))
  915. l = len(m.Context)
  916. n += 1 + l + sovRaft(uint64(l))
  917. if m.XXX_unrecognized != nil {
  918. n += len(m.XXX_unrecognized)
  919. }
  920. return n
  921. }
  922. func sovRaft(x uint64) (n int) {
  923. for {
  924. n++
  925. x >>= 7
  926. if x == 0 {
  927. break
  928. }
  929. }
  930. return n
  931. }
  932. func sozRaft(x uint64) (n int) {
  933. return sovRaft(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  934. }
  935. func (m *Entry) Marshal() (data []byte, err error) {
  936. size := m.Size()
  937. data = make([]byte, size)
  938. n, err := m.MarshalTo(data)
  939. if err != nil {
  940. return nil, err
  941. }
  942. return data[:n], nil
  943. }
  944. func (m *Entry) MarshalTo(data []byte) (n int, err error) {
  945. var i int
  946. _ = i
  947. var l int
  948. _ = l
  949. data[i] = 0x8
  950. i++
  951. i = encodeVarintRaft(data, i, uint64(m.Type))
  952. data[i] = 0x10
  953. i++
  954. i = encodeVarintRaft(data, i, uint64(m.Term))
  955. data[i] = 0x18
  956. i++
  957. i = encodeVarintRaft(data, i, uint64(m.Index))
  958. data[i] = 0x22
  959. i++
  960. i = encodeVarintRaft(data, i, uint64(len(m.Data)))
  961. i += copy(data[i:], m.Data)
  962. if m.XXX_unrecognized != nil {
  963. i += copy(data[i:], m.XXX_unrecognized)
  964. }
  965. return i, nil
  966. }
  967. func (m *Snapshot) Marshal() (data []byte, err error) {
  968. size := m.Size()
  969. data = make([]byte, size)
  970. n, err := m.MarshalTo(data)
  971. if err != nil {
  972. return nil, err
  973. }
  974. return data[:n], nil
  975. }
  976. func (m *Snapshot) MarshalTo(data []byte) (n int, err error) {
  977. var i int
  978. _ = i
  979. var l int
  980. _ = l
  981. data[i] = 0xa
  982. i++
  983. i = encodeVarintRaft(data, i, uint64(len(m.Data)))
  984. i += copy(data[i:], m.Data)
  985. if len(m.Nodes) > 0 {
  986. for _, num := range m.Nodes {
  987. data[i] = 0x10
  988. i++
  989. for num >= 1<<7 {
  990. data[i] = uint8(uint64(num)&0x7f | 0x80)
  991. num >>= 7
  992. i++
  993. }
  994. data[i] = uint8(num)
  995. i++
  996. }
  997. }
  998. data[i] = 0x18
  999. i++
  1000. i = encodeVarintRaft(data, i, uint64(m.Index))
  1001. data[i] = 0x20
  1002. i++
  1003. i = encodeVarintRaft(data, i, uint64(m.Term))
  1004. if len(m.RemovedNodes) > 0 {
  1005. for _, num := range m.RemovedNodes {
  1006. data[i] = 0x28
  1007. i++
  1008. for num >= 1<<7 {
  1009. data[i] = uint8(uint64(num)&0x7f | 0x80)
  1010. num >>= 7
  1011. i++
  1012. }
  1013. data[i] = uint8(num)
  1014. i++
  1015. }
  1016. }
  1017. if m.XXX_unrecognized != nil {
  1018. i += copy(data[i:], m.XXX_unrecognized)
  1019. }
  1020. return i, nil
  1021. }
  1022. func (m *Message) Marshal() (data []byte, err error) {
  1023. size := m.Size()
  1024. data = make([]byte, size)
  1025. n, err := m.MarshalTo(data)
  1026. if err != nil {
  1027. return nil, err
  1028. }
  1029. return data[:n], nil
  1030. }
  1031. func (m *Message) MarshalTo(data []byte) (n int, err error) {
  1032. var i int
  1033. _ = i
  1034. var l int
  1035. _ = l
  1036. data[i] = 0x8
  1037. i++
  1038. i = encodeVarintRaft(data, i, uint64(m.Type))
  1039. data[i] = 0x10
  1040. i++
  1041. i = encodeVarintRaft(data, i, uint64(m.To))
  1042. data[i] = 0x18
  1043. i++
  1044. i = encodeVarintRaft(data, i, uint64(m.From))
  1045. data[i] = 0x20
  1046. i++
  1047. i = encodeVarintRaft(data, i, uint64(m.Term))
  1048. data[i] = 0x28
  1049. i++
  1050. i = encodeVarintRaft(data, i, uint64(m.LogTerm))
  1051. data[i] = 0x30
  1052. i++
  1053. i = encodeVarintRaft(data, i, uint64(m.Index))
  1054. if len(m.Entries) > 0 {
  1055. for _, msg := range m.Entries {
  1056. data[i] = 0x3a
  1057. i++
  1058. i = encodeVarintRaft(data, i, uint64(msg.Size()))
  1059. n, err := msg.MarshalTo(data[i:])
  1060. if err != nil {
  1061. return 0, err
  1062. }
  1063. i += n
  1064. }
  1065. }
  1066. data[i] = 0x40
  1067. i++
  1068. i = encodeVarintRaft(data, i, uint64(m.Commit))
  1069. data[i] = 0x4a
  1070. i++
  1071. i = encodeVarintRaft(data, i, uint64(m.Snapshot.Size()))
  1072. n1, err := m.Snapshot.MarshalTo(data[i:])
  1073. if err != nil {
  1074. return 0, err
  1075. }
  1076. i += n1
  1077. data[i] = 0x50
  1078. i++
  1079. if m.Reject {
  1080. data[i] = 1
  1081. } else {
  1082. data[i] = 0
  1083. }
  1084. i++
  1085. if m.XXX_unrecognized != nil {
  1086. i += copy(data[i:], m.XXX_unrecognized)
  1087. }
  1088. return i, nil
  1089. }
  1090. func (m *HardState) Marshal() (data []byte, err error) {
  1091. size := m.Size()
  1092. data = make([]byte, size)
  1093. n, err := m.MarshalTo(data)
  1094. if err != nil {
  1095. return nil, err
  1096. }
  1097. return data[:n], nil
  1098. }
  1099. func (m *HardState) MarshalTo(data []byte) (n int, err error) {
  1100. var i int
  1101. _ = i
  1102. var l int
  1103. _ = l
  1104. data[i] = 0x8
  1105. i++
  1106. i = encodeVarintRaft(data, i, uint64(m.Term))
  1107. data[i] = 0x10
  1108. i++
  1109. i = encodeVarintRaft(data, i, uint64(m.Vote))
  1110. data[i] = 0x18
  1111. i++
  1112. i = encodeVarintRaft(data, i, uint64(m.Commit))
  1113. if m.XXX_unrecognized != nil {
  1114. i += copy(data[i:], m.XXX_unrecognized)
  1115. }
  1116. return i, nil
  1117. }
  1118. func (m *ConfChange) Marshal() (data []byte, err error) {
  1119. size := m.Size()
  1120. data = make([]byte, size)
  1121. n, err := m.MarshalTo(data)
  1122. if err != nil {
  1123. return nil, err
  1124. }
  1125. return data[:n], nil
  1126. }
  1127. func (m *ConfChange) MarshalTo(data []byte) (n int, err error) {
  1128. var i int
  1129. _ = i
  1130. var l int
  1131. _ = l
  1132. data[i] = 0x8
  1133. i++
  1134. i = encodeVarintRaft(data, i, uint64(m.ID))
  1135. data[i] = 0x10
  1136. i++
  1137. i = encodeVarintRaft(data, i, uint64(m.Type))
  1138. data[i] = 0x18
  1139. i++
  1140. i = encodeVarintRaft(data, i, uint64(m.NodeID))
  1141. data[i] = 0x22
  1142. i++
  1143. i = encodeVarintRaft(data, i, uint64(len(m.Context)))
  1144. i += copy(data[i:], m.Context)
  1145. if m.XXX_unrecognized != nil {
  1146. i += copy(data[i:], m.XXX_unrecognized)
  1147. }
  1148. return i, nil
  1149. }
  1150. func encodeFixed64Raft(data []byte, offset int, v uint64) int {
  1151. data[offset] = uint8(v)
  1152. data[offset+1] = uint8(v >> 8)
  1153. data[offset+2] = uint8(v >> 16)
  1154. data[offset+3] = uint8(v >> 24)
  1155. data[offset+4] = uint8(v >> 32)
  1156. data[offset+5] = uint8(v >> 40)
  1157. data[offset+6] = uint8(v >> 48)
  1158. data[offset+7] = uint8(v >> 56)
  1159. return offset + 8
  1160. }
  1161. func encodeFixed32Raft(data []byte, offset int, v uint32) int {
  1162. data[offset] = uint8(v)
  1163. data[offset+1] = uint8(v >> 8)
  1164. data[offset+2] = uint8(v >> 16)
  1165. data[offset+3] = uint8(v >> 24)
  1166. return offset + 4
  1167. }
  1168. func encodeVarintRaft(data []byte, offset int, v uint64) int {
  1169. for v >= 1<<7 {
  1170. data[offset] = uint8(v&0x7f | 0x80)
  1171. v >>= 7
  1172. offset++
  1173. }
  1174. data[offset] = uint8(v)
  1175. return offset + 1
  1176. }