blob: 47bce9188c22a3a1997056cff2cf259eb7736451 [file] [log] [blame]
Jeremy Mordkoffe29efc32016-09-07 18:59:17 -04001/*
2 *
3 * Copyright 2016 RIFT.IO Inc
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 */
18import React, {Component} from 'react';
19import SkyquakeComponent from 'widgets/skyquake_container/skyquakeComponent.jsx';
20import {Panel, PanelWrapper} from 'widgets/panel/panel';
21import InstantiateDescriptorPanel from './instantiateDescriptorPanel.jsx';
22import InstantiateInputParams from './instantiateInputParams.jsx';
23class Instantiate extends Component {
24 constructor(props) {
25 super(props);
26 }
27 handleSelectVNFConfigAgent = (vnfid) => {
28 let self = this;
29 return function(e) {
30 let configAgentRef = JSON.parse(e.target.value);
31 self.Store.updateSelectedVNFConfigAgent(vnfid, configAgentRef);
32 }
33 }
34 render(){
35 //temporary
36 let selectedNSD = {};
37 let self = this;
38 this.props.nsd[0] && this.props.nsd[0].descriptors && this.props.nsd[0].descriptors.map(function(d) {
39 if(self.props.params.nsd == d.id) {
40 selectedNSD = d;
41 }
42 });
43 return (
44 <PanelWrapper>
45 <InstantiateDescriptorPanel descriptor={selectedNSD} />
46 <Panel title="Input Parameters">
47 <InstantiateInputParams
48
49 nsFn={this.props.nsFn()}
50 vnfFn={this.props.vnfFn()}
51 vldFn={this.props.vldFn()}
52 ipProfileFn={this.props.ipProfileFn()}
53 dnsFn={this.props.dnsFn()}
54 usersFn={this.props.usersFn()}
55 sshFn={this.props.sshFn()}
56 updateName={this.props.nameUpdated}
57 updateInputParam={this.props.updateInputParam}
58
59 nsd={selectedNSD}
60 selectedNSDid={this.props.selectedNSDid}
61 name={this.props.name}
62
63 cloudAccounts={this.props.cloudAccounts}
64 selectedCloudAccount={this.props.selectedCloudAccount}
65 vnfdCloudAccounts={this.props.vnfdCloudAccounts}
66 dataCenters={this.props.dataCenters}
67 configAgentAccounts={this.props.configAgentAccounts}
68 inputParameters={this.props['input-parameters']}
69
70 displayPlacementGroups={this.props.displayPlacementGroups}
71
72
73 nsPlacementGroups={this.props['ns-placement-groups']}
74 vnfPlacementGroups={this.props['vnf-placement-groups']}
75
76 vlds={this.props.vld}
77
78 ipProfileList={this.props.ipProfiles}
79
80 dnsServers={this.props.dnsServers}
81
82 usersList = {this.props.usersList}
83 selectedID={this.props.selectedNSDid}
84 selectedNSD={selectedNSD}
85
86 /></Panel>
87 </PanelWrapper>
88 )
89 }
90}
91
92Instantiate.defaultProps = {
93 nsd: [{}]
94}
95
96export default SkyquakeComponent(Instantiate);
97
98
99/*
100
101
102
103
104 ipProfiles={this.state.ipProfiles}
105 dnsServers={this.state.dnsServers}
106 vld={this.state.vld}
107 nsd={this.state.nsd[0]}
108 selectedID={this.state.selectedNSDid}
109 selectedNSD={this.state.selectedNSD}
110
111 vldFn={this.Store.vldFn()}
112 ipProfileFn={this.Store.ipProfileFn()}
113 dnsFn={this.Store.dnsFn()}
114 usersFn={this.Store.usersFn()}
115 sshFn={this.Store.sshFn()}
116 */