@enervance/insight-cim-model 0.0.372 → 0.0.373-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analysis/analysis-neplan/contingency-analysis.neplan.westnetz.js +1 -1
- package/dist/analysis/analysis-neplan/contingency-analysis.neplan.westnetz.js.map +1 -1
- package/dist/config/load.confings.js +1 -2
- package/dist/config/load.confings.js.map +1 -1
- package/dist/constants/cim-class-names.d.ts +2 -1
- package/dist/constants/cim-class-names.js +2 -1
- package/dist/constants/cim-class-names.js.map +1 -1
- package/dist/converter/integral7/config/integral-prefix.d.ts +6 -0
- package/dist/converter/integral7/config/integral-prefix.js +7 -1
- package/dist/converter/integral7/config/integral-prefix.js.map +1 -1
- package/dist/converter/integral7/converter.integral7.d.ts +1 -0
- package/dist/converter/integral7/converter.integral7.js +198 -62
- package/dist/converter/integral7/converter.integral7.js.map +1 -1
- package/dist/converter/integral7/dl-convert/db/database.interface.types.d.ts +28 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7.d.ts +11 -4
- package/dist/converter/integral7/dl-convert/dl-converter-i7.js +308 -31
- package/dist/converter/integral7/dl-convert/dl-converter-i7.js.map +1 -1
- package/dist/converter/integral7/dl-convert/dl-graphs/convert-graph-keys.d.ts +10 -1
- package/dist/converter/integral7/dl-convert/dl-graphs/convert-graph-keys.js +6 -0
- package/dist/converter/integral7/dl-convert/dl-graphs/convert-graph-keys.js.map +1 -1
- package/dist/converter/integral7/dl-convert/dl-graphs/db-object-graph.js +5 -12
- package/dist/converter/integral7/dl-convert/dl-graphs/db-object-graph.js.map +1 -1
- package/dist/converter/integral7/dl-convert/executor.js +15 -3
- package/dist/converter/integral7/dl-convert/executor.js.map +1 -1
- package/dist/converter/integral7/interface-i7/data-structures-i7.d.ts +3 -1
- package/dist/converter/integral7/interface-i7/data-structures-i7.js.map +1 -1
- package/dist/converter/integral7/interface-i7/default-values-config.interface.d.ts +8 -0
- package/dist/converter/integral7/interface-i7/export-frame-i7.d.ts +3 -1
- package/dist/converter/integral7/interface-i7/export-frame-i7.js +3 -2
- package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -1
- package/dist/converter/integral7/model/dl-utils/util-functions.d.ts +9 -1
- package/dist/converter/integral7/model/dl-utils/util-functions.js +32 -3
- package/dist/converter/integral7/model/dl-utils/util-functions.js.map +1 -1
- package/dist/converter/integral7/model/integral/BaseClass.d.ts +0 -2
- package/dist/converter/integral7/model/integral/BaseClass.js +0 -3
- package/dist/converter/integral7/model/integral/BaseClass.js.map +1 -1
- package/dist/converter/integral7/model/integral/KnotenZw.d.ts +7 -0
- package/dist/converter/integral7/model/integral/KnotenZw.js +13 -0
- package/dist/converter/integral7/model/integral/KnotenZw.js.map +1 -0
- package/dist/converter/integral7/model/integral/Netzbereich.d.ts +15 -0
- package/dist/converter/integral7/model/integral/Netzbereich.js +23 -0
- package/dist/converter/integral7/model/integral/Netzbereich.js.map +1 -0
- package/dist/converter/integral7/model/integral/NetzbereichAussen.d.ts +7 -0
- package/dist/converter/integral7/model/integral/NetzbereichAussen.js +12 -0
- package/dist/converter/integral7/model/integral/NetzbereichAussen.js.map +1 -0
- package/dist/converter/integral7/model/integral/NetzbereichInnen.d.ts +7 -0
- package/dist/converter/integral7/model/integral/NetzbereichInnen.js +12 -0
- package/dist/converter/integral7/model/integral/NetzbereichInnen.js.map +1 -0
- package/dist/converter/integral7/model/integral/NetzbereichRand.d.ts +7 -0
- package/dist/converter/integral7/model/integral/NetzbereichRand.js +12 -0
- package/dist/converter/integral7/model/integral/NetzbereichRand.js.map +1 -0
- package/dist/converter/integral7/sql/integral.sql.js +3 -0
- package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
- package/dist/converter/integral7/tp-bd-profile/convert-functions/convert-netzbereiche.d.ts +0 -0
- package/dist/converter/integral7/tp-bd-profile/convert-functions/convert-netzbereiche.js +2 -0
- package/dist/converter/integral7/tp-bd-profile/convert-functions/convert-netzbereiche.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/model/BoundaryPoint.d.ts +8 -0
- package/dist/converter/integral7/tp-bd-profile/model/BoundaryPoint.js +13 -0
- package/dist/converter/integral7/tp-bd-profile/model/BoundaryPoint.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/model/BoundarySet.d.ts +15 -0
- package/dist/converter/integral7/tp-bd-profile/model/BoundarySet.js +38 -0
- package/dist/converter/integral7/tp-bd-profile/model/BoundarySet.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/model/ExternalPoint.d.ts +8 -0
- package/dist/converter/integral7/tp-bd-profile/model/ExternalPoint.js +13 -0
- package/dist/converter/integral7/tp-bd-profile/model/ExternalPoint.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/model/InternalPoint.d.ts +8 -0
- package/dist/converter/integral7/tp-bd-profile/model/InternalPoint.js +13 -0
- package/dist/converter/integral7/tp-bd-profile/model/InternalPoint.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/model/convert-net-equivalent.model.d.ts +8 -0
- package/dist/converter/integral7/tp-bd-profile/model/convert-net-equivalent.model.js +9 -0
- package/dist/converter/integral7/tp-bd-profile/model/convert-net-equivalent.model.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.d.ts +9 -0
- package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.js +82 -0
- package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.types.d.ts +25 -0
- package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.types.js +3 -0
- package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.types.js.map +1 -0
- package/dist/converter/integral7/tp-bd-profile/tp-bd-converter.d.ts +23 -0
- package/dist/converter/integral7/tp-bd-profile/tp-bd-converter.js +244 -0
- package/dist/converter/integral7/tp-bd-profile/tp-bd-converter.js.map +1 -0
- package/dist/converter/integral7/utils-cgmes-export.js +2 -0
- package/dist/converter/integral7/utils-cgmes-export.js.map +1 -1
- package/dist/converter/integral7/utils.d.ts +1 -0
- package/dist/converter/integral7/utils.js +28 -2
- package/dist/converter/integral7/utils.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-feederline.js.map +1 -1
- package/dist/interfaces/model/core/IConnectivityNode.d.ts +6 -6
- package/dist/interfaces/model/core/ISubstation.d.ts +2 -2
- package/dist/interfaces/model/core/IVoltageLevel.d.ts +2 -0
- package/dist/model/assetinfo/SwitchInfo.d.ts +2 -0
- package/dist/model/assetinfo/SwitchInfo.js +6 -1
- package/dist/model/assetinfo/SwitchInfo.js.map +1 -1
- package/dist/model/core/BaseVoltage.d.ts +3 -0
- package/dist/model/core/BaseVoltage.js +6 -0
- package/dist/model/core/BaseVoltage.js.map +1 -1
- package/dist/model/core/ConnectivityNode.js +1 -2
- package/dist/model/core/ConnectivityNode.js.map +1 -1
- package/dist/model/core/ConnectivityNodeContainer.d.ts +3 -3
- package/dist/model/core/ConnectivityNodeContainer.js.map +1 -1
- package/dist/model/core/Substation.d.ts +2 -1
- package/dist/model/core/Substation.js +1 -2
- package/dist/model/core/Substation.js.map +1 -1
- package/dist/model/core/VoltageLevel.d.ts +9 -3
- package/dist/model/core/VoltageLevel.js +12 -3
- package/dist/model/core/VoltageLevel.js.map +1 -1
- package/dist/model/dc/DCNode.js +3 -3
- package/dist/model/dc/DCNode.js.map +1 -1
- package/dist/model/extensions/amprion/additionalassetvalue/AMPRIONAdditionalBayValue.js +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.d.ts +25 -0
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.js +114 -0
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.js.map +1 -0
- package/dist/model/extensions/integral/core/INTEGRALTerminal.d.ts +12 -0
- package/dist/model/extensions/integral/core/INTEGRALTerminal.js +37 -0
- package/dist/model/extensions/integral/core/INTEGRALTerminal.js.map +1 -0
- package/dist/model/extensions/integral/dc/DCConverterUnit.d.ts +11 -0
- package/dist/model/extensions/integral/dc/DCConverterUnit.js +34 -0
- package/dist/model/extensions/integral/dc/DCConverterUnit.js.map +1 -0
- package/dist/model/extensions/integral/dc/DCLineSegment.d.ts +10 -0
- package/dist/model/extensions/integral/dc/DCLineSegment.js +31 -0
- package/dist/model/extensions/integral/dc/DCLineSegment.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.d.ts +30 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js +189 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.d.ts +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js +21 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.d.ts +21 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js +102 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.d.ts +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.js +60 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.d.ts +11 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.js +55 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.d.ts +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.js +60 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.d.ts +7 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.js +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/common/WNLocation.d.ts +24 -0
- package/dist/model/extensions/neplan-westnetz/common/WNLocation.js +89 -0
- package/dist/model/extensions/neplan-westnetz/common/WNLocation.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/core/WNBay.d.ts +22 -0
- package/dist/model/extensions/neplan-westnetz/core/WNBay.js +87 -0
- package/dist/model/extensions/neplan-westnetz/core/WNBay.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.d.ts +71 -0
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js +570 -0
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.d.ts +44 -0
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js +234 -0
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.d.ts +5 -0
- package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.js +10 -0
- package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.d.ts +22 -0
- package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.js +98 -0
- package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/operations/WNOutage.d.ts +21 -0
- package/dist/model/extensions/neplan-westnetz/operations/WNOutage.js +100 -0
- package/dist/model/extensions/neplan-westnetz/operations/WNOutage.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.d.ts +20 -0
- package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js +105 -0
- package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.d.ts +75 -0
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js +505 -0
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js.map +1 -0
- package/dist/model/generic-data-set/ChangeSetMember.d.ts +0 -5
- package/dist/model/generic-data-set/ChangeSetMember.js +0 -10
- package/dist/model/generic-data-set/ChangeSetMember.js.map +1 -1
- package/dist/model/generic-data-set/ObjectCreation.js.map +1 -1
- package/dist/model/generic-data-set/ObjectInsertion.d.ts +10 -0
- package/dist/model/generic-data-set/ObjectInsertion.js +60 -0
- package/dist/model/generic-data-set/ObjectInsertion.js.map +1 -0
- package/dist/model/generic-data-set/ObjectRemoval.d.ts +10 -0
- package/dist/model/generic-data-set/ObjectRemoval.js +60 -0
- package/dist/model/generic-data-set/ObjectRemoval.js.map +1 -0
- package/dist/model/topology/TopologicalNode.d.ts +2 -0
- package/dist/model/topology/TopologicalNode.js +62 -0
- package/dist/model/topology/TopologicalNode.js.map +1 -1
- package/dist/model/wires/Breaker.js +1 -1
- package/dist/model/wires/Breaker.js.map +1 -1
- package/dist/model/wires/Disconnector.js +1 -1
- package/dist/model/wires/Disconnector.js.map +1 -1
- package/dist/model/wires/TransformerEnd.d.ts +2 -3
- package/dist/model/wires/TransformerEnd.js.map +1 -1
- package/dist/model-container/model/EVModelsContainer.d.ts +0 -2
- package/dist/model-container/model/EVModelsContainer.js +0 -99
- package/dist/model-container/model/EVModelsContainer.js.map +1 -1
- package/dist/model-container/model/ModelContainer.d.ts +9 -4
- package/dist/model-container/model/ModelContainer.js +17 -11
- package/dist/model-container/model/ModelContainer.js.map +1 -1
- package/dist/util/collection/util-graph2tree.js +2 -2
- package/dist/util/collection/util-graph2tree.js.map +1 -1
- package/dist/utils2/cim.model.utils.js +99 -6
- package/dist/utils2/cim.model.utils.js.map +1 -1
- package/dist/utils2/model.modification.utils.d.ts +13 -3
- package/dist/utils2/model.modification.utils.js +188 -28
- package/dist/utils2/model.modification.utils.js.map +1 -1
- package/dist/utils2/parser.utils.d.ts +0 -3
- package/dist/utils2/parser.utils.js +2 -5
- package/dist/utils2/parser.utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -128,7 +128,6 @@ const RdfEnum_1 = require("../rdf/RdfEnum.js");
|
|
|
128
128
|
const EVModelsContainer_1 = require("../model-container/model/EVModelsContainer.js");
|
|
129
129
|
const VoltageLimit_1 = require("../model/operationallimits/VoltageLimit.js");
|
|
130
130
|
const EVSourceSystemKind_1 = require("../model-container/enum/EVSourceSystemKind.js");
|
|
131
|
-
const EVMetaObject_1 = require("../model/extensions/enervance/generic-data-set/EVMetaObject.js");
|
|
132
131
|
const parser_utils_1 = require("./parser.utils.js");
|
|
133
132
|
const fuseki_utils_1 = require("./fuseki.utils.js");
|
|
134
133
|
const AggregateScore_1 = require("../model/assets/AggregateScore.js");
|
|
@@ -180,6 +179,8 @@ const TapChangerControl_1 = require("../model/wires/TapChangerControl.js");
|
|
|
180
179
|
const INTEGRALPetersenCoilInfo_1 = require("../model/extensions/integral/assetinfo/INTEGRALPetersenCoilInfo.js");
|
|
181
180
|
const AMPRIONAdditionalBayValue_1 = require("../model/extensions/amprion/additionalassetvalue/AMPRIONAdditionalBayValue.js");
|
|
182
181
|
const model_modification_utils_1 = require("./model.modification.utils.js");
|
|
182
|
+
const ObjectRemoval_1 = require("../model/generic-data-set/ObjectRemoval.js");
|
|
183
|
+
const ObjectInsertion_1 = require("../model/generic-data-set/ObjectInsertion.js");
|
|
183
184
|
class CimModelUtils {
|
|
184
185
|
/**
|
|
185
186
|
* Erstellt eine Map mit Klassendefinitionen
|
|
@@ -354,9 +355,10 @@ class CimModelUtils {
|
|
|
354
355
|
map.set(cim_class_names_1.ClassNames.ChangeSet, ChangeSet_1.ChangeSet);
|
|
355
356
|
map.set(cim_class_names_1.ClassNames.ObjectCreation, ObjectCreation_1.ObjectCreation);
|
|
356
357
|
map.set(cim_class_names_1.ClassNames.ObjectDeletion, ObjectDeletion_1.ObjectDeletion);
|
|
358
|
+
map.set(cim_class_names_1.ClassNames.ObjectInsertion, ObjectInsertion_1.ObjectInsertion);
|
|
359
|
+
map.set(cim_class_names_1.ClassNames.ObjectRemoval, ObjectRemoval_1.ObjectRemoval);
|
|
357
360
|
map.set(cim_class_names_1.ClassNames.ObjectModification, ObjectModification_1.ObjectModification);
|
|
358
361
|
map.set(cim_class_names_1.ClassNames.ObjectReverseModification, ObjectReverseModification_1.ObjectReverseModification);
|
|
359
|
-
map.set(cim_class_names_1.ClassNames.EVMetaObject, EVMetaObject_1.EVMetaObject);
|
|
360
362
|
map.set(cim_class_names_1.ClassNames.ModelOperationDescription, ModelOperationDescription_1.ModelOperationDescription);
|
|
361
363
|
map.set(cim_class_names_1.ClassNames.ModelOperation, ModelOperation_1.ModelOperation);
|
|
362
364
|
map.set(cim_class_names_1.ClassNames.IncrementalDatasetArgDescription, IncrementalDatasetArgDescription_1.IncrementalDatasetArgDescription);
|
|
@@ -462,7 +464,7 @@ class CimModelUtils {
|
|
|
462
464
|
}
|
|
463
465
|
/** Instanziiert Inhalte eines Modellobjektes */
|
|
464
466
|
static loadNetworkModel(fusekiUrl, graphUri, loadConfig, modelContainer, modelType) {
|
|
465
|
-
var _a;
|
|
467
|
+
var _a, _b;
|
|
466
468
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
467
469
|
const classDefinitions = CimModelUtils.getClassDefinitions();
|
|
468
470
|
if (!modelContainer) {
|
|
@@ -479,6 +481,52 @@ class CimModelUtils {
|
|
|
479
481
|
(_a = classDefinitions.get(className)) === null || _a === void 0 ? void 0 : _a.resolveClassFusekiJSON(rawData, modelContainer);
|
|
480
482
|
}
|
|
481
483
|
modelContainer.resolveParsedAssociations();
|
|
484
|
+
/* ---------- ---------- ---------- ---------- ---------- */
|
|
485
|
+
// BEGIN
|
|
486
|
+
switch (modelType) {
|
|
487
|
+
case EVModelTypeKind_1.EVModelTypeKind.alternateModel:
|
|
488
|
+
case EVModelTypeKind_1.EVModelTypeKind.eActionModel:
|
|
489
|
+
const changeSetMembers = [
|
|
490
|
+
...modelContainer.objectCreation.values(),
|
|
491
|
+
...modelContainer.objectDeletion.values(),
|
|
492
|
+
...modelContainer.objectInsertion.values(),
|
|
493
|
+
...modelContainer.objectRemoval.values(),
|
|
494
|
+
...modelContainer.objectReverseModification.values(),
|
|
495
|
+
...modelContainer.objectModification.values()
|
|
496
|
+
];
|
|
497
|
+
const propertiesObjectUUIDs = new Set();
|
|
498
|
+
for (const changeSetMember of changeSetMembers) {
|
|
499
|
+
if (changeSetMember.propertiesObject)
|
|
500
|
+
propertiesObjectUUIDs.add(changeSetMember.propertiesObject.getUUID());
|
|
501
|
+
}
|
|
502
|
+
for (let i = 0; i < fusekiResponse.length; i++) {
|
|
503
|
+
const className = fusekiResponse[i].type;
|
|
504
|
+
const rawData = fusekiResponse[i];
|
|
505
|
+
const dataValues = (_b = rawData === null || rawData === void 0 ? void 0 : rawData.results) === null || _b === void 0 ? void 0 : _b.bindings;
|
|
506
|
+
for (const rawDataEntry of dataValues) {
|
|
507
|
+
let objectUUID = parser_utils_1.ParserUtils.getValue(rawDataEntry, 'mrid');
|
|
508
|
+
if (!objectUUID)
|
|
509
|
+
objectUUID = parser_utils_1.ParserUtils.getValue(rawDataEntry, 'uuid');
|
|
510
|
+
// only continue for properties objects of change set members
|
|
511
|
+
if (!propertiesObjectUUIDs.has(objectUUID))
|
|
512
|
+
continue;
|
|
513
|
+
const propertiesObject = modelContainer.getObject(objectUUID);
|
|
514
|
+
if (propertiesObject === undefined) {
|
|
515
|
+
throw new Error(`Failed to find properties object with ${objectUUID} for the purge process!`);
|
|
516
|
+
}
|
|
517
|
+
// purge the properties object
|
|
518
|
+
const propertiesObjectKeys = Object.keys(propertiesObject);
|
|
519
|
+
for (const propertyName of propertiesObjectKeys) {
|
|
520
|
+
if (rawDataEntry.hasOwnProperty(propertyName))
|
|
521
|
+
continue;
|
|
522
|
+
delete propertiesObject[propertyName];
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
break;
|
|
527
|
+
}
|
|
528
|
+
// END
|
|
529
|
+
/* ---------- ---------- ---------- ---------- ---------- */
|
|
482
530
|
return modelContainer;
|
|
483
531
|
});
|
|
484
532
|
}
|
|
@@ -500,7 +548,7 @@ class CimModelUtils {
|
|
|
500
548
|
});
|
|
501
549
|
}
|
|
502
550
|
static loadNetworkModel2(fusekiUrl, graphUri, loadConfig, modelContainer, modelType) {
|
|
503
|
-
var _a;
|
|
551
|
+
var _a, _b;
|
|
504
552
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
505
553
|
const classDefinitions = CimModelUtils.getClassDefinitions();
|
|
506
554
|
if (!modelContainer) {
|
|
@@ -517,6 +565,52 @@ class CimModelUtils {
|
|
|
517
565
|
(_a = classDefinitions.get(className)) === null || _a === void 0 ? void 0 : _a.resolveClassFusekiJSON(rawData, modelContainer);
|
|
518
566
|
}
|
|
519
567
|
modelContainer.resolveParsedAssociations();
|
|
568
|
+
/* ---------- ---------- ---------- ---------- ---------- */
|
|
569
|
+
// BEGIN
|
|
570
|
+
switch (modelType) {
|
|
571
|
+
case EVModelTypeKind_1.EVModelTypeKind.alternateModel:
|
|
572
|
+
case EVModelTypeKind_1.EVModelTypeKind.eActionModel:
|
|
573
|
+
const changeSetMembers = [
|
|
574
|
+
...modelContainer.objectCreation.values(),
|
|
575
|
+
...modelContainer.objectDeletion.values(),
|
|
576
|
+
...modelContainer.objectInsertion.values(),
|
|
577
|
+
...modelContainer.objectRemoval.values(),
|
|
578
|
+
...modelContainer.objectReverseModification.values(),
|
|
579
|
+
...modelContainer.objectModification.values()
|
|
580
|
+
];
|
|
581
|
+
const propertiesObjectUUIDs = new Set();
|
|
582
|
+
for (const changeSetMember of changeSetMembers) {
|
|
583
|
+
if (changeSetMember.propertiesObject)
|
|
584
|
+
propertiesObjectUUIDs.add(changeSetMember.propertiesObject.getUUID());
|
|
585
|
+
}
|
|
586
|
+
for (let i = 0; i < fusekiResponse.length; i++) {
|
|
587
|
+
const className = fusekiResponse[i].type;
|
|
588
|
+
const rawData = fusekiResponse[i];
|
|
589
|
+
const dataValues = (_b = rawData === null || rawData === void 0 ? void 0 : rawData.results) === null || _b === void 0 ? void 0 : _b.bindings;
|
|
590
|
+
for (const rawDataEntry of dataValues) {
|
|
591
|
+
let objectUUID = parser_utils_1.ParserUtils.getValue(rawDataEntry, 'mrid');
|
|
592
|
+
if (!objectUUID)
|
|
593
|
+
objectUUID = parser_utils_1.ParserUtils.getValue(rawDataEntry, 'uuid');
|
|
594
|
+
// only continue for properties objects of change set members
|
|
595
|
+
if (!propertiesObjectUUIDs.has(objectUUID))
|
|
596
|
+
continue;
|
|
597
|
+
const propertiesObject = modelContainer.getObject(objectUUID);
|
|
598
|
+
if (propertiesObject === undefined) {
|
|
599
|
+
throw new Error(`Failed to find properties object with ${objectUUID} for the purge process!`);
|
|
600
|
+
}
|
|
601
|
+
// purge the properties object
|
|
602
|
+
const propertiesObjectKeys = Object.keys(propertiesObject);
|
|
603
|
+
for (const propertyName of propertiesObjectKeys) {
|
|
604
|
+
if (rawDataEntry.hasOwnProperty(propertyName))
|
|
605
|
+
continue;
|
|
606
|
+
delete propertiesObject[propertyName];
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
}
|
|
610
|
+
break;
|
|
611
|
+
}
|
|
612
|
+
// END
|
|
613
|
+
/* ---------- ---------- ---------- ---------- ---------- */
|
|
520
614
|
return modelContainer;
|
|
521
615
|
});
|
|
522
616
|
}
|
|
@@ -557,9 +651,8 @@ class CimModelUtils {
|
|
|
557
651
|
const incrementalDatasetArgs = Array.from(changeSet.incrementalDatasetArg.values());
|
|
558
652
|
const modelOperations = incrementalDatasetArgs.map(it => it.modelOperation);
|
|
559
653
|
const changeSetMembers = changeSet.changeSetMember;
|
|
560
|
-
const metaObjects = changeSetMembers.map(it => [...it.getMetaObjects().values()]).flat();
|
|
561
654
|
const targetPropertiesObjects = changeSetMembers.map(it => [it.targetObject, it.propertiesObject]).flat();
|
|
562
|
-
newObjects.push(changeSet, ...incrementalDatasetArgs, ...modelOperations, ...changeSetMembers, ...
|
|
655
|
+
newObjects.push(changeSet, ...incrementalDatasetArgs, ...modelOperations, ...changeSetMembers, ...targetPropertiesObjects);
|
|
563
656
|
break;
|
|
564
657
|
}
|
|
565
658
|
default: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cim.model.utils.js","sourceRoot":"","sources":["../../src/utils2/cim.model.utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cim.model.utils.js","sourceRoot":"","sources":["../../src/utils2/cim.model.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,9 +8,10 @@ import { EVModelsContainer } from '../model-container/model/EVModelsContainer.js
|
|
|
8
8
|
import { ModelOperationDescription } from '../model/model-operations/ModelOperationDescription.js';
|
|
9
9
|
import { IncrementalDatasetArg } from '../model/model-operations/IncrementalDatasetArg.js';
|
|
10
10
|
import { ModelOperation } from '../model/model-operations/ModelOperation.js';
|
|
11
|
-
import { EVMetaObject } from '../model/extensions/enervance/generic-data-set/EVMetaObject.js';
|
|
12
11
|
import { ChangeSetMember } from '../model/generic-data-set/ChangeSetMember.js';
|
|
13
12
|
import { EVModelContainer } from '../model-container/model/EVModelContainer.js';
|
|
13
|
+
import { ObjectInsertion } from '../model/generic-data-set/ObjectInsertion.js';
|
|
14
|
+
import { ObjectRemoval } from '../model/generic-data-set/ObjectRemoval.js';
|
|
14
15
|
export type CRUDBaseObjectType = {
|
|
15
16
|
mrid: string;
|
|
16
17
|
};
|
|
@@ -29,8 +30,9 @@ export declare abstract class ModelModificationUtils {
|
|
|
29
30
|
export declare abstract class CRUDFactory<T> {
|
|
30
31
|
static createObjectCreation<O extends CRUDStreamBaseObjectType>(targetObject: O, changeSet: ChangeSet): ObjectCreation;
|
|
31
32
|
static createObjectDeletion<O extends CRUDStreamBaseObjectType>(targetObject: O, changeSet: ChangeSet): ObjectDeletion;
|
|
33
|
+
static createObjectInsertion<O extends CRUDStreamBaseObjectType>(targetObject: O, changeSet: ChangeSet): ObjectInsertion;
|
|
34
|
+
static createObjectRemoval<O extends CRUDStreamBaseObjectType>(targetObject: O, changeSet: ChangeSet): ObjectRemoval;
|
|
32
35
|
static createObjectModification<O extends CRUDStreamBaseObjectType>(targetObject: O, changeSet: ChangeSet): ObjectModification;
|
|
33
|
-
static createMetaObject<O extends CRUDStreamBaseObjectType>(changeSetMember: ChangeSetMember): EVMetaObject;
|
|
34
36
|
static applyModelOperationDescription(modelOperationDescription: ModelOperationDescription, modelsContainer: EVModelsContainer): void;
|
|
35
37
|
static reverseModelOperationDescription(modelOperationDescription: ModelOperationDescription, modelsContainer: EVModelsContainer): void;
|
|
36
38
|
static applyChangeSets(model: EVModelsContainer, ...changeSets: ChangeSet[]): void;
|
|
@@ -40,10 +42,15 @@ export declare abstract class CRUDFactory<T> {
|
|
|
40
42
|
static applyObjectDeletion(model: EVModelsContainer, objectDeletion: ObjectDeletion | ObjectCreation): void;
|
|
41
43
|
static applyObjectModification(model: EVModelsContainer, objectModification: ObjectModification): void;
|
|
42
44
|
static applyObjectReverseModification(model: EVModelsContainer, objectReverseModification: ObjectReverseModification): void;
|
|
45
|
+
static applyObjectInsertion(model: EVModelsContainer, objectInsertion: ObjectInsertion | ObjectRemoval): void;
|
|
46
|
+
static applyObjectRemoval(model: EVModelsContainer, objectRemoval: ObjectRemoval | ObjectInsertion): void;
|
|
43
47
|
static applyObjectProperties(baseObject: any, propertiesObject: any, keepProperties: string[]): void;
|
|
44
48
|
private static inspectAndApplyPropertyChange;
|
|
45
49
|
private static instantiate;
|
|
46
50
|
private static allAttributes2Undefined;
|
|
51
|
+
private static isDeepEqual;
|
|
52
|
+
private static isDeepEqualRecursive;
|
|
53
|
+
private static isObjectLike;
|
|
47
54
|
}
|
|
48
55
|
export declare enum CRUDErrorMessage {
|
|
49
56
|
OPEN_WITHOUT_CLOSING = "Tried to open a new change set, but another CRUDStream is not being closed yet. Call closeChangeSet at the end of the changes (and before getting the change set)",
|
|
@@ -87,7 +94,6 @@ export declare class CRUDStream<Z extends CRUDStreamBaseObjectType> {
|
|
|
87
94
|
* needs to be done, because if not, the (reverse) property objects will not contain the correctly changed values
|
|
88
95
|
*/
|
|
89
96
|
closeChangeSet(): CRUDStream<Z>;
|
|
90
|
-
private createMetaObject;
|
|
91
97
|
/**
|
|
92
98
|
* Creates a Object-Creation based on the given target object. Its recommended that the target object is a plain version
|
|
93
99
|
* without having anything set to a specific value yet
|
|
@@ -102,6 +108,10 @@ export declare class CRUDStream<Z extends CRUDStreamBaseObjectType> {
|
|
|
102
108
|
* Creates a Object-Deletion based on the given target object.
|
|
103
109
|
*/
|
|
104
110
|
delete2<O extends CRUDStreamBaseObjectType, C>(targetObj: O): CRUDStream<O>;
|
|
111
|
+
insertIntoArray<O extends CRUDStreamBaseObjectType, P extends keyof O>(targetObj: O, attrName: typeof targetObj[P] extends (infer B)[] ? P : never, value: typeof targetObj[P] extends (infer B)[] ? B : never): CRUDStream<O>;
|
|
112
|
+
insertIntoMap<O extends CRUDStreamBaseObjectType, P extends keyof O>(targetObj: O, attrName: typeof targetObj[P] extends Map<infer A, infer B> ? P : never, key: typeof targetObj[P] extends Map<infer A, infer B> ? A : never, value: typeof targetObj[P] extends Map<infer A, infer B> ? B : never): CRUDStream<O>;
|
|
113
|
+
removeFromArray<O extends CRUDStreamBaseObjectType, P extends keyof O>(targetObj: O, attrName: typeof targetObj[P] extends (infer B)[] ? P : never, value: typeof targetObj[P] extends (infer B)[] ? B : never): CRUDStream<O>;
|
|
114
|
+
removeFromMap<O extends CRUDStreamBaseObjectType, P extends keyof O>(targetObj: O, attrName: typeof targetObj[P] extends Map<infer A, infer B> ? P : never, key: typeof targetObj[P] extends Map<infer A, infer B> ? A : never, value: typeof targetObj[P] extends Map<infer A, infer B> ? B : never): CRUDStream<O>;
|
|
105
115
|
/**
|
|
106
116
|
* Fallback version of the modify variant.
|
|
107
117
|
* Modify anything inside the callback-function of the target object. But its recommended to only do atomic changes
|
|
@@ -11,7 +11,8 @@ const ModelOperationDescription_1 = require("../model/model-operations/ModelOper
|
|
|
11
11
|
const IncrementalDatasetArg_1 = require("../model/model-operations/IncrementalDatasetArg.js");
|
|
12
12
|
const ModelOperation_1 = require("../model/model-operations/ModelOperation.js");
|
|
13
13
|
const cim_class_names_1 = require("../constants/cim-class-names.js");
|
|
14
|
-
const
|
|
14
|
+
const ObjectInsertion_1 = require("../model/generic-data-set/ObjectInsertion.js");
|
|
15
|
+
const ObjectRemoval_1 = require("../model/generic-data-set/ObjectRemoval.js");
|
|
15
16
|
var CRUDChangeSetState;
|
|
16
17
|
(function (CRUDChangeSetState) {
|
|
17
18
|
CRUDChangeSetState[CRUDChangeSetState["open"] = 0] = "open";
|
|
@@ -103,6 +104,30 @@ class CRUDFactory {
|
|
|
103
104
|
changeSet.changeSetMember.push(objectDeletion);
|
|
104
105
|
return objectDeletion;
|
|
105
106
|
}
|
|
107
|
+
static createObjectInsertion(targetObject, changeSet) {
|
|
108
|
+
const objectInsertion = new ObjectInsertion_1.ObjectInsertion(common_utils_1.CommonUtils.generateUUID());
|
|
109
|
+
objectInsertion.sequenceNumber = changeSet.changeSetMember.length + 1;
|
|
110
|
+
objectInsertion.targetObject = targetObject;
|
|
111
|
+
const propertiesObject = CRUDFactory.instantiate(Object.getPrototypeOf(targetObject).constructor);
|
|
112
|
+
CRUDFactory.allAttributes2Undefined(propertiesObject);
|
|
113
|
+
propertiesObject.mrid = common_utils_1.CommonUtils.generateUUID();
|
|
114
|
+
objectInsertion.propertiesObject = propertiesObject;
|
|
115
|
+
objectInsertion.setChangeSet(changeSet);
|
|
116
|
+
changeSet.changeSetMember.push(objectInsertion);
|
|
117
|
+
return objectInsertion;
|
|
118
|
+
}
|
|
119
|
+
static createObjectRemoval(targetObject, changeSet) {
|
|
120
|
+
const objectRemoval = new ObjectRemoval_1.ObjectRemoval(common_utils_1.CommonUtils.generateUUID());
|
|
121
|
+
objectRemoval.sequenceNumber = changeSet.changeSetMember.length + 1;
|
|
122
|
+
objectRemoval.targetObject = targetObject;
|
|
123
|
+
const propertiesObject = CRUDFactory.instantiate(Object.getPrototypeOf(targetObject).constructor);
|
|
124
|
+
CRUDFactory.allAttributes2Undefined(propertiesObject);
|
|
125
|
+
propertiesObject.mrid = common_utils_1.CommonUtils.generateUUID();
|
|
126
|
+
objectRemoval.propertiesObject = propertiesObject;
|
|
127
|
+
objectRemoval.setChangeSet(changeSet);
|
|
128
|
+
changeSet.changeSetMember.push(objectRemoval);
|
|
129
|
+
return objectRemoval;
|
|
130
|
+
}
|
|
106
131
|
static createObjectModification(targetObject, changeSet) {
|
|
107
132
|
const objectModification = new ObjectModification_1.ObjectModification(common_utils_1.CommonUtils.generateUUID());
|
|
108
133
|
const objectReverseModification = new ObjectReverseModification_1.ObjectReverseModification(common_utils_1.CommonUtils.generateUUID());
|
|
@@ -127,12 +152,6 @@ class CRUDFactory {
|
|
|
127
152
|
changeSet.changeSetMember.push(objectReverseModification);
|
|
128
153
|
return objectModification;
|
|
129
154
|
}
|
|
130
|
-
static createMetaObject(changeSetMember) {
|
|
131
|
-
const metaObject = new EVMetaObject_1.EVMetaObject(common_utils_1.CommonUtils.generateUUID());
|
|
132
|
-
metaObject.setChangeSetMember(changeSetMember);
|
|
133
|
-
changeSetMember.addMetaObject(metaObject);
|
|
134
|
-
return metaObject;
|
|
135
|
-
}
|
|
136
155
|
static applyModelOperationDescription(modelOperationDescription, modelsContainer) {
|
|
137
156
|
const changeSets = [];
|
|
138
157
|
if (modelOperationDescription) {
|
|
@@ -180,6 +199,12 @@ class CRUDFactory {
|
|
|
180
199
|
else if (changeSetMember instanceof ObjectModification_1.ObjectModification) {
|
|
181
200
|
CRUDFactory.applyObjectModification(model, changeSetMember);
|
|
182
201
|
}
|
|
202
|
+
else if (changeSetMember instanceof ObjectInsertion_1.ObjectInsertion) {
|
|
203
|
+
CRUDFactory.applyObjectInsertion(model, changeSetMember);
|
|
204
|
+
}
|
|
205
|
+
else if (changeSetMember instanceof ObjectRemoval_1.ObjectRemoval) {
|
|
206
|
+
CRUDFactory.applyObjectRemoval(model, changeSetMember);
|
|
207
|
+
}
|
|
183
208
|
}
|
|
184
209
|
}
|
|
185
210
|
}
|
|
@@ -199,6 +224,12 @@ class CRUDFactory {
|
|
|
199
224
|
else if (changeSetMember instanceof ObjectModification_1.ObjectModification) {
|
|
200
225
|
CRUDFactory.applyObjectReverseModification(model, changeSetMember.objectReverseModification);
|
|
201
226
|
}
|
|
227
|
+
else if (changeSetMember instanceof ObjectInsertion_1.ObjectInsertion) {
|
|
228
|
+
CRUDFactory.applyObjectRemoval(model, changeSetMember);
|
|
229
|
+
}
|
|
230
|
+
else if (changeSetMember instanceof ObjectRemoval_1.ObjectRemoval) {
|
|
231
|
+
CRUDFactory.applyObjectInsertion(model, changeSetMember);
|
|
232
|
+
}
|
|
202
233
|
}
|
|
203
234
|
}
|
|
204
235
|
}
|
|
@@ -240,6 +271,82 @@ class CRUDFactory {
|
|
|
240
271
|
CRUDFactory.applyObjectProperties(targetObject, objectReverseModification.propertiesObject, cim_class_names_1.keepProperties);
|
|
241
272
|
}
|
|
242
273
|
}
|
|
274
|
+
static applyObjectInsertion(model, objectInsertion) {
|
|
275
|
+
const targetObject = CRUDFactory.determineTargetObject(objectInsertion.getTargetObjectUUID(), model);
|
|
276
|
+
const propertiesObject = objectInsertion.propertiesObject;
|
|
277
|
+
if (propertiesObject) {
|
|
278
|
+
for (const propertyName of Object.keys(propertiesObject)) {
|
|
279
|
+
if (cim_class_names_1.keepProperties.includes(propertyName))
|
|
280
|
+
continue;
|
|
281
|
+
const propertyValue = propertiesObject[propertyName];
|
|
282
|
+
if (propertyValue instanceof Map) {
|
|
283
|
+
const targetObjectPropertyValue = targetObject[propertyName];
|
|
284
|
+
if (targetObjectPropertyValue instanceof Map) {
|
|
285
|
+
for (const [key, value] of propertyValue.entries()) {
|
|
286
|
+
targetObjectPropertyValue.set(key, value);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
else {
|
|
290
|
+
targetObject[propertyName] = new Map(propertyValue);
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
else if (Array.isArray(propertyValue)) {
|
|
294
|
+
const targetObjectPropertyValue = targetObject[propertyName];
|
|
295
|
+
if (Array.isArray(targetObjectPropertyValue)) {
|
|
296
|
+
for (const value of propertyValue) {
|
|
297
|
+
targetObjectPropertyValue.push(value);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
else {
|
|
301
|
+
targetObject[propertyName] = Array.from([propertyValue]);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
else {
|
|
305
|
+
throw Error('Not supported case!');
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
static applyObjectRemoval(model, objectRemoval) {
|
|
311
|
+
const targetObject = CRUDFactory.determineTargetObject(objectRemoval.getTargetObjectUUID(), model);
|
|
312
|
+
const propertiesObject = objectRemoval.propertiesObject;
|
|
313
|
+
if (propertiesObject) {
|
|
314
|
+
for (const propertyName of Object.keys(propertiesObject)) {
|
|
315
|
+
if (cim_class_names_1.keepProperties.includes(propertyName))
|
|
316
|
+
continue;
|
|
317
|
+
const propertyValue = propertiesObject[propertyName];
|
|
318
|
+
if (propertyValue instanceof Map) {
|
|
319
|
+
const targetObjectPropertyValue = targetObject[propertyName];
|
|
320
|
+
if (targetObjectPropertyValue instanceof Map) {
|
|
321
|
+
for (const [key, _] of propertyValue.entries()) {
|
|
322
|
+
targetObjectPropertyValue.delete(key);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
targetObject[propertyName] = new Map(propertyValue);
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
else if (Array.isArray(propertyValue)) {
|
|
330
|
+
const targetObjectPropertyValue = targetObject[propertyName];
|
|
331
|
+
if (Array.isArray(targetObjectPropertyValue)) {
|
|
332
|
+
for (const value of propertyValue) {
|
|
333
|
+
const first = targetObjectPropertyValue.findIndex(it => this.isDeepEqual(it, value));
|
|
334
|
+
if (first !== -1) {
|
|
335
|
+
targetObjectPropertyValue.splice(first, 1);
|
|
336
|
+
}
|
|
337
|
+
targetObject[propertyName] = targetObjectPropertyValue;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
else {
|
|
341
|
+
targetObject[propertyName] = Array.from([propertyValue]);
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
else {
|
|
345
|
+
throw Error('Not supported case!');
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
}
|
|
243
350
|
static applyObjectProperties(baseObject, propertiesObject, keepProperties) {
|
|
244
351
|
for (const key of Object.keys(propertiesObject)) {
|
|
245
352
|
CRUDFactory.inspectAndApplyPropertyChange(key, baseObject, propertiesObject, keepProperties);
|
|
@@ -266,6 +373,32 @@ class CRUDFactory {
|
|
|
266
373
|
delete object[key];
|
|
267
374
|
}
|
|
268
375
|
}
|
|
376
|
+
static isDeepEqual(object1, object2) {
|
|
377
|
+
return this.isDeepEqualRecursive(object1, object2);
|
|
378
|
+
}
|
|
379
|
+
static isDeepEqualRecursive(object1, object2) {
|
|
380
|
+
const both_objects = this.isObjectLike(object1) && this.isObjectLike(object2);
|
|
381
|
+
if (!both_objects && object1 !== object2) {
|
|
382
|
+
return false;
|
|
383
|
+
}
|
|
384
|
+
const object1_keys = Object.keys(object1);
|
|
385
|
+
const object2_keys = Object.keys(object2);
|
|
386
|
+
if (object1_keys.length !== object2_keys.length)
|
|
387
|
+
return false;
|
|
388
|
+
for (const key of object1_keys) {
|
|
389
|
+
const value1 = object1[key];
|
|
390
|
+
const value2 = object2[key];
|
|
391
|
+
const both_objects = this.isObjectLike(value1) && this.isObjectLike(value2);
|
|
392
|
+
if ((both_objects && !this.isDeepEqualRecursive(value1, value2))
|
|
393
|
+
|| (!both_objects && value1 !== value2)) {
|
|
394
|
+
return false;
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
return true;
|
|
398
|
+
}
|
|
399
|
+
static isObjectLike(thing) {
|
|
400
|
+
return thing != null && typeof thing === "object";
|
|
401
|
+
}
|
|
269
402
|
}
|
|
270
403
|
exports.CRUDFactory = CRUDFactory;
|
|
271
404
|
var CRUDErrorMessage;
|
|
@@ -332,25 +465,8 @@ class CRUDStream {
|
|
|
332
465
|
entry[0][objectProperty.attrName] = objectProperty.value;
|
|
333
466
|
}
|
|
334
467
|
}
|
|
335
|
-
/** Metainformationen erzeugen */
|
|
336
|
-
for (const changeSetMember of this.currentChangeSet.changeSetMember) {
|
|
337
|
-
if (changeSetMember instanceof ObjectCreation_1.ObjectCreation) {
|
|
338
|
-
this.createMetaObject(changeSetMember);
|
|
339
|
-
}
|
|
340
|
-
else if (changeSetMember instanceof ObjectModification_1.ObjectModification) {
|
|
341
|
-
this.createMetaObject(changeSetMember);
|
|
342
|
-
this.createMetaObject(changeSetMember.objectReverseModification);
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
468
|
return this;
|
|
346
469
|
}
|
|
347
|
-
createMetaObject(changeSetMember) {
|
|
348
|
-
for (const entry of Object.entries(changeSetMember.propertiesObject)) {
|
|
349
|
-
const metaObjectModification = CRUDFactory.createMetaObject(changeSetMember);
|
|
350
|
-
metaObjectModification.setPropertyName(entry[0]);
|
|
351
|
-
metaObjectModification.setPropertyState(entry[1]);
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
470
|
/**
|
|
355
471
|
* Creates a Object-Creation based on the given target object. Its recommended that the target object is a plain version
|
|
356
472
|
* without having anything set to a specific value yet
|
|
@@ -389,6 +505,54 @@ class CRUDStream {
|
|
|
389
505
|
this.ctxCimObject = targetObj;
|
|
390
506
|
return this;
|
|
391
507
|
}
|
|
508
|
+
insertIntoArray(targetObj, attrName, value) {
|
|
509
|
+
if (!this.canAddMember2ChangeSet()) {
|
|
510
|
+
throw new Error(CRUDErrorMessage.ACCESS_CLOSED_CHANGE_SET);
|
|
511
|
+
}
|
|
512
|
+
const objectInsertion = CRUDFactory.createObjectInsertion(targetObj, this.currentChangeSet);
|
|
513
|
+
// @ts-ignore
|
|
514
|
+
objectInsertion.propertiesObject[attrName] = [value];
|
|
515
|
+
this.ctxCimObject = targetObj;
|
|
516
|
+
this.currentChangeSetMember = objectInsertion;
|
|
517
|
+
return this;
|
|
518
|
+
}
|
|
519
|
+
insertIntoMap(targetObj, attrName, key, value) {
|
|
520
|
+
if (!this.canAddMember2ChangeSet()) {
|
|
521
|
+
throw new Error(CRUDErrorMessage.ACCESS_CLOSED_CHANGE_SET);
|
|
522
|
+
}
|
|
523
|
+
const objectInsertion = CRUDFactory.createObjectInsertion(targetObj, this.currentChangeSet);
|
|
524
|
+
const newMap = new Map();
|
|
525
|
+
newMap.set(key, value);
|
|
526
|
+
// @ts-ignore
|
|
527
|
+
objectInsertion.propertiesObject[attrName] = newMap;
|
|
528
|
+
this.ctxCimObject = targetObj;
|
|
529
|
+
this.currentChangeSetMember = objectInsertion;
|
|
530
|
+
return this;
|
|
531
|
+
}
|
|
532
|
+
removeFromArray(targetObj, attrName, value) {
|
|
533
|
+
if (!this.canAddMember2ChangeSet()) {
|
|
534
|
+
throw new Error(CRUDErrorMessage.ACCESS_CLOSED_CHANGE_SET);
|
|
535
|
+
}
|
|
536
|
+
const objectRemoval = CRUDFactory.createObjectRemoval(targetObj, this.currentChangeSet);
|
|
537
|
+
// @ts-ignore
|
|
538
|
+
objectRemoval.propertiesObject[attrName] = [value];
|
|
539
|
+
this.ctxCimObject = targetObj;
|
|
540
|
+
this.currentChangeSetMember = objectRemoval;
|
|
541
|
+
return this;
|
|
542
|
+
}
|
|
543
|
+
removeFromMap(targetObj, attrName, key, value) {
|
|
544
|
+
if (!this.canAddMember2ChangeSet()) {
|
|
545
|
+
throw new Error(CRUDErrorMessage.ACCESS_CLOSED_CHANGE_SET);
|
|
546
|
+
}
|
|
547
|
+
const objectRemoval = CRUDFactory.createObjectRemoval(targetObj, this.currentChangeSet);
|
|
548
|
+
const newMap = new Map();
|
|
549
|
+
newMap.set(key, value);
|
|
550
|
+
// @ts-ignore
|
|
551
|
+
objectRemoval.propertiesObject[attrName] = newMap;
|
|
552
|
+
this.ctxCimObject = targetObj;
|
|
553
|
+
this.currentChangeSetMember = objectRemoval;
|
|
554
|
+
return this;
|
|
555
|
+
}
|
|
392
556
|
/**
|
|
393
557
|
* Fallback version of the modify variant.
|
|
394
558
|
* Modify anything inside the callback-function of the target object. But its recommended to only do atomic changes
|
|
@@ -517,10 +681,6 @@ class CRUDStream {
|
|
|
517
681
|
}
|
|
518
682
|
// @ts-ignore
|
|
519
683
|
objectModification.propertiesObject[attrName] = new Map([...targetMap]);
|
|
520
|
-
/** Metainformationen */
|
|
521
|
-
const metaObjectModification = CRUDFactory.createMetaObject(objectModification);
|
|
522
|
-
metaObjectModification.setPropertyName(attrName);
|
|
523
|
-
metaObjectModification.setPropertyState(targetMap);
|
|
524
684
|
}
|
|
525
685
|
this.ctxCimObject = targetObj;
|
|
526
686
|
this.currentChangeSetMember = objectModification;
|