Add new code new version
[sdc.git] / openecomp-ui / src / sdc-app / onboarding / licenseModel / creation / LicenseModelCreationActionHelper.js
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 import RestAPIUtil from 'nfvo-utils/RestAPIUtil.js';
22 import Configuration from 'sdc-app/config/Configuration.js';
23 import LicenseModelActionHelper from 'sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js';
24 import {actionTypes} from './LicenseModelCreationConstants.js';
25
26 function baseUrl() {
27         const restPrefix = Configuration.get('restPrefix');
28         return `${restPrefix}/v1.0/vendor-license-models/`;
29 }
30
31 function createLicenseModel(licenseModel) {
32         return RestAPIUtil.create(baseUrl(), {
33                 vendorName: licenseModel.vendorName,
34                 description: licenseModel.description,
35                 iconRef: 'icon'
36         });
37 }
38
39
40 export default {
41
42         open(dispatch) {
43                 dispatch({
44                         type: actionTypes.OPEN
45                 });
46         },
47
48         close(dispatch){
49                 dispatch({
50                         type: actionTypes.CLOSE
51                 });
52         },
53
54         dataChanged(dispatch, {deltaData}){
55                 dispatch({
56                         type: actionTypes.DATA_CHANGED,
57                         deltaData
58                 });
59         },
60
61         createLicenseModel(dispatch, {licenseModel}){
62                 return createLicenseModel(licenseModel).then(response => {
63                         LicenseModelActionHelper.addLicenseModel(dispatch, {
64                                 licenseModel: {
65                                         ...licenseModel,
66                                         id: response.value
67                                 }
68                         });
69                         return response.value;
70                 });
71         }
72 };