hazelcast-client
Version:
Hazelcast - open source In-Memory Data Grid - client for NodeJS
34 lines • 1.38 kB
JavaScript
var Member_1 = require('../core/Member');
var AddressCodec_1 = require('./AddressCodec');
var MemberCodec = (function () {
function MemberCodec() {
}
MemberCodec.encode = function (clientMessage, member) {
AddressCodec_1.AddressCodec.encode(clientMessage, member.address);
clientMessage.appendString(member.uuid);
clientMessage.appendBoolean(member.isLiteMember);
var keys = Object.keys(member.attributes);
clientMessage.appendInt32(keys.length);
for (var key in keys) {
clientMessage.appendString(key);
clientMessage.appendString(member.attributes[key]);
}
};
MemberCodec.decode = function (clientMessage, toObject) {
var address = AddressCodec_1.AddressCodec.decode(clientMessage, toObject);
var uuid = clientMessage.readString();
var liteMember = clientMessage.readBoolean();
var attributeSize = clientMessage.readInt32();
var attributes = {};
for (var i = 0; i < attributeSize; i++) {
var key = clientMessage.readString();
var val = clientMessage.readString();
attributes[key] = val;
}
return new Member_1.Member(address, uuid, liteMember, attributes);
};
return MemberCodec;
}());
exports.MemberCodec = MemberCodec;
//# sourceMappingURL=MemberCodec.js.map
;