@p2olab/pimad-core
Version:
PiMAd (Process-industry-Modular-Automation-description) High level access to automation of modular plants.
76 lines (75 loc) • 3.22 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.AModuleAutomationObject = void 0;
const Backbone_1 = require("../Backbone");
var PiMAdResponseHandler = Backbone_1.Backbone.PiMAdResponseHandler;
var PiMAdResponseTypes = Backbone_1.Backbone.PiMAdResponseTypes;
class AModuleAutomationObject {
constructor() {
// this.dataSourceIdentifier = 'dataSourceIdentifier: undefined';
// this.name='name: undefined';
// this.defaultValue = 'defaultValue: undefined';
// this.value = 'value: undefined';
// this.description = 'description: undefined';
this.initialized = false;
// this.metaModelRef = 'metaModelRef: undefined';
//this.pimadIdentifier = 'pimadIdentifier: undefined';
this.responseHandler = new PiMAdResponseHandler();
}
getDataSourceIdentifier(callback) {
this.genericPiMAdGetter(this.dataSourceIdentifier, callback);
}
getDefaultValue(callback) {
this.genericPiMAdGetter(this.defaultValue, callback);
}
getDescription(callback) {
this.genericPiMAdGetter(this.description, callback);
}
getMetaModelRef(callback) {
this.genericPiMAdGetter(this.metaModelRef, callback);
}
getName(callback) {
this.genericPiMAdGetter(this.name, callback);
}
getPiMAdIdentifier(callback) {
this.genericPiMAdGetter(this.pimadIdentifier, callback);
}
getValue(callback) {
this.genericPiMAdGetter(this.value, callback);
}
genericPiMAdGetter(data, callback) {
if (this.initialized) {
if (JSON.stringify(data) === '{}') {
callback(this.responseHandler.handleResponse(PiMAdResponseTypes.ERROR, 'Data is empty.', {}), data);
}
else {
callback(this.responseHandler.handleResponse(PiMAdResponseTypes.SUCCESS, 'Success', {}), data);
}
}
else {
callback(this.responseHandler.handleResponse(PiMAdResponseTypes.ERROR, 'The instance is not initialized', {}), data);
}
}
moduleAutomationObjectInitialize(instructions) {
// WP
if (instructions.dataSourceIdentifier != undefined)
this.dataSourceIdentifier = instructions.dataSourceIdentifier;
if (instructions.metaModelRef != undefined)
this.metaModelRef = instructions.metaModelRef;
if (instructions.value != undefined)
this.value = instructions.value;
if (instructions.defaultValue != undefined)
this.defaultValue = instructions.defaultValue;
if (instructions.description != undefined)
this.description = instructions.description;
this.name = instructions.name;
this.pimadIdentifier = instructions.pimadIdentifier;
//TODO: e.g. TAGName doesn't has datasourceidentifier...
return (
//this.dataSourceIdentifier === instructions.dataSourceIdentifier &&
// this.metaModelRef === instructions.metaModelRef &&
this.name === instructions.name &&
this.pimadIdentifier === instructions.pimadIdentifier);
}
}
exports.AModuleAutomationObject = AModuleAutomationObject;