blob: 5ab5480167648fff6ae23b5618528528cd40fb9a [file] [log] [blame]
svishnevd3886bb2018-01-08 15:21:46 +02001/*!
Einav Weiss Keidard2f57942018-02-14 14:00:07 +02002 * Copyright © 2016-2018 European Support Limited
svishnevd3886bb2018-01-08 15:21:46 +02003 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
13 * or implied. See the License for the specific language governing
14 * permissions and limitations under the License.
15 */
16import RestAPIUtil from 'nfvo-utils/RestAPIUtil.js';
17import Configuration from 'sdc-app/config/Configuration.js';
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020018import { actionTypes } from './FeaturesConstants.js';
svishnevd3886bb2018-01-08 15:21:46 +020019
20function baseUrl() {
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020021 const restPrefix = Configuration.get('restPrefix');
22 return `${restPrefix}/v1.0/togglz`;
svishnevd3886bb2018-01-08 15:21:46 +020023}
24
25function fetchList() {
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020026 return RestAPIUtil.fetch(baseUrl());
svishnevd3886bb2018-01-08 15:21:46 +020027}
28
29export default {
Einav Weiss Keidar7fdf7332018-03-20 14:45:40 +020030 getFeaturesList(dispatch) {
31 return fetchList()
32 .then(response => {
33 dispatch({
34 type: actionTypes.FEATURES_LIST_LOADED,
35 features: response.features
36 });
37 })
38 .catch(() =>
39 console.error(
40 'An exception occured while trying to fetch the toggleZ features.'
41 )
42 );
43 }
svishnevd3886bb2018-01-08 15:21:46 +020044};