* limitations under the License.
* ============LICENSE_END============================================
* ===================================================================
- *
+ *
*/
-class LoopCache {
+export default class LoopCache {
loopJsonCache;
constructor(loopJson) {
this.loopJsonCache=loopJson;
- //LoopCache.SET_LOOP_JSON_CACHE(require('./example.json');
}
- updateMsProperties(type, newMsProperties) {
- if (newMsProperties["name"] == type) {
+ updateMicroServiceProperties(name, newMsProperties) {
for (var policy in this.loopJsonCache["microServicePolicies"]) {
- if (this.loopJsonCache["microServicePolicies"][policy]["name"] == type) {
- this.loopJsonCache["microServicePolicies"][policy] = newMsProperties;
+ if (this.loopJsonCache["microServicePolicies"][policy]["name"] === name) {
+ this.loopJsonCache["microServicePolicies"][policy]["configurationsJson"] = newMsProperties;
+ }
+ }
+ }
+
+ updateMicroServicePdpGroup(name, pdpGroup, pdpSubgroup) {
+ for (var policy in this.loopJsonCache["microServicePolicies"]) {
+ if (this.loopJsonCache["microServicePolicies"][policy]["name"] === name) {
+ this.loopJsonCache["microServicePolicies"][policy]["pdpGroup"] = pdpGroup;
+ this.loopJsonCache["microServicePolicies"][policy]["pdpSubgroup"] = pdpSubgroup;
}
}
- }
}
updateGlobalProperties(newGlobalProperties) {
this.loopJsonCache["globalPropertiesJson"] = newGlobalProperties;
}
- updateOpPolicyProperties(newOpProperties) {
- this.loopJsonCache["operationalPolicies"] = newOpProperties;
+ updateOperationalPolicyProperties(name, newOpProperties) {
+ for (var policy in this.loopJsonCache["operationalPolicies"]) {
+ if (this.loopJsonCache["operationalPolicies"][policy]["name"] === name) {
+ this.loopJsonCache["operationalPolicies"][policy]["configurationsJson"] = newOpProperties;
+ }
+ }
+ }
+
+ updateOperationalPolicyPdpGroup(name, pdpGroup, pdpSubgroup) {
+ for (var policy in this.loopJsonCache["operationalPolicies"]) {
+ if (this.loopJsonCache["operationalPolicies"][policy]["name"] === name) {
+ this.loopJsonCache["operationalPolicies"][policy]["pdpGroup"] = pdpGroup;
+ this.loopJsonCache["operationalPolicies"][policy]["pdpSubgroup"] = pdpSubgroup;
+ }
+ }
}
getLoopName() {
return this.loopJsonCache["name"];
}
- getOperationalPolicyProperty() {
- return JSON.parse(JSON.stringify(this.loopJsonCache["operationalPolicies"]["0"]["configurationsJson"]));
+ getOperationalPolicyJsonSchema() {
+ return this.loopJsonCache["operationalPolicies"]["0"]["jsonRepresentation"];
}
getOperationalPolicies() {
- return JSON.parse(JSON.stringify(this.loopJsonCache["operationalPolicies"]));
+ return this.loopJsonCache["operationalPolicies"];
}
- getGlobalProperty() {
- return JSON.parse(JSON.stringify(this.loopJsonCache["globalPropertiesJson"]));
+ getOperationalPoliciesNoJsonSchema() {
+ var operationalPolicies = JSON.parse(JSON.stringify(this.loopJsonCache["operationalPolicies"]));
+ delete operationalPolicies[0]["jsonRepresentation"];
+ return operationalPolicies;
}
- getDeploymentProperties() {
- return JSON.parse(JSON.stringify(this.loopJsonCache["globalPropertiesJson"]["dcaeDeployParameters"]));
+ getGlobalProperties() {
+ return this.loopJsonCache["globalPropertiesJson"];
}
- getMsJson(type) {
- var msProperties = this.loopJsonCache["microServicePolicies"];
- for (var policy in msProperties) {
- if (msProperties[policy]["name"] == type) {
- return JSON.parse(JSON.stringify(msProperties[policy]));
+ getDcaeDeploymentProperties() {
+ return this.loopJsonCache["globalPropertiesJson"]["dcaeDeployParameters"];
+ }
+
+ getMicroServicePolicies() {
+ return this.loopJsonCache["microServicePolicies"];
+ }
+
+ getOperationalPolicyForName(name) {
+ var opProperties=this.getOperationalPolicies();
+ for (var policy in opProperties) {
+ if (opProperties[policy]["name"] === name) {
+ return opProperties[policy];
}
}
return null;
}
- getMsProperty(type) {
- var msProperties = this.loopJsonCache["microServicePolicies"];
- for (var policy in msProperties) {
- if (msProperties[policy]["name"] == type) {
- if (msProperties[policy]["properties"] !== null && msProperties[policy]["properties"] !== undefined) {
- return JSON.parse(JSON.stringify(msProperties[policy]["properties"]));
- }
+ getOperationalPolicyPropertiesForName(name) {
+ var opConfig = this.getOperationalPolicyForName(name);
+ if (opConfig !== null) {
+ return opConfig["configurationsJson"];
+ }
+ return null;
+ }
+
+ getOperationalPolicyJsonRepresentationForName(name) {
+ var opConfig = this.getOperationalPolicyForName(name);
+ if (opConfig !== null) {
+ return opConfig["jsonRepresentation"];
+ }
+ return null;
+ }
+
+ getOperationalPolicySupportedPdpGroup(name) {
+ var opConfig=this.getOperationalPolicyForName(name);
+ if (opConfig !== null) {
+ if (opConfig["policyModel"]["policyPdpGroup"] !== undefined && opConfig["policyModel"]["policyPdpGroup"]["supportedPdpGroups"] !== undefined) {
+ return opConfig["policyModel"]["policyPdpGroup"]["supportedPdpGroups"];
+ }
+ }
+ return [];
+ }
+
+ getOperationalPolicyPdpGroup(name) {
+ var opConfig=this.getOperationalPolicyForName(name);
+ if (opConfig !== null) {
+ return opConfig["pdpGroup"];
+ }
+ return null;
+ }
+
+ getOperationalPolicyPdpSubgroup(name) {
+ var opConfig=this.getOperationalPolicyForName(name);
+ if (opConfig !== null) {
+ return opConfig["pdpSubgroup"];
+ }
+ return null;
+ }
+
+ getMicroServiceSupportedPdpGroup(name) {
+ var microService=this.getMicroServiceForName(name);
+ if (microService !== null) {
+ if (microService["policyModel"]["policyPdpGroup"] !== undefined && microService["policyModel"]["policyPdpGroup"]["supportedPdpGroups"] !== undefined) {
+ return microService["policyModel"]["policyPdpGroup"]["supportedPdpGroups"];
}
}
+ return [];
+ }
+
+ getMicroServicePdpGroup(name) {
+ var microService=this.getMicroServiceForName(name);
+ if (microService !== null) {
+ return microService["pdpGroup"];
+ }
+ return null;
+ }
+
+ getMicroServicePdpSubgroup(name) {
+ var microService=this.getMicroServiceForName(name);
+ if (microService !== null) {
+ return microService["pdpSubgroup"];
+ }
return null;
}
- getMsUI(type) {
- var msProperties = this.loopJsonCache["microServicePolicies"];
+ getMicroServiceForName(name) {
+ var msProperties=this.getMicroServicePolicies();
for (var policy in msProperties) {
- if (msProperties[policy]["name"] == type) {
- return JSON.parse(JSON.stringify(msProperties[policy]["jsonRepresentation"]));
+ if (msProperties[policy]["name"] === name) {
+ return msProperties[policy];
}
}
return null;
}
+ getMicroServicePropertiesForName(name) {
+ var msConfig = this.getMicroServiceForName(name);
+ if (msConfig !== null) {
+ return msConfig["configurationsJson"];
+ }
+ return null;
+ }
+
+ getMicroServiceJsonRepresentationForName(name) {
+ var msConfig = this.getMicroServiceForName(name);
+ if (msConfig !== null) {
+ return msConfig["jsonRepresentation"];
+ }
+ return null;
+ }
+
getResourceDetailsVfProperty() {
- return this.loopJsonCache["modelPropertiesJson"]["resourceDetails"]["VF"];
+ return this.loopJsonCache["modelService"]["resourceDetails"]["VF"];
}
getResourceDetailsVfModuleProperty() {
- return this.loopJsonCache["modelPropertiesJson"]["resourceDetails"]["VFModule"];
+ return this.loopJsonCache["modelService"]["resourceDetails"]["VFModule"];
}
getLoopLogsArray() {
return this.loopJsonCache.loopLogs;
}
+ getComputedState() {
+ return this.loopJsonCache.lastComputedState;
+ }
+
getComponentStates() {
return this.loopJsonCache.components;
}
- get getLoopJsonCache() {
- return this.loopJsonCache;
+ getTemplateName() {
+ if (this.getLoopTemplate() !== undefined) {
+ return this.getLoopTemplate().name;
+ }
+ return null;
}
- set setLoopJsonCache(newJson) {
- this.loopJsonCache = newJson;
+ getLoopTemplate() {
+ return this.loopJsonCache["loopTemplate"];
}
-}
-export const LOOP_CACHE = new LoopCache(require('./example.json'));
+ isOpenLoopTemplate() {
+ var loopTemplate = this.getLoopTemplate();
+ if(loopTemplate != null && loopTemplate["allowedLoopType"] === "OPEN") {
+ return true;
+ }
+ return false;
+ }
-export default LoopCache;
+ getAllLoopElementModels() {
+ var loopTemplate = this.getLoopTemplate();
+ var loopElementModels = [];
+ if(loopTemplate != null) {
+ for (var element of loopTemplate['loopElementModelsUsed']) {
+ loopElementModels.push(element['loopElementModel'])
+ }
+ }
+ return loopElementModels;
+ }
+}