* Reads an event from Cassandra and returns the detail * @returns {{eventType: String, inet: {address: Buffer, port: Number}}, *}
()
| 477 | * @returns {{eventType: String, inet: {address: Buffer, port: Number}}, *} |
| 478 | */ |
| 479 | readEvent() { |
| 480 | const eventType = this.readString(); |
| 481 | switch (eventType) { |
| 482 | case types.protocolEvents.topologyChange: |
| 483 | return { |
| 484 | added: this.readString() === 'NEW_NODE', |
| 485 | inet: this.readInet(), |
| 486 | eventType: eventType |
| 487 | }; |
| 488 | case types.protocolEvents.statusChange: |
| 489 | return { |
| 490 | up: this.readString() === 'UP', |
| 491 | inet: this.readInet(), |
| 492 | eventType: eventType |
| 493 | }; |
| 494 | case types.protocolEvents.schemaChange: |
| 495 | return this.parseSchemaChange(); |
| 496 | } |
| 497 | //Forward compatibility |
| 498 | return { eventType: eventType }; |
| 499 | } |
| 500 | |
| 501 | parseSchemaChange() { |
| 502 | let result; |
no test coverage detected