lib/message.js (29 lines of code) (raw):
/*!
* node-gcm
* Copyright(c) 2013 Marcus Farkas <toothlessgear@finitebox.com>
* MIT Licensed
*/
function Message(obj) {
if (obj) {
this.collapseKey = obj.collapseKey || undefined;
this.delayWhileIdle = obj.delayWhileIdle || undefined;
this.timeToLive = obj.timeToLive || undefined;
this.data = obj.data || {};
} else {
this.collapseKey = undefined;
this.delayWhileIdle = undefined;
this.timeToLive = undefined;
this.data = {};
}
if (Object.keys(this.data).length > 0) {
this.hasData = true;
} else {
this.hasData = false;
}
}
Message.prototype.addData = Message.prototype.addDataWithKeyValue = function (key, value) {
this.hasData = true;
this.data[key] = value.toString();
};
Message.prototype.addDataWithObject = function (obj) {
if (typeof obj === 'object' && Object.keys(obj).length > 0) {
this.data = obj;
this.hasData = true;
}
};
module.exports = Message;