UNPKG

xiot-core-message-ts

Version:
31 lines (30 loc) 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const GetProperties_1 = require("../../typedef/iq/basic/GetProperties"); const PropertyOperationCodec_1 = require("xiot-core-spec-ts/dist/xiot/core/spec/codec/operation/PropertyOperationCodec"); class GetPropertiesCodec { encodeQueryContent(query) { if (query instanceof GetProperties_1.QueryGetProperties) { const list = PropertyOperationCodec_1.PropertyOperationCodec.encodeQueryGETtoArray(query.properties); return { properties: list }; } return null; } encodeResultContent(result) { if (result instanceof GetProperties_1.ResultGetProperties) { const list = PropertyOperationCodec_1.PropertyOperationCodec.encodeResultGET(result.properties); return { properties: list }; } return null; } decodeQuery(id, content) { const properties = content['properties']; const list = PropertyOperationCodec_1.PropertyOperationCodec.decodePIDArray(properties); return new GetProperties_1.QueryGetProperties(id, list); } decodeResult(id, content) { const list = PropertyOperationCodec_1.PropertyOperationCodec.decodeValues(content); return new GetProperties_1.ResultGetProperties(id, list); } } exports.GetPropertiesCodec = GetPropertiesCodec;