Add new code new version
[sdc.git] / openecomp-ui / src / sdc-app / onboarding / softwareProduct / components / monitoring / SoftwareProductComponentsMonitoring.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 {connect} from 'react-redux';
22 import VersionControllerUtils from 'nfvo-components/panel/versionController/VersionControllerUtils.js';
23 import SoftwareProductComponentsMonitoringView from './SoftwareProductComponentsMonitoringView.jsx';
24 import SoftwareProductComponentsMonitoringAction from './SoftwareProductComponentsMonitoringActionHelper.js';
25
26
27 export const mapStateToProps = ({softwareProduct}) => {
28
29         let {softwareProductEditor: {data:currentVSP = {}}, softwareProductComponents: {monitoring}} = softwareProduct;
30         let {trapFilename, pollFilename} = monitoring;
31         let isReadOnlyMode = VersionControllerUtils.isReadOnly(currentVSP);
32
33         return {
34                 isReadOnlyMode,
35                 trapFilename,
36                 pollFilename
37         };
38 };
39
40 const mapActionsToProps = (dispatch, {softwareProductId, componentId}) => {
41         return {
42                 onDropMibFileToUpload: (formData, type) =>
43                         SoftwareProductComponentsMonitoringAction.uploadSnmpFile(dispatch, {
44                                 softwareProductId,
45                                 componentId,
46                                 formData,
47                                 type
48                         }),
49
50                 onDeleteSnmpFile: type => SoftwareProductComponentsMonitoringAction.deleteSnmpFile(dispatch, {
51                         softwareProductId,
52                         componentId,
53                         type
54                 })
55
56         };
57 };
58
59 export default connect(mapStateToProps, mapActionsToProps, null, {withRef: true})(SoftwareProductComponentsMonitoringView);