MCPcopy Create free account
hub / github.com/chronoxor/FastBinaryEncoding / onReceive

Method onReceive

projects/JavaScript/proto/protoex.js:7631–7690  ·  view source on GitHub ↗

* protoex receive message handler * @this {!FinalReceiver} * @param {!number} type Message type * @param {!Uint8Array} buffer Buffer to send * @param {!number} offset Buffer offset * @param {!number} size Buffer size * @returns {!boolean} Success flag

(type, buffer, offset, size)

Source from the content-addressed store, hash-verified

7629 * @returns {!boolean} Success flag
7630 */
7631 onReceive (type, buffer, offset, size) {
7632 switch (type) {
7633 case OrderMessageFinalModel.fbeType: {
7634 // Deserialize the value from the FBE stream
7635 this._OrderMessageModel.attachBuffer(buffer, offset)
7636 console.assert(this._OrderMessageModel.verify(), 'protoex.OrderMessage validation failed!')
7637 let deserialized = this._OrderMessageModel.deserialize(this._OrderMessageValue)
7638 console.assert((deserialized.size > 0), 'protoex.OrderMessage deserialization failed!')
7639
7640 // Log the value
7641 if (this.logging) {
7642 this.onReceiveLog(this._OrderMessageValue.toString())
7643 }
7644
7645 // Call receive handler with deserialized value
7646 this.onReceive_OrderMessage(this._OrderMessageValue)
7647 return true
7648 }
7649 case BalanceMessageFinalModel.fbeType: {
7650 // Deserialize the value from the FBE stream
7651 this._BalanceMessageModel.attachBuffer(buffer, offset)
7652 console.assert(this._BalanceMessageModel.verify(), 'protoex.BalanceMessage validation failed!')
7653 let deserialized = this._BalanceMessageModel.deserialize(this._BalanceMessageValue)
7654 console.assert((deserialized.size > 0), 'protoex.BalanceMessage deserialization failed!')
7655
7656 // Log the value
7657 if (this.logging) {
7658 this.onReceiveLog(this._BalanceMessageValue.toString())
7659 }
7660
7661 // Call receive handler with deserialized value
7662 this.onReceive_BalanceMessage(this._BalanceMessageValue)
7663 return true
7664 }
7665 case AccountMessageFinalModel.fbeType: {
7666 // Deserialize the value from the FBE stream
7667 this._AccountMessageModel.attachBuffer(buffer, offset)
7668 console.assert(this._AccountMessageModel.verify(), 'protoex.AccountMessage validation failed!')
7669 let deserialized = this._AccountMessageModel.deserialize(this._AccountMessageValue)
7670 console.assert((deserialized.size > 0), 'protoex.AccountMessage deserialization failed!')
7671
7672 // Log the value
7673 if (this.logging) {
7674 this.onReceiveLog(this._AccountMessageValue.toString())
7675 }
7676
7677 // Call receive handler with deserialized value
7678 this.onReceive_AccountMessage(this._AccountMessageValue)
7679 return true
7680 }
7681 default: break
7682 }
7683
7684 // noinspection RedundantIfStatementJS
7685 if ((this.protoReceiver != null) && this.protoReceiver.onReceive(type, buffer, offset, size)) {
7686 return true
7687 }
7688

Callers

nothing calls this directly

Calls 9

attachBufferMethod · 0.45
verifyMethod · 0.45
deserializeMethod · 0.45
onReceiveLogMethod · 0.45
toStringMethod · 0.45
onReceiveMethod · 0.45

Tested by

no test coverage detected