blob: 3b8de0f0d44705b09af5c1193f84b557dc32fe7f [file] [log] [blame]
Michael Landoefa037d2017-02-19 12:57:33 +02001/*-
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
21import RestAPIUtil from 'nfvo-utils/RestAPIUtil.js';
22import NotificationConstants from 'nfvo-components/notifications/NotificationConstants.js';
23import {actionTypes} from './UploadScreenConstants.js';
24import {actionTypes as softwareProductsActionTypes} from '../onboarding/softwareProduct/SoftwareProductConstants.js';
25
26function uploadFile(formData) {
27 return RestAPIUtil.create('/sdc1/feProxy/onboarding-api/v1.0/validation/HEAT/validate', formData);
28}
29
30const UploadScreenActionHelper = {
31 uploadFile(dispatch, formData) {
32
33
34 Promise.resolve()
35 .then(() => uploadFile(formData))
36 .then(response => {
37 dispatch({
38 type: softwareProductsActionTypes.SOFTWARE_PRODUCT_LOADED,
39 response
40 });
41
42 dispatch({
43 type: actionTypes.OPEN_UPLOAD_SCREEN
44 });
45 })
46 .catch(error => {
47 dispatch({
48 type: NotificationConstants.NOTIFY_ERROR,
49 data: {title: 'File Upload Failed', msg: error.responseJSON.message}
50 });
51 });
52 },
53 openMainScreen(dispatch) {
54 dispatch({
55 type: actionTypes.OPEN_MAIN_SCREEN
56 });
57 }
58};
59
60export default UploadScreenActionHelper;