Merge "Prevent adding same type of Op policy"
[clamp.git] / ui-react / src / api / LoopService.js
index 2750763..3b9ed86 100644 (file)
@@ -171,8 +171,8 @@ export default class LoopService {
                        });
        }
 
-       static refreshOpPolicyJson(loopName) {
-               return fetch('/restservices/clds/v2/loop/refreshOpPolicyJsonSchema/' + loopName, {
+       static refreshOperationalPolicyJson(loopName,operationalPolicyName) {
+               return fetch('/restservices/clds/v2/loop/refreshOperationalPolicyJsonSchema/' + loopName + '/' + operationalPolicyName, {
                        method: 'PUT',
                        headers: {
                                "Content-Type": "application/json"
@@ -194,6 +194,29 @@ export default class LoopService {
                        });
        }
 
+               static refreshMicroServicePolicyJson(loopName,microServicePolicyName) {
+               return fetch('/restservices/clds/v2/loop/refreshMicroServicePolicyJsonSchema/' + loopName + '/' + microServicePolicyName, {
+                       method: 'PUT',
+                       headers: {
+                               "Content-Type": "application/json"
+                       },
+                       credentials: 'same-origin'
+               })
+                       .then(function (response) {
+                               console.debug("Refresh Operational Policy Json Schema response received: ", response.status);
+                               if (response.ok) {
+                                       return response.json();
+                               } else {
+                                       console.error("Refresh Operational Policy Json Schema query failed");
+                                       return {};
+                               }
+                       })
+                       .catch(function (error) {
+                               console.error("Refresh Operational Policy Json Schema error received", error);
+                               return {};
+                       });
+    }
+
        static addOperationalPolicyType(loopName, policyType, policyVersion) {
                return fetch('/restservices/clds/v2/loop/addOperationaPolicy/' + loopName + '/policyModel/' + policyType +'/' + policyVersion , {
                        method: 'PUT',
@@ -203,22 +226,21 @@ export default class LoopService {
                        credentials: 'same-origin'
                })
                                .then(function (response) {
-                                       console.debug("Add Operational Policy response received: ", response.status);
+                               console.debug("Add Operational Policy response received: ", response.status);
                                if (response.ok) {
                                        return response.json();
                                } else {
-                                       console.error("Add Operational Policy query failed");
-                                       return {};
+                                       return response.text();
                                }
                        })
-                       .catch(function (error) {
-                               console.error("Add Operational Policy error received", error);
-                               return {};
-                       });
+                       .then(function (object) {
+                               console.error("Add Operational Policy query failed");
+                               throw new Error(object);
+                       })
        }
 
-       static removeOperationalPolicyType(loopName, policyType, policyVersion) {
-               return fetch('/restservices/clds/v2/loop/removeOperationaPolicy/' + loopName + '/policyModel/' + policyType +'/' + policyVersion , {
+       static removeOperationalPolicyType(loopName, policyType, policyVersion, policyName) {
+               return fetch('/restservices/clds/v2/loop/removeOperationaPolicy/' + loopName + '/policyModel/' + policyType +'/' + policyVersion + '/' + policyName , {
                        method: 'PUT',
                        headers: {
                                "Content-Type": "application/json"