2 Copyright 2020 TATA ELXSI
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
8 http://www.apache.org/licenses/LICENSE-2.0
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 or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
16 Author: KUMARAN M (kumaran.m@tataelxsi.co.in), RAJESH S (rajesh.s@tataelxsi.co.in), BARATH KUMAR R (barath.r@tataelxsi.co.in)
18 import { HttpHeaders } from '@angular/common/http';
21 * @file Model for Commonly used information.
26 export enum CONSTANTNUMBER {
28 osmapviewlong = 77.673,
29 osmapviewlat = 19.166,
30 chennailong = 80.2809,
32 bangalorelong = 77.5868,
33 bangalorelat = 12.9718,
36 tirvandrumlong = 76.9544,
37 tirvandrumlat = 8.5009,
39 paginationDefaultValue = 10,
46 export enum CONFIGCONSTANT {
47 operationalStateFirstStep = 'init',
48 operationalStateSecondStep = 'running',
49 operationalStateThirdStep = 'failed',
50 configStateFirstStep = 'init',
51 configStateSecondStep = 'configured',
52 configStateThirdStep = 'failed',
53 historyStateFirstStep = 'PROCESSING',
54 historyStateSecondStep = 'COMPLETED',
55 historyStateThirdStep = 'FAILED',
56 wimOperationalStateFirstStep = 'PROCESSING',
57 wimOperationalStateStateSecondStep = 'ENABLED',
58 wimOperationalStateThirdStep = 'ERROR',
59 vimOperationalStateFirstStep = 'PROCESSING',
60 vimOperationalStateStateSecondStep = 'ENABLED',
61 vimOperationalStateThirdStep = 'ERROR',
62 sdnOperationalStateFirstStep = 'PROCESSING',
63 sdnOperationalStateStateSecondStep = 'ENABLED',
64 sdnOperationalStateThirdStep = 'ERROR',
65 k8OperationalStateFirstStep = 'PROCESSING',
66 k8OperationalStateStateSecondStep = 'ENABLED',
67 k8OperationalStateThirdStep = 'ERROR'
69 /** Interface for Post options */
70 export interface POSTAPIRESOURCE {
71 apiURLHeader: APIURLHEADER;
74 /** Interface for ApiURL Header */
75 export interface APIURLHEADER {
77 httpOptions?: APIHEADERS;
79 /** Interface for the Get Method with response type */
80 export interface GETAPIURLHEADER {
84 /** Interface for Httpoptions Header */
85 interface APIHEADERS {
88 /** Interface for the Error */
89 export interface ERRORDATA {
90 error: ERRORDETAILSDATA;
92 /** Interface for the Error Details */
93 interface ERRORDETAILSDATA {
99 /** Handle the URL params */
100 export interface URLPARAMS {
104 forceDeleteType?: boolean;
106 memberIndex?: object;
111 /** Handle the Delete params */
112 export interface DELETEPARAMS {
116 projectName?: string;
123 /** Interface for the Delete Details */
124 export interface MODALCLOSERESPONSEDATA {
128 /** Interface for the modal closer */
129 export interface MODALCLOSERESPONSEWITHCP {
131 connection_point?: string;
134 /** Interface for local storage settings */
135 export interface LOCALSTORAGE {
141 project_name?: string;
145 token_state?: string;
147 /** Interface for Tar settings */
148 export interface TARSETTINGS {
151 readAsString?: Function;
153 header_offset?: Number;
159 /** Interface for File Settings */
160 export interface FILESETTINGS {
166 /** Interface for Package information */
167 export interface PACKAGEINFO {
169 packageType?: string;
173 /** Interface For the Pagination pager in ng-smarttable */
174 export interface PAGERSMARTTABLE {
178 /** Interface for breadcrumb item */
179 export interface BREADCRUMBITEM {
183 /** Interface For the Pagination pager in ng-smarttable */
184 export interface SMARTTABLECLASS {
185 // tslint:disable-next-line: no-reserved-keywords
188 /** Constants of the VIM Types */
189 export const VIM_TYPES: TYPESECTION[] = [
190 { value: 'openstack', title: 'Openstack' },
191 { value: 'aws', title: 'AWS' },
192 { value: 'vmware', title: 'VMware vCD' },
193 { value: 'openvim', title: 'OpenVIM' },
194 { value: 'opennebula', title: 'OpenNebula' },
195 { value: 'azure', title: 'Azure' }
197 /** Constants of the SDN Types */
198 export const SDN_TYPES: TYPESECTION[] = [
199 { value: 'arista', title: 'Arista' },
200 { value: 'floodlightof', title: 'Floodlight openflow' },
201 { value: 'odlof', title: 'OpenDaylight openflow' },
202 { value: 'onosof', title: 'ONOS openflow' },
203 { value: 'onos_vpls', title: 'ONOS vpls' }
205 /** Constants of the WIM Types */
206 export const WIM_TYPES: TYPESECTION[] = [
207 { value: 'arista', title: 'Arista' },
208 { value: 'dynpac', title: 'DynPac' },
209 { value: 'floodlightof', title: 'Floodlight openflow' },
210 { value: 'odlof', title: 'OpenDaylight openflow' },
211 { value: 'onosof', title: 'ONOS openflow' },
212 { value: 'onos_vpls', title: 'ONOS vpls' },
213 { value: 'tapi', title: 'TAPI' }
215 /** Constants of the OSM Repo Types */
216 export const OSMREPO_TYPES: TYPESECTION[] = [
217 { value: 'osm', title: 'OSM' }
219 /** Interface for List, Add WIM & SDN Types */
220 export interface TYPESECTION {
224 /** Interface for VIM type Openstack's Config */
225 export const TYPEOPENSTACK: {} = {
228 sdn_port_mapping: '',
229 project_domain_id: '',
230 vim_network_name: '',
231 project_domain_name: '',
235 user_domain_name: '',
236 availabilityZone: '',
239 dataplane_physical_net: '',
242 use_internal_endpoint: '',
245 use_existing_flavors: ''
247 /** Interface for VIM type AWS's Config */
248 export const TYPEAWS: {} = {
251 sdn_port_mapping: '',
253 vim_network_name: '',
259 /** Interface for VIM type VMWARE's Config */
260 export const TYPEVMWARE: {} = {
263 sdn_port_mapping: '',
265 vim_network_name: '',
270 vcenter_password: '',
279 /** Interface for VIM type OPENVIMNEBULA's Config */
280 export const TYPEOPENVIMNEBULA: {} = {
282 sdn_port_mapping: '',
283 vim_network_name: '',
286 /** Interface for VIM type AZURE's Config */
287 export const TYPEAZURE: {} = {
294 /** Interface for VIM other type Config */
295 export const TYPEOTERS: {} = {
297 sdn_port_mapping: '',
298 vim_network_name: '',
300 use_internal_endpoint: '',
302 use_existing_flavors: ''