UNPKG

node-eventstore-client

Version:

A port of the EventStore .Net ClientAPI to Node.js

892 lines (830 loc) 874 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>JSDoc: Source: messages/messages.js</title> <script src="scripts/prettify/prettify.js"> </script> <script src="scripts/prettify/lang-css.js"> </script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> </head> <body> <div id="main"> <h1 class="page-title">Source: messages/messages.js</h1> <section> <article> <pre class="prettyprint source linenums"><code>/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/ "use strict"; var $protobuf = require("protobufjs/minimal"); var $moduleUtil = require("../utils/modules"); // This fixes bug #91 by giving us an isolate copy of protobufjs library so any tampering with it doesn't affect us var old = $moduleUtil.uncache(require.resolve('protobufjs/minimal')); $protobuf = require('protobufjs/minimal'); $moduleUtil.recache(old); // Common aliases var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util; // Exported root namespace var $root = $protobuf.roots["default"] || ($protobuf.roots["default"] = {}); $root.EventStore = (function() { /** * Namespace EventStore. * @exports EventStore * @namespace */ var EventStore = {}; EventStore.Client = (function() { /** * Namespace Client. * @memberof EventStore * @namespace */ var Client = {}; Client.Messages = (function() { /** * Namespace Messages. * @memberof EventStore.Client * @namespace */ var Messages = {}; /** * OperationResult enum. * @name EventStore.Client.Messages.OperationResult * @enum {number} * @property {number} Success=0 Success value * @property {number} PrepareTimeout=1 PrepareTimeout value * @property {number} CommitTimeout=2 CommitTimeout value * @property {number} ForwardTimeout=3 ForwardTimeout value * @property {number} WrongExpectedVersion=4 WrongExpectedVersion value * @property {number} StreamDeleted=5 StreamDeleted value * @property {number} InvalidTransaction=6 InvalidTransaction value * @property {number} AccessDenied=7 AccessDenied value */ Messages.OperationResult = (function() { var valuesById = {}, values = Object.create(valuesById); values[valuesById[0] = "Success"] = 0; values[valuesById[1] = "PrepareTimeout"] = 1; values[valuesById[2] = "CommitTimeout"] = 2; values[valuesById[3] = "ForwardTimeout"] = 3; values[valuesById[4] = "WrongExpectedVersion"] = 4; values[valuesById[5] = "StreamDeleted"] = 5; values[valuesById[6] = "InvalidTransaction"] = 6; values[valuesById[7] = "AccessDenied"] = 7; return values; })(); Messages.NewEvent = (function() { /** * Properties of a NewEvent. * @memberof EventStore.Client.Messages * @interface INewEvent * @property {Uint8Array|null} [eventId] NewEvent eventId * @property {string|null} [eventType] NewEvent eventType * @property {number|null} [dataContentType] NewEvent dataContentType * @property {number|null} [metadataContentType] NewEvent metadataContentType * @property {Uint8Array|null} [data] NewEvent data * @property {Uint8Array|null} [metadata] NewEvent metadata */ /** * Constructs a new NewEvent. * @memberof EventStore.Client.Messages * @classdesc Represents a NewEvent. * @implements INewEvent * @constructor * @param {EventStore.Client.Messages.INewEvent=} [properties] Properties to set */ function NewEvent(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i &lt; keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } /** * NewEvent eventId. * @member {Uint8Array} eventId * @memberof EventStore.Client.Messages.NewEvent * @instance */ NewEvent.prototype.eventId = $util.newBuffer([]); /** * NewEvent eventType. * @member {string} eventType * @memberof EventStore.Client.Messages.NewEvent * @instance */ NewEvent.prototype.eventType = ""; /** * NewEvent dataContentType. * @member {number} dataContentType * @memberof EventStore.Client.Messages.NewEvent * @instance */ NewEvent.prototype.dataContentType = 0; /** * NewEvent metadataContentType. * @member {number} metadataContentType * @memberof EventStore.Client.Messages.NewEvent * @instance */ NewEvent.prototype.metadataContentType = 0; /** * NewEvent data. * @member {Uint8Array} data * @memberof EventStore.Client.Messages.NewEvent * @instance */ NewEvent.prototype.data = $util.newBuffer([]); /** * NewEvent metadata. * @member {Uint8Array} metadata * @memberof EventStore.Client.Messages.NewEvent * @instance */ NewEvent.prototype.metadata = $util.newBuffer([]); /** * Creates a new NewEvent instance using the specified properties. * @function create * @memberof EventStore.Client.Messages.NewEvent * @static * @param {EventStore.Client.Messages.INewEvent=} [properties] Properties to set * @returns {EventStore.Client.Messages.NewEvent} NewEvent instance */ NewEvent.create = function create(properties) { return new NewEvent(properties); }; /** * Encodes the specified NewEvent message. Does not implicitly {@link EventStore.Client.Messages.NewEvent.verify|verify} messages. * @function encode * @memberof EventStore.Client.Messages.NewEvent * @static * @param {EventStore.Client.Messages.INewEvent} message NewEvent message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ NewEvent.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.eventId != null &amp;&amp; Object.hasOwnProperty.call(message, "eventId")) writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.eventId); if (message.eventType != null &amp;&amp; Object.hasOwnProperty.call(message, "eventType")) writer.uint32(/* id 2, wireType 2 =*/18).string(message.eventType); if (message.dataContentType != null &amp;&amp; Object.hasOwnProperty.call(message, "dataContentType")) writer.uint32(/* id 3, wireType 0 =*/24).int32(message.dataContentType); if (message.metadataContentType != null &amp;&amp; Object.hasOwnProperty.call(message, "metadataContentType")) writer.uint32(/* id 4, wireType 0 =*/32).int32(message.metadataContentType); if (message.data != null &amp;&amp; Object.hasOwnProperty.call(message, "data")) writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.data); if (message.metadata != null &amp;&amp; Object.hasOwnProperty.call(message, "metadata")) writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.metadata); return writer; }; /** * Encodes the specified NewEvent message, length delimited. Does not implicitly {@link EventStore.Client.Messages.NewEvent.verify|verify} messages. * @function encodeDelimited * @memberof EventStore.Client.Messages.NewEvent * @static * @param {EventStore.Client.Messages.INewEvent} message NewEvent message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ NewEvent.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** * Decodes a NewEvent message from the specified reader or buffer. * @function decode * @memberof EventStore.Client.Messages.NewEvent * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand * @returns {EventStore.Client.Messages.NewEvent} NewEvent * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ NewEvent.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.EventStore.Client.Messages.NewEvent(); while (reader.pos &lt; end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: { message.eventId = reader.bytes(); break; } case 2: { message.eventType = reader.string(); break; } case 3: { message.dataContentType = reader.int32(); break; } case 4: { message.metadataContentType = reader.int32(); break; } case 5: { message.data = reader.bytes(); break; } case 6: { message.metadata = reader.bytes(); break; } default: reader.skipType(tag &amp; 7); break; } } return message; }; /** * Decodes a NewEvent message from the specified reader or buffer, length delimited. * @function decodeDelimited * @memberof EventStore.Client.Messages.NewEvent * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @returns {EventStore.Client.Messages.NewEvent} NewEvent * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ NewEvent.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** * Verifies a NewEvent message. * @function verify * @memberof EventStore.Client.Messages.NewEvent * @static * @param {Object.&lt;string,*>} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ NewEvent.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.eventId != null &amp;&amp; message.hasOwnProperty("eventId")) if (!(message.eventId &amp;&amp; typeof message.eventId.length === "number" || $util.isString(message.eventId))) return "eventId: buffer expected"; if (message.eventType != null &amp;&amp; message.hasOwnProperty("eventType")) if (!$util.isString(message.eventType)) return "eventType: string expected"; if (message.dataContentType != null &amp;&amp; message.hasOwnProperty("dataContentType")) if (!$util.isInteger(message.dataContentType)) return "dataContentType: integer expected"; if (message.metadataContentType != null &amp;&amp; message.hasOwnProperty("metadataContentType")) if (!$util.isInteger(message.metadataContentType)) return "metadataContentType: integer expected"; if (message.data != null &amp;&amp; message.hasOwnProperty("data")) if (!(message.data &amp;&amp; typeof message.data.length === "number" || $util.isString(message.data))) return "data: buffer expected"; if (message.metadata != null &amp;&amp; message.hasOwnProperty("metadata")) if (!(message.metadata &amp;&amp; typeof message.metadata.length === "number" || $util.isString(message.metadata))) return "metadata: buffer expected"; return null; }; /** * Creates a NewEvent message from a plain object. Also converts values to their respective internal types. * @function fromObject * @memberof EventStore.Client.Messages.NewEvent * @static * @param {Object.&lt;string,*>} object Plain object * @returns {EventStore.Client.Messages.NewEvent} NewEvent */ NewEvent.fromObject = function fromObject(object) { if (object instanceof $root.EventStore.Client.Messages.NewEvent) return object; var message = new $root.EventStore.Client.Messages.NewEvent(); if (object.eventId != null) if (typeof object.eventId === "string") $util.base64.decode(object.eventId, message.eventId = $util.newBuffer($util.base64.length(object.eventId)), 0); else if (object.eventId.length >= 0) message.eventId = object.eventId; if (object.eventType != null) message.eventType = String(object.eventType); if (object.dataContentType != null) message.dataContentType = object.dataContentType | 0; if (object.metadataContentType != null) message.metadataContentType = object.metadataContentType | 0; if (object.data != null) if (typeof object.data === "string") $util.base64.decode(object.data, message.data = $util.newBuffer($util.base64.length(object.data)), 0); else if (object.data.length >= 0) message.data = object.data; if (object.metadata != null) if (typeof object.metadata === "string") $util.base64.decode(object.metadata, message.metadata = $util.newBuffer($util.base64.length(object.metadata)), 0); else if (object.metadata.length >= 0) message.metadata = object.metadata; return message; }; /** * Creates a plain object from a NewEvent message. Also converts values to other types if specified. * @function toObject * @memberof EventStore.Client.Messages.NewEvent * @static * @param {EventStore.Client.Messages.NewEvent} message NewEvent * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.&lt;string,*>} Plain object */ NewEvent.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { if (options.bytes === String) object.eventId = ""; else { object.eventId = []; if (options.bytes !== Array) object.eventId = $util.newBuffer(object.eventId); } object.eventType = ""; object.dataContentType = 0; object.metadataContentType = 0; if (options.bytes === String) object.data = ""; else { object.data = []; if (options.bytes !== Array) object.data = $util.newBuffer(object.data); } if (options.bytes === String) object.metadata = ""; else { object.metadata = []; if (options.bytes !== Array) object.metadata = $util.newBuffer(object.metadata); } } if (message.eventId != null &amp;&amp; message.hasOwnProperty("eventId")) object.eventId = options.bytes === String ? $util.base64.encode(message.eventId, 0, message.eventId.length) : options.bytes === Array ? Array.prototype.slice.call(message.eventId) : message.eventId; if (message.eventType != null &amp;&amp; message.hasOwnProperty("eventType")) object.eventType = message.eventType; if (message.dataContentType != null &amp;&amp; message.hasOwnProperty("dataContentType")) object.dataContentType = message.dataContentType; if (message.metadataContentType != null &amp;&amp; message.hasOwnProperty("metadataContentType")) object.metadataContentType = message.metadataContentType; if (message.data != null &amp;&amp; message.hasOwnProperty("data")) object.data = options.bytes === String ? $util.base64.encode(message.data, 0, message.data.length) : options.bytes === Array ? Array.prototype.slice.call(message.data) : message.data; if (message.metadata != null &amp;&amp; message.hasOwnProperty("metadata")) object.metadata = options.bytes === String ? $util.base64.encode(message.metadata, 0, message.metadata.length) : options.bytes === Array ? Array.prototype.slice.call(message.metadata) : message.metadata; return object; }; /** * Converts this NewEvent to JSON. * @function toJSON * @memberof EventStore.Client.Messages.NewEvent * @instance * @returns {Object.&lt;string,*>} JSON object */ NewEvent.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** * Gets the default type url for NewEvent * @function getTypeUrl * @memberof EventStore.Client.Messages.NewEvent * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ NewEvent.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } return typeUrlPrefix + "/EventStore.Client.Messages.NewEvent"; }; return NewEvent; })(); Messages.EventRecord = (function() { /** * Properties of an EventRecord. * @memberof EventStore.Client.Messages * @interface IEventRecord * @property {string|null} [eventStreamId] EventRecord eventStreamId * @property {Long|null} [eventNumber] EventRecord eventNumber * @property {Uint8Array|null} [eventId] EventRecord eventId * @property {string|null} [eventType] EventRecord eventType * @property {number|null} [dataContentType] EventRecord dataContentType * @property {number|null} [metadataContentType] EventRecord metadataContentType * @property {Uint8Array|null} [data] EventRecord data * @property {Uint8Array|null} [metadata] EventRecord metadata * @property {Long|null} [created] EventRecord created * @property {Long|null} [createdEpoch] EventRecord createdEpoch */ /** * Constructs a new EventRecord. * @memberof EventStore.Client.Messages * @classdesc Represents an EventRecord. * @implements IEventRecord * @constructor * @param {EventStore.Client.Messages.IEventRecord=} [properties] Properties to set */ function EventRecord(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i &lt; keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } /** * EventRecord eventStreamId. * @member {string} eventStreamId * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.eventStreamId = ""; /** * EventRecord eventNumber. * @member {Long} eventNumber * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.eventNumber = $util.Long ? $util.Long.fromBits(0,0,false) : 0; /** * EventRecord eventId. * @member {Uint8Array} eventId * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.eventId = $util.newBuffer([]); /** * EventRecord eventType. * @member {string} eventType * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.eventType = ""; /** * EventRecord dataContentType. * @member {number} dataContentType * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.dataContentType = 0; /** * EventRecord metadataContentType. * @member {number} metadataContentType * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.metadataContentType = 0; /** * EventRecord data. * @member {Uint8Array} data * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.data = $util.newBuffer([]); /** * EventRecord metadata. * @member {Uint8Array} metadata * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.metadata = $util.newBuffer([]); /** * EventRecord created. * @member {Long} created * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.created = $util.Long ? $util.Long.fromBits(0,0,false) : 0; /** * EventRecord createdEpoch. * @member {Long} createdEpoch * @memberof EventStore.Client.Messages.EventRecord * @instance */ EventRecord.prototype.createdEpoch = $util.Long ? $util.Long.fromBits(0,0,false) : 0; /** * Creates a new EventRecord instance using the specified properties. * @function create * @memberof EventStore.Client.Messages.EventRecord * @static * @param {EventStore.Client.Messages.IEventRecord=} [properties] Properties to set * @returns {EventStore.Client.Messages.EventRecord} EventRecord instance */ EventRecord.create = function create(properties) { return new EventRecord(properties); }; /** * Encodes the specified EventRecord message. Does not implicitly {@link EventStore.Client.Messages.EventRecord.verify|verify} messages. * @function encode * @memberof EventStore.Client.Messages.EventRecord * @static * @param {EventStore.Client.Messages.IEventRecord} message EventRecord message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ EventRecord.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.eventStreamId != null &amp;&amp; Object.hasOwnProperty.call(message, "eventStreamId")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.eventStreamId); if (message.eventNumber != null &amp;&amp; Object.hasOwnProperty.call(message, "eventNumber")) writer.uint32(/* id 2, wireType 0 =*/16).int64(message.eventNumber); if (message.eventId != null &amp;&amp; Object.hasOwnProperty.call(message, "eventId")) writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.eventId); if (message.eventType != null &amp;&amp; Object.hasOwnProperty.call(message, "eventType")) writer.uint32(/* id 4, wireType 2 =*/34).string(message.eventType); if (message.dataContentType != null &amp;&amp; Object.hasOwnProperty.call(message, "dataContentType")) writer.uint32(/* id 5, wireType 0 =*/40).int32(message.dataContentType); if (message.metadataContentType != null &amp;&amp; Object.hasOwnProperty.call(message, "metadataContentType")) writer.uint32(/* id 6, wireType 0 =*/48).int32(message.metadataContentType); if (message.data != null &amp;&amp; Object.hasOwnProperty.call(message, "data")) writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.data); if (message.metadata != null &amp;&amp; Object.hasOwnProperty.call(message, "metadata")) writer.uint32(/* id 8, wireType 2 =*/66).bytes(message.metadata); if (message.created != null &amp;&amp; Object.hasOwnProperty.call(message, "created")) writer.uint32(/* id 9, wireType 0 =*/72).int64(message.created); if (message.createdEpoch != null &amp;&amp; Object.hasOwnProperty.call(message, "createdEpoch")) writer.uint32(/* id 10, wireType 0 =*/80).int64(message.createdEpoch); return writer; }; /** * Encodes the specified EventRecord message, length delimited. Does not implicitly {@link EventStore.Client.Messages.EventRecord.verify|verify} messages. * @function encodeDelimited * @memberof EventStore.Client.Messages.EventRecord * @static * @param {EventStore.Client.Messages.IEventRecord} message EventRecord message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ EventRecord.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** * Decodes an EventRecord message from the specified reader or buffer. * @function decode * @memberof EventStore.Client.Messages.EventRecord * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand * @returns {EventStore.Client.Messages.EventRecord} EventRecord * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ EventRecord.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.EventStore.Client.Messages.EventRecord(); while (reader.pos &lt; end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: { message.eventStreamId = reader.string(); break; } case 2: { message.eventNumber = reader.int64(); break; } case 3: { message.eventId = reader.bytes(); break; } case 4: { message.eventType = reader.string(); break; } case 5: { message.dataContentType = reader.int32(); break; } case 6: { message.metadataContentType = reader.int32(); break; } case 7: { message.data = reader.bytes(); break; } case 8: { message.metadata = reader.bytes(); break; } case 9: { message.created = reader.int64(); break; } case 10: { message.createdEpoch = reader.int64(); break; } default: reader.skipType(tag &amp; 7); break; } } return message; }; /** * Decodes an EventRecord message from the specified reader or buffer, length delimited. * @function decodeDelimited * @memberof EventStore.Client.Messages.EventRecord * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @returns {EventStore.Client.Messages.EventRecord} EventRecord * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ EventRecord.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** * Verifies an EventRecord message. * @function verify * @memberof EventStore.Client.Messages.EventRecord * @static * @param {Object.&lt;string,*>} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ EventRecord.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.eventStreamId != null &amp;&amp; message.hasOwnProperty("eventStreamId")) if (!$util.isString(message.eventStreamId)) return "eventStreamId: string expected"; if (message.eventNumber != null &amp;&amp; message.hasOwnProperty("eventNumber")) if (!$util.isInteger(message.eventNumber) &amp;&amp; !(message.eventNumber &amp;&amp; $util.isInteger(message.eventNumber.low) &amp;&amp; $util.isInteger(message.eventNumber.high))) return "eventNumber: integer|Long expected"; if (message.eventId != null &amp;&amp; message.hasOwnProperty("eventId")) if (!(message.eventId &amp;&amp; typeof message.eventId.length === "number" || $util.isString(message.eventId))) return "eventId: buffer expected"; if (message.eventType != null &amp;&amp; message.hasOwnProperty("eventType")) if (!$util.isString(message.eventType)) return "eventType: string expected"; if (message.dataContentType != null &amp;&amp; message.hasOwnProperty("dataContentType")) if (!$util.isInteger(message.dataContentType)) return "dataContentType: integer expected"; if (message.metadataContentType != null &amp;&amp; message.hasOwnProperty("metadataContentType")) if (!$util.isInteger(message.metadataContentType)) return "metadataContentType: integer expected"; if (message.data != null &amp;&amp; message.hasOwnProperty("data")) if (!(message.data &amp;&amp; typeof message.data.length === "number" || $util.isString(message.data))) return "data: buffer expected"; if (message.metadata != null &amp;&amp; message.hasOwnProperty("metadata")) if (!(message.metadata &amp;&amp; typeof message.metadata.length === "number" || $util.isString(message.metadata))) return "metadata: buffer expected"; if (message.created != null &amp;&amp; message.hasOwnProperty("created")) if (!$util.isInteger(message.created) &amp;&amp; !(message.created &amp;&amp; $util.isInteger(message.created.low) &amp;&amp; $util.isInteger(message.created.high))) return "created: integer|Long expected"; if (message.createdEpoch != null &amp;&amp; message.hasOwnProperty("createdEpoch")) if (!$util.isInteger(message.createdEpoch) &amp;&amp; !(message.createdEpoch &amp;&amp; $util.isInteger(message.createdEpoch.low) &amp;&amp; $util.isInteger(message.createdEpoch.high))) return "createdEpoch: integer|Long expected"; return null; }; /** * Creates an EventRecord message from a plain object. Also converts values to their respective internal types. * @function fromObject * @memberof EventStore.Client.Messages.EventRecord * @static * @param {Object.&lt;string,*>} object Plain object * @returns {EventStore.Client.Messages.EventRecord} EventRecord */ EventRecord.fromObject = function fromObject(object) { if (object instanceof $root.EventStore.Client.Messages.EventRecord) return object; var message = new $root.EventStore.Client.Messages.EventRecord(); if (object.eventStreamId != null) message.eventStreamId = String(object.eventStreamId); if (object.eventNumber != null) if ($util.Long) (message.eventNumber = $util.Long.fromValue(object.eventNumber)).unsigned = false; else if (typeof object.eventNumber === "string") message.eventNumber = parseInt(object.eventNumber, 10); else if (typeof object.eventNumber === "number") message.eventNumber = object.eventNumber; else if (typeof object.eventNumber === "object") message.eventNumber = new $util.LongBits(object.eventNumber.low >>> 0, object.eventNumber.high >>> 0).toNumber(); if (object.eventId != null) if (typeof object.eventId === "string") $util.base64.decode(object.eventId, message.eventId = $util.newBuffer($util.base64.length(object.eventId)), 0); else if (object.eventId.length >= 0) message.eventId = object.eventId; if (object.eventType != null) message.eventType = String(object.eventType); if (object.dataContentType != null) message.dataContentType = object.dataContentType | 0; if (object.metadataContentType != null) message.metadataContentType = object.metadataContentType | 0; if (object.data != null) if (typeof object.data === "string") $util.base64.decode(object.data, message.data = $util.newBuffer($util.base64.length(object.data)), 0); else if (object.data.length >= 0) message.data = object.data; if (object.metadata != null) if (typeof object.metadata === "string") $util.base64.decode(object.metadata, message.metadata = $util.newBuffer($util.base64.length(object.metadata)), 0); else if (object.metadata.length >= 0) message.metadata = object.metadata; if (object.created != null) if ($util.Long) (message.created = $util.Long.fromValue(object.created)).unsigned = false; else if (typeof object.created === "string") message.created = parseInt(object.created, 10); else if (typeof object.created === "number") message.created = object.created; else if (typeof object.created === "object") message.created = new $util.LongBits(object.created.low >>> 0, object.created.high >>> 0).toNumber(); if (object.createdEpoch != null) if ($util.Long) (message.createdEpoch = $util.Long.fromValue(object.createdEpoch)).unsigned = false; else if (typeof object.createdEpoch === "string") message.createdEpoch = parseInt(object.createdEpoch, 10); else if (typeof object.createdEpoch === "number") message.createdEpoch = object.createdEpoch; else if (typeof object.createdEpoch === "object") message.createdEpoch = new $util.LongBits(object.createdEpoch.low >>> 0, object.createdEpoch.high >>> 0).toNumber(); return message; }; /** * Creates a plain object from an EventRecord message. Also converts values to other types if specified. * @function toObject * @memberof EventStore.Client.Messages.EventRecord * @static * @param {EventStore.Client.Messages.EventRecord} message EventRecord * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.&lt;string,*>} Plain object */ EventRecord.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { object.eventStreamId = ""; if ($util.Long) { var long = new $util.Long(0, 0, false); object.eventNumber = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; } else object.eventNumber = options.longs === String ? "0" : 0; if (options.bytes === String) object.eventId = ""; else { object.eventId = []; if (options.bytes !== Array) object.eventId = $util.newBuffer(object.eventId); } object.eventType = ""; object.dataContentType = 0; object.metadataContentType = 0; if (options.bytes === String) object.data = ""; else { object.data = []; if (options.bytes !== Array) object.data = $util.newBuffer(object.data); } if (options.bytes === String) object.metadata = ""; else { object.metadata = []; if (options.bytes !== Array) object.metadata = $util.newBuffer(object.metadata); } if ($util.Long) { var long = new $util.Long(0, 0, false); object.created = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; } else object.created = options.longs === String ? "0" : 0; if ($util.Long) { var long = new $util.Long(0, 0, false); object.createdEpoch = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; } else object.createdEpoch = options.longs === String ? "0" : 0; } if (message.eventStreamId != null &amp;&amp; message.hasOwnProperty("eventStreamId")) object.eventStreamId = message.eventStreamId; if (message.eventNumber != null &amp;&amp; message.hasOwnProperty("eventNumber")) if (typeof message.eventNumber === "number") object.eventNumber = options.longs === String ? String(message.eventNumber) : message.eventNumber; else object.eventNumber = options.longs === String ? $util.Long.prototype.toString.call(message.eventNumber) : options.longs === Number ? new $util.LongBits(message.eventNumber.low >>> 0, message.eventNumber.high >>> 0).toNumber() : message.eventNumber; if (message.eventId != null &amp;&amp; message.hasOwnProperty("eventId")) object.eventId = options.bytes === String ? $util.base64.encode(message.eventId, 0, message.eventId.length) : options.bytes === Array ? Array.prototype.slice.call(message.eventId) : message.eventId; if (message.eventType != null &amp;&amp; message.hasOwnProperty("eventType")) object.eventType = message.eventType; if (message.dataContentType != null &amp;&amp; message.hasOwnProperty("dataContentType")) object.dataContentType = message.dataContentType; if (message.metadataContentType != null &amp;&amp; message.hasOwnProperty("metadataContentType")) object.metadataContentType = message.metadataContentType; if (message.data != null &amp;&amp; message.hasOwnProperty("data")) object.data = options.bytes === String ? $util.base64.encode(message.data, 0, message.data.length) : options.bytes === Array ? Array.prototype.slice.call(message.data) : message.data; if (message.metadata != null &amp;&amp; message.hasOwnProperty("metadata")) object.metadata = options.bytes === String ? $util.base64.encode(message.metadata, 0, message.metadata.length) : options.bytes === Array ? Array.prototype.slice.call(message.metadata) : message.metadata; if (message.created != null &amp;&amp; message.hasOwnProperty("created")) if (typeof message.created === "number") object.created = options.longs === String ? String(message.created) : message.created; else object.created = options.longs === String ? $util.Long.prototype.toString.call(message.created) : options.longs === Number ? new $util.LongBits(message.created.low >>> 0, message.created.high >>> 0).toNumber() : message.created; if (message.createdEpoch != null &amp;&amp; message.hasOwnProperty("createdEpoch")) if (typeof message.createdEpoch === "number") object.createdEpoch = options.longs === String ? String(message.createdEpoch) : message.createdEpoch; else object.createdEpoch = options.longs === String ? $util.Long.prototype.toString.call(message.createdEpoch) : options.longs === N