UNPKG

xiot-core-spec-ts

Version:
38 lines (37 loc) 1.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Group_1 = require("../../typedef/group/Group"); const GroupType_1 = require("../../typedef/definition/urn/GroupType"); const Position_1 = require("../../typedef/position/Position"); class GroupCodec { static decodeArray(list) { const array = []; if (list != null) { list.forEach(o => array.push(GroupCodec.decode(o))); } return array; } static decode(o) { const id = o.id; const type = new GroupType_1.GroupType(o.type); const pos = Position_1.PositionFromString(o.position); const members = o.members; return new Group_1.Group(id, type, pos, members); } static encode(o) { return { id: o.id, type: o.type.toString(), position: o.position.toString(), members: o.members }; } static encodeArray(list) { const array = []; list.forEach((o) => { array.push(GroupCodec.encode(o)); }); return array; } } exports.GroupCodec = GroupCodec;