[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-ui / src / sdc-app / onboarding / licenseModel / entitlementPools / EntitlementPoolsActionHelper.js
index 631597a..fe95b03 100644 (file)
@@ -1,40 +1,35 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
+/*!
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
+ *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
  */
-
 import RestAPIUtil from 'nfvo-utils/RestAPIUtil.js';
 import Configuration from 'sdc-app/config/Configuration.js';
 import {actionTypes as entitlementPoolsActionTypes } from './EntitlementPoolsConstants.js';
 import LicenseModelActionHelper from 'sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js';
 
-function baseUrl(licenseModelId) {
+function baseUrl(licenseModelId, version) {
        const restPrefix = Configuration.get('restPrefix');
-       return `${restPrefix}/v1.0/vendor-license-models/${licenseModelId}/entitlement-pools`;
+       const {id: versionId} = version;
+       return `${restPrefix}/v1.0/vendor-license-models/${licenseModelId}/versions/${versionId}/entitlement-pools`;
 }
 
-function fetchEntitlementPoolsList(licenseModelId, version) {
-       let versionQuery = version ? `?version=${version}` : '';
-       return RestAPIUtil.fetch(`${baseUrl(licenseModelId)}${versionQuery}`);
+function fetchEntitlementPoolsList(licenseModelId, version) {  
+       return RestAPIUtil.fetch(`${baseUrl(licenseModelId, version)}`);
 }
 
-function postEntitlementPool(licenseModelId, entitlementPool) {
-       return RestAPIUtil.create(baseUrl(licenseModelId), {
+function postEntitlementPool(licenseModelId, entitlementPool, version) {
+       return RestAPIUtil.post(baseUrl(licenseModelId, version), {
                name: entitlementPool.name,
                description: entitlementPool.description,
                thresholdValue: entitlementPool.thresholdValue,
@@ -49,8 +44,8 @@ function postEntitlementPool(licenseModelId, entitlementPool) {
 }
 
 
-function putEntitlementPool(licenseModelId, previousEntitlementPool, entitlementPool) {
-       return RestAPIUtil.save(`${baseUrl(licenseModelId)}/${entitlementPool.id}`, {
+function putEntitlementPool(licenseModelId, previousEntitlementPool, entitlementPool, version) {
+       return RestAPIUtil.put(`${baseUrl(licenseModelId, version)}/${entitlementPool.id}`, {
                name: entitlementPool.name,
                description: entitlementPool.description,
                thresholdValue: entitlementPool.thresholdValue,
@@ -64,8 +59,8 @@ function putEntitlementPool(licenseModelId, previousEntitlementPool, entitlement
        });
 }
 
-function deleteEntitlementPool(licenseModelId, entitlementPoolId) {
-       return RestAPIUtil.destroy(`${baseUrl(licenseModelId)}/${entitlementPoolId}`);
+function deleteEntitlementPool(licenseModelId, entitlementPoolId, version) {
+       return RestAPIUtil.destroy(`${baseUrl(licenseModelId, version)}/${entitlementPoolId}`);
 }
 
 
@@ -84,8 +79,8 @@ export default {
                });
        },
 
-       deleteEntitlementPool(dispatch, {licenseModelId, entitlementPoolId}) {
-               return deleteEntitlementPool(licenseModelId, entitlementPoolId).then(() => {
+       deleteEntitlementPool(dispatch, {licenseModelId, entitlementPoolId, version}) {
+               return deleteEntitlementPool(licenseModelId, entitlementPoolId, version).then(() => {
                        dispatch({
                                type: entitlementPoolsActionTypes.DELETE_ENTITLEMENT_POOL,
                                entitlementPoolId
@@ -106,9 +101,9 @@ export default {
                });
        },
 
-       saveEntitlementPool(dispatch, {licenseModelId, previousEntitlementPool, entitlementPool}) {
+       saveEntitlementPool(dispatch, {licenseModelId, previousEntitlementPool, entitlementPool, version}) {
                if (previousEntitlementPool) {
-                       return putEntitlementPool(licenseModelId, previousEntitlementPool, entitlementPool).then(() => {
+                       return putEntitlementPool(licenseModelId, previousEntitlementPool, entitlementPool, version).then(() => {
                                dispatch({
                                        type: entitlementPoolsActionTypes.EDIT_ENTITLEMENT_POOL,
                                        entitlementPool
@@ -116,11 +111,12 @@ export default {
                        });
                }
                else {
-                       return postEntitlementPool(licenseModelId, entitlementPool).then(response => {
+                       return postEntitlementPool(licenseModelId, entitlementPool, version).then(response => {
                                dispatch({
                                        type: entitlementPoolsActionTypes.ADD_ENTITLEMENT_POOL,
                                        entitlementPool: {
                                                ...entitlementPool,
+                                               referencingFeatureGroups: [],
                                                id: response.value
                                        }
                                });