kitten-cloud-function
Version:
用于编程猫源码云功能(云变量、云列表等)的客户端工具
56 lines (55 loc) • 2.69 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.KittenCloudPublicVariableGroup = void 0;
const other_1 = require("../../../utils/other");
const kitten_cloud_send_message_type_1 = require("../../network/kitten-cloud-send-message-type");
const kitten_cloud_public_variable_1 = require("../kitten-cloud-public-variable");
const kitten_cloud_data_update_command_group_1 = require("../update/command/kitten-cloud-data-update-command-group");
const kitten_cloud_public_variable_set_command_1 = require("../update/command/kitten-cloud-public-variable-set-command");
const kitten_cloud_data_update_source_1 = require("../update/kitten-cloud-data-update-source");
const kitten_cloud_variable_group_1 = require("./kitten-cloud-variable-group");
/**
* 公有云变量组。
*/
class KittenCloudPublicVariableGroup extends kitten_cloud_variable_group_1.KittenCloudVariableGroup {
constructor() {
super(...arguments);
this.dataTypeName = "公有云变量";
this.dataUpdateSendMessageType = kitten_cloud_send_message_type_1.KittenCloudSendMessageType.UPDATE_PUBLIC_VARIABLE;
}
createData(cvid, name, value) {
return new kitten_cloud_public_variable_1.KittenCloudPublicVariable(this.connection, this, cvid, name, value);
}
toUploadMessage(message) {
if (message == "fail") {
throw new Error("更新失败");
}
if (!Array.isArray(message)) {
throw new Error(`无法识别更新数据格式:${message}`);
}
const errorArray = [];
const result = {};
for (const singleMessage of message) {
if (typeof singleMessage != "object") {
errorArray.push(new Error(`无法识别更新数据格式:${message}`));
continue;
}
const data = this.dataRecord[singleMessage.cvid];
if (data == other_1.None) {
errorArray.push(new Error(`找不到 cvid 为 ${singleMessage.cvid} 的公有云变量`));
continue;
}
result[singleMessage.cvid] = new kitten_cloud_data_update_command_group_1.KittenCloudDataUpdateCommandGroup([
new kitten_cloud_public_variable_set_command_1.KittenCloudPublicVariableSetCommand(kitten_cloud_data_update_source_1.KittenCloudDataUpdateSource.CLOUD, data, singleMessage.value)
]);
}
if (errorArray.length != 0) {
Object.assign(errorArray, {
message: result
});
throw errorArray;
}
return result;
}
}
exports.KittenCloudPublicVariableGroup = KittenCloudPublicVariableGroup;
;