Rework the policy refresh
[clamp.git] / ui-react / src / api / LoopCache.js
index b177230..c54337f 100644 (file)
@@ -31,7 +31,16 @@ export default class LoopCache {
        updateMicroServiceProperties(name, newMsProperties) {
                        for (var policy in this.loopJsonCache["microServicePolicies"]) {
                                if (this.loopJsonCache["microServicePolicies"][policy]["name"] === name) {
-                                       this.loopJsonCache["microServicePolicies"][policy]["properties"] = newMsProperties;
+                                       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;
                                }
                        }
        }
@@ -40,18 +49,27 @@ export default class LoopCache {
                this.loopJsonCache["globalPropertiesJson"] = newGlobalProperties;
        }
 
-       updateOperationalPolicyProperties(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"];
        }
 
-       getOperationalPolicyConfigurationJson() {
-               return this.loopJsonCache["operationalPolicies"]["0"]["configurationsJson"];
-       }
-       
        getOperationalPolicyJsonSchema() {
                return this.loopJsonCache["operationalPolicies"]["0"]["jsonRepresentation"];
        }
@@ -91,19 +109,70 @@ export default class LoopCache {
        getOperationalPolicyPropertiesForName(name) {
                var opConfig = this.getOperationalPolicyForName(name);
                if (opConfig !== null) {
-                       return opConfig["properties"];
+                       return opConfig["configurationsJson"];
                }
                return null;
        }
 
        getOperationalPolicyJsonRepresentationForName(name) {
-       var opConfig = this.getOperationalPolicyForName(name);
-       if (opConfig !== null) {
-               return opConfig["jsonRepresentation"];
-       }
-       return null;
-    }
+               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;
+       }
 
        getMicroServiceForName(name) {
                var msProperties=this.getMicroServicePolicies();
@@ -118,7 +187,7 @@ export default class LoopCache {
        getMicroServicePropertiesForName(name) {
                var msConfig = this.getMicroServiceForName(name);
                if (msConfig !== null) {
-                       return msConfig["properties"];
+                       return msConfig["configurationsJson"];
                }
                return null;
        }