2 * ============LICENSE_START=======================================================
\r
4 * ================================================================================
\r
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
\r
6 * ================================================================================
\r
7 * Licensed under the Apache License, Version 2.0 (the "License");
\r
8 * you may not use this file except in compliance with the License.
\r
9 * You may obtain a copy of the License at
\r
11 * http://www.apache.org/licenses/LICENSE-2.0
\r
13 * Unless required by applicable law or agreed to in writing, software
\r
14 * distributed under the License is distributed on an "AS IS" BASIS,
\r
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
16 * See the License for the specific language governing permissions and
\r
17 * limitations under the License.
\r
18 * ============LICENSE_END=========================================================
\r
24 * "CreationService" isolates the "component-specific" logic required by the
\r
25 * "CreationDialog" controller.
\r
27 * "Components" are defined as the 5 element types managed by the dialogs: A)
\r
28 * Service B) VNF C) VF Module D) Volume Group and E) Network.
\r
32 var CreationService = function($log, AaiService, AsdcService, DataService,VIDCONFIGURATION,
\r
33 ComponentService, COMPONENT, FIELD, PARAMETER, UtilityService, OwningEntityService,featureFlags) {
\r
36 var getAsyncOperationList = function() {
\r
37 if (DataService.getLoggedInUserId() == null) {
\r
38 getLoggedInUserID();
\r
40 UtilityService.startNextAsyncOperation();
\r
42 switch (_this.componentId) {
\r
43 case COMPONENT.SERVICE:
\r
44 return [ getSubscribers, getServices, getAicZones, getOwningEntityProperties ];
\r
45 case COMPONENT.NETWORK:
\r
46 return [ getLcpCloudRegionTenantList, getOwningEntityProperties ];
\r
48 return [ getLcpCloudRegionTenantList, getOwningEntityProperties ];
\r
49 case COMPONENT.VF_MODULE:
\r
50 return [ getLcpCloudRegionTenantList ];
\r
51 case COMPONENT.VOLUME_GROUP:
\r
52 return [ getLcpCloudRegionTenantList ];
\r
57 * "getSummaryList" and "getUserProvidedList" return parameters that should
\r
58 * be displayed in the summary and user provided sections, respectively. The
\r
59 * functions are expected to return lists that are in the format needed by
\r
60 * the parameter-block directive.
\r
63 var getSummaryList = function() {
\r
66 * These placeholders should be removed and their usage in
\r
67 * "getSummaryList" should be replaced by appropriate code as the
\r
68 * requirements and interfaces firm up.
\r
71 var PLACEHOLDER_RESOURCE_DESCRIPTION = "Resource Description (PLACEHOLDER)";
\r
72 var PLACEHOLDER_SERVICE_CATEGORY = "Service Category (PLACEHOLDER)";
\r
73 var PLACEHOLDER_VF_MODULE_DESCRIPTION = "VF Module Description (PLACEHOLDER)";
\r
74 var PLACEHOLDER_VF_MODULE_LABEL = "VF Module Label (PLACEHOLDER)";
\r
75 var PLACEHOLDER_VF_MODULE_TYPE = "VF Module Type (PLACEHOLDER)";
\r
77 _this.parameterList = new Array();
\r
80 * Common fields displayed at the top of all create instance screens.
\r
82 if(DataService.getModelInfo(_this.componentId)["serviceTypeName"]==null
\r
83 || DataService.getModelInfo(_this.componentId)["serviceTypeName"]==undefined
\r
84 || DataService.getModelInfo(_this.componentId)["serviceTypeName"]==''){
\r
85 addToList(FIELD.NAME.SERVICE_NAME, DataService.getServiceName());
\r
88 switch (_this.componentId) {
\r
89 case COMPONENT.SERVICE:
\r
90 if ( !DataService.getALaCarte() ) {
\r
91 // for macro instantiation need to add the resource names under the node template list
\r
92 // this field is called modelCustomizationName in the asdc client code
\r
94 var rlist = DataService.getResources();
\r
96 if ( rlist != null ) {
\r
97 for (var i = 0; i < rlist.length; i++) {
\r
100 p = FIELD.NAME.RESOURCE_NAME.concat(" " + (i+1));
\r
101 addToList(p, res.name );
\r
102 p = FIELD.NAME.RESOURCE_DESCRIPTION.concat(" " + (i+1));
\r
103 addToList(p, res.description );
\r
107 if(DataService.getModelInfo(_this.componentId)["createSubscriberName"]!=null && DataService.getModelInfo(_this.componentId)["createSubscriberName"]!=''){
\r
108 addToList(FIELD.NAME.SUBSCRIBER_NAME, DataService
\r
109 .getModelInfo(_this.componentId)["createSubscriberName"]);
\r
111 if(DataService.getModelInfo(_this.componentId)["serviceTypeName"]!=null && DataService.getModelInfo(_this.componentId)["serviceTypeName"]!=''){
\r
112 addToList(FIELD.NAME.SERVICE_TYPE, DataService
\r
113 .getModelInfo(_this.componentId)["serviceTypeName"]);
\r
114 addToList(FIELD.NAME.SERVICE_NAME, DataService.getServiceName());
\r
116 addToList(FIELD.NAME.SERVICE_INVARIANT_UUID, DataService
\r
117 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_INVARIANT_ID]);
\r
118 addToList(FIELD.NAME.SERVICE_VERSION, DataService
\r
119 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_VERSION]);
\r
120 addToList(FIELD.NAME.SERVICE_UUID, DataService
\r
121 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME_VERSION_ID]);
\r
122 addToList(FIELD.NAME.SERVICE_DESCRIPTION, DataService
\r
123 .getModelInfo(_this.componentId)[FIELD.ID.DESCRIPTION]);
\r
124 addToList(FIELD.NAME.SERVICE_CATEGORY, DataService
\r
125 .getModelInfo(_this.componentId)[FIELD.ID.CATEGORY]);
\r
126 if (DataService.getModelInfo(_this.componentId)[FIELD.ID.SERVICE_TYPE] != "null") {
\r
127 addToList(FIELD.NAME.SERVICE_TYPE, DataService
\r
128 .getModelInfo(_this.componentId)[FIELD.ID.SERVICE_TYPE]);
\r
129 addToList(FIELD.NAME.SERVICE_ROLE, DataService
\r
130 .getModelInfo(_this.componentId)[FIELD.ID.SERVICE_ROLE]);
\r
134 case COMPONENT.VF_MODULE:
\r
135 addToList(FIELD.NAME.SUBSCRIBER_NAME, DataService
\r
136 .getSubscriberName());
\r
137 addToList(FIELD.NAME.SERVICE_INSTANCE_NAME, DataService
\r
138 .getServiceInstanceName());
\r
139 addToList(FIELD.NAME.MODEL_NAME, DataService
\r
140 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME]);
\r
141 addToList(FIELD.NAME.MODEL_INVARIANT_UUID, DataService
\r
142 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_INVARIANT_ID]);
\r
143 addToList(FIELD.NAME.MODEL_VERSION, DataService
\r
144 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_VERSION]);
\r
145 addToList(FIELD.NAME.MODEL_UUID, DataService
\r
146 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME_VERSION_ID]);
\r
147 addToList(FIELD.NAME.MODEL_CUSTOMIZATION_UUID, DataService
\r
148 .getModelInfo(_this.componentId)[FIELD.ID.CUSTOMIZATION_UUID]);
\r
150 case COMPONENT.VNF:
\r
151 addToList(FIELD.NAME.SUBSCRIBER_NAME, DataService
\r
152 .getSubscriberName());
\r
153 addToList(FIELD.NAME.SERVICE_INSTANCE_NAME, DataService
\r
154 .getServiceInstanceName());
\r
155 addToList(FIELD.NAME.MODEL_NAME, DataService
\r
156 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME]);
\r
157 addToList(FIELD.NAME.MODEL_INVARIANT_UUID, DataService
\r
158 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_INVARIANT_ID]);
\r
159 addToList(FIELD.NAME.MODEL_VERSION, DataService
\r
160 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_VERSION]);
\r
161 addToList(FIELD.NAME.MODEL_UUID, DataService
\r
162 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME_VERSION_ID]);
\r
163 addToList(FIELD.NAME.MODEL_CUSTOMIZATION_UUID, DataService
\r
164 .getModelInfo(_this.componentId)[FIELD.ID.CUSTOMIZATION_UUID]);
\r
165 addToList(FIELD.NAME.MODEL_CUSTOMIZATION_NAME, DataService
\r
166 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_CUSTOMIZATION_NAME]);
\r
167 addToList(FIELD.NAME.MODEL_VNF_TYPE, DataService
\r
168 .getModelInfo(_this.componentId)[COMPONENT.VNF_TYPE]);
\r
169 addToList(FIELD.NAME.MODEL_VNF_ROLE, DataService
\r
170 .getModelInfo(_this.componentId)[COMPONENT.VNF_ROLE]);
\r
171 addToList(FIELD.NAME.MODEL_VNF_FUNCTION, DataService
\r
172 .getModelInfo(_this.componentId)[COMPONENT.VNF_FUNCTION]);
\r
173 addToList(FIELD.NAME.MODEL_VNF_CODE, DataService
\r
174 .getModelInfo(_this.componentId)[COMPONENT.VNF_CODE]);
\r
176 case COMPONENT.NETWORK:
\r
177 case COMPONENT.VOLUME_GROUP:
\r
178 addToList(FIELD.NAME.SUBSCRIBER_NAME, DataService
\r
179 .getSubscriberName());
\r
180 addToList(FIELD.NAME.SERVICE_INSTANCE_NAME, DataService
\r
181 .getServiceInstanceName());
\r
182 addToList(FIELD.NAME.MODEL_NAME, DataService
\r
183 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME]);
\r
184 addToList(FIELD.NAME.MODEL_INVARIANT_UUID, DataService
\r
185 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_INVARIANT_ID]);
\r
186 addToList(FIELD.NAME.MODEL_VERSION, DataService
\r
187 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_VERSION]);
\r
188 addToList(FIELD.NAME.MODEL_UUID, DataService
\r
189 .getModelInfo(_this.componentId)[FIELD.ID.MODEL_NAME_VERSION_ID]);
\r
190 addToList(FIELD.NAME.MODEL_CUSTOMIZATION_UUID, DataService
\r
191 .getModelInfo(_this.componentId)[FIELD.ID.CUSTOMIZATION_UUID]);
\r
195 return _this.parameterList;
\r
198 var getUserProvidedList = function() {
\r
199 var parameterList = [];
\r
200 var isUserProvidedNaming = false;
\r
201 if ( ((DataService.getModelInfo(_this.componentId).serviceEcompNaming != null)
\r
202 && (DataService.getModelInfo(_this.componentId).serviceEcompNaming === "false")) || DataService.getE2EService() ) {
\r
203 isUserProvidedNaming = true;
\r
206 var isInTop = DataService.getHideServiceFields() || false;
\r
207 if (_this.componentId === COMPONENT.SERVICE) {
\r
208 if ( DataService.getALaCarte() ) {
\r
209 parameterList = [ FIELD.PARAMETER.INSTANCE_NAME ];
\r
211 parameterList = parameterList.concat([ getSubscribersParameter(),
\r
212 FIELD.PARAMETER.SERVICE_TYPE_DISABLED ]);
\r
219 if (isUserProvidedNaming) {
\r
220 parameterList = [ FIELD.PARAMETER.INSTANCE_NAME ];
\r
223 parameterList = parameterList.concat([ getSubscribersParameter() ]);
\r
224 parameterList = parameterList.concat([ getServiceId(),
\r
225 FIELD.PARAMETER.SERVICE_TYPE,
\r
226 FIELD.PARAMETER.LCP_REGION,
\r
227 FIELD.PARAMETER.LCP_REGION_TEXT_HIDDEN,
\r
228 FIELD.PARAMETER.TENANT_DISABLED
\r
230 if(!DataService.getE2EService()) {
\r
231 parameterList = parameterList.concat([getAicZonesParameter()]);
\r
235 parameterList = parameterList.concat([ getServiceId(),
\r
236 FIELD.PARAMETER.LCP_REGION,
\r
237 FIELD.PARAMETER.LCP_REGION_TEXT_HIDDEN,
\r
238 FIELD.PARAMETER.TENANT_DISABLED ]);
\r
242 if(!DataService.getE2EService()) {
\r
243 parameterList = parameterList.concat([getProjectParameter()]);
\r
244 parameterList = parameterList.concat([getOwningEntityParameter()]);
\r
247 //if service model has a pnf, add a PNF ID parameter
\r
248 if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_PNP_INSTANTIATION) && DataService.getPnf()) {
\r
249 parameterList = parameterList.concat([ FIELD.PARAMETER.PNF_ID ]);
\r
253 parameterList = [ FIELD.PARAMETER.INSTANCE_NAME ];
\r
254 switch (_this.componentId) {
\r
255 case COMPONENT.NETWORK:
\r
256 case COMPONENT.VNF:
\r
257 parameterList = parameterList.concat([ getServiceId(),
\r
258 getLcpRegionParameter(), FIELD.PARAMETER.LCP_REGION_TEXT_HIDDEN,
\r
259 FIELD.PARAMETER.TENANT_DISABLED ]);
\r
260 parameterList = parameterList.concat([ getLineOfBusinessParameter() ]);
\r
261 parameterList = parameterList.concat([ getPlatformParameter() ]);
\r
264 case COMPONENT.VF_MODULE:
\r
265 parameterList = parameterList.concat([
\r
266 getLcpRegionParameter(),
\r
267 FIELD.PARAMETER.LCP_REGION_TEXT_HIDDEN,
\r
268 FIELD.PARAMETER.TENANT_DISABLED
\r
271 var availableVolumeGroupList = DataService.getAvailableVolumeGroupList();
\r
273 if (availableVolumeGroupList && availableVolumeGroupList.length > 0) {
\r
274 var availableVolumeGroupNames = [FIELD.STATUS.NONE];
\r
276 for (var i = 0; i < availableVolumeGroupList.length; i++) {
\r
277 availableVolumeGroupNames.push(availableVolumeGroupList[i].instance.name);
\r
280 parameterList.push(addOptionList(
\r
281 FIELD.PARAMETER.AVAILABLE_VOLUME_GROUP,
\r
282 availableVolumeGroupNames));
\r
285 case COMPONENT.VOLUME_GROUP:
\r
286 parameterList = parameterList.concat([ getLcpRegionParameter(),
\r
287 FIELD.PARAMETER.LCP_REGION_TEXT_HIDDEN,
\r
288 FIELD.PARAMETER.TENANT_DISABLED ]);
\r
291 parameterList.push(FIELD.PARAMETER.SUPPRESS_ROLLBACK);
\r
292 if(_this.componentId === COMPONENT.VF_MODULE ){
\r
293 parameterList.push({name: FIELD.NAME.SDN_C_PRELOAD,
\r
294 id: FIELD.ID.SDN_C_PRELOAD,
\r
298 hideFieldAndLabel: true
\r
301 parameterList.push({name: FIELD.NAME.UPLOAD_SUPPLEMENTORY_DATA_FILE,
\r
302 id: FIELD.ID.UPLOAD_SUPPLEMENTORY_DATA_FILE,
\r
310 parameterList.push({name: FIELD.NAME.SUPPLEMENTORY_DATA_FILE,
\r
311 id: FIELD.ID.SUPPLEMENTORY_DATA_FILE,
\r
319 if( VIDCONFIGURATION.UPLOAD_SUPPLEMENTARY_STATUS_CHECK_ENABLED && _this.componentId === COMPONENT.VOLUME_GROUP){
\r
320 parameterList.push({name: FIELD.NAME.UPLOAD_SUPPLEMENTORY_DATA_FILE,
\r
321 id: FIELD.ID.UPLOAD_SUPPLEMENTORY_DATA_FILE,
\r
328 parameterList.push({name: FIELD.NAME.SUPPLEMENTORY_DATA_FILE,
\r
329 id: FIELD.ID.SUPPLEMENTORY_DATA_FILE,
\r
337 addArbitraryParameters(parameterList);
\r
339 return parameterList;
\r
342 var addArbitraryParameters = function(parameterList) {
\r
343 if ( DataService.getModelInfo(_this.componentId).displayInputs != null ) {
\r
344 var inputs = DataService.getModelInfo(_this.componentId).displayInputs;
\r
345 for ( var key in inputs) {
\r
348 type : PARAMETER.STRING,
\r
349 name : ComponentService.getFieldDisplayName(key),
\r
350 value : inputs[key][PARAMETER.DEFAULT],
\r
351 isRequired : inputs[key][PARAMETER.REQUIRED],
\r
352 description : inputs[key][PARAMETER.DESCRIPTION]
\r
354 if ( DataService.getALaCarte() ) {
\r
355 parameter.name = ComponentService.getFieldDisplayName(inputs[key][PARAMETER.DISPLAY_NAME]);
\r
357 switch (inputs[key][PARAMETER.TYPE]) {
\r
358 case PARAMETER.INTEGER:
\r
359 parameter.type = PARAMETER.NUMBER;
\r
361 case PARAMETER.BOOLEAN:
\r
362 parameter.type = PARAMETER.BOOLEAN;
\r
364 case PARAMETER.RANGE:
\r
366 case PARAMETER.LIST:
\r
367 parameter.type = PARAMETER.LIST;
\r
369 case PARAMETER.MAP:
\r
370 parameter.type = PARAMETER.MAP;
\r
374 if ( UtilityService.hasContents(inputs[key][PARAMETER.CONSTRAINTS])
\r
375 && ( inputs[key][PARAMETER.CONSTRAINTS].length > 0 ) ) {
\r
376 var constraintsArray = inputs[key][PARAMETER.CONSTRAINTS];
\r
377 //console.log ("Calling addConstraintParameters for input name=" + key);
\r
378 addConstraintParameters (parameterList, constraintsArray, key, inputs, parameter);
\r
382 parameterList.push(parameter);
\r
385 DataService.setArbitraryParameters (parameterList);
\r
389 var addConstraintParameters = function(parameterList, constraintsArray, key, inputs, parameter) {
\r
390 // If there are constraints and the operator is "valid_values",
\r
391 // use a select parameter type.
\r
392 var i = constraintsArray.length;
\r
393 var parameterPushed = false;
\r
395 while ( (i--) && (!parameterPushed) ) {
\r
396 var keys = Object.keys(constraintsArray[i]);
\r
397 //var keys_len = keys.length;
\r
398 for ( var operator in keys ) {
\r
399 //console.log ("keys[operator]=" + keys[operator]);
\r
400 switch (keys[operator]) {
\r
401 case PARAMETER.VALID_VALUES:
\r
402 var j = constraintsArray[i][PARAMETER.VALID_VALUES].length;
\r
408 name: constraintsArray[i][PARAMETER.VALID_VALUES][j],
\r
411 if ( ( UtilityService.hasContents (inputs[key][PARAMETER.DEFAULT]) )
\r
412 && (inputs[key][PARAMETER.DEFAULT] === constraintsArray[i][PARAMETER.VALID_VALUES][j] ) ) {
\r
414 name: constraintsArray[i][PARAMETER.VALID_VALUES][j],
\r
418 oList.push(option);
\r
420 parameter.type = PARAMETER.SELECT;
\r
421 parameter.optionList = oList;
\r
422 parameterList.push(parameter);
\r
423 parameterPushed = true;
\r
424 //console.log ("pushed param for valid values");
\r
428 case PARAMETER.EQUAL:
\r
429 if ( constraintsArray[i][PARAMETER.EQUAL] != null ) {
\r
430 //override parameter type
\r
431 parameter.type = PARAMETER.STRING;
\r
432 parameter.isReadOnly = true;
\r
433 parameter.value = constraintsArray[i][PARAMETER.EQUAL];
\r
434 parameterList.push(parameter);
\r
435 parameterPushed = true;
\r
436 //console.log ("pushed param for equal");
\r
440 case PARAMETER.LENGTH:
\r
441 if ( constraintsArray[i][PARAMETER.LENGTH] != null ) {
\r
442 parameter.minLength = constraintsArray[i][PARAMETER.LENGTH];
\r
443 parameter.maxLength = constraintsArray[i][PARAMETER.LENGTH];
\r
444 parameterList.push(parameter);
\r
445 parameterPushed = true;
\r
446 //console.log ("pushed param for length: ");
\r
447 //console.log (JSON.stringify (parameter, null, 4));
\r
450 case PARAMETER.MAX_LENGTH:
\r
451 if ( constraintsArray[i][PARAMETER.MAX_LENGTH] != null ) {
\r
452 parameter.maxLength = constraintsArray[i][PARAMETER.MAX_LENGTH];
\r
453 parameterList.push(parameter);
\r
454 parameterPushed = true;
\r
455 //console.log ("pushed param for max length: ");
\r
456 //console.log (JSON.stringify (parameter, null, 4));
\r
459 case PARAMETER.MIN_LENGTH:
\r
460 if ( constraintsArray[i][PARAMETER.MIN_LENGTH] != null ) {
\r
461 parameter.minLength = constraintsArray[i][PARAMETER.MIN_LENGTH];
\r
462 parameterList.push(parameter);
\r
463 parameterPushed = true;
\r
464 //console.log ("pushed param for min length: ");
\r
465 //console.log (JSON.stringify (parameter, null, 4));
\r
468 case PARAMETER.IN_RANGE:
\r
469 if ( constraintsArray[i][PARAMETER.IN_RANGE] != null ) {
\r
470 if (constraintsArray[i][PARAMETER.IN_RANGE].length > 1 ) {
\r
471 parameter.min = constraintsArray[i][PARAMETER.IN_RANGE][0];
\r
472 parameter.max = constraintsArray[i][PARAMETER.IN_RANGE][1];
\r
473 parameter.type = PARAMETER.NUMBER;
\r
474 parameter.value = inputs[key][PARAMETER.DEFAULT]
\r
475 parameterList.push(parameter);
\r
476 parameterPushed = true;
\r
477 //console.log ("pushed param for in_range");
\r
481 case PARAMETER.GREATER_THAN:
\r
482 if ( constraintsArray[i][PARAMETER.GREATER_THAN] != null ) {
\r
483 parameter.type = PARAMETER.NUMBER;
\r
484 parameter.min = constraintsArray[i][PARAMETER.GREATER_THAN];
\r
485 parameter.value = inputs[key][PARAMETER.DEFAULT]
\r
486 parameterList.push(parameter);
\r
487 parameterPushed = true;
\r
488 //console.log ("pushed param for greater_than");
\r
498 var addToList = function(name, value) {
\r
499 _this.parameterList.push({
\r
504 var setInventoryInfo = function(){
\r
505 var inventoryItem = DataService.getInventoryItem();
\r
506 var inventoryInfo = ComponentService.getInventoryInfo(
\r
507 _this.componentId, inventoryItem);
\r
511 * The "*Mso*" functions return URL and request details that can be passed
\r
512 * to the MSO controller. The request details defines the info passed as
\r
513 * part of the POST body.
\r
516 var getMsoUrl = function() {
\r
517 switch (_this.componentId) {
\r
518 case COMPONENT.NETWORK:
\r
519 return "mso_create_nw_instance/"
\r
520 + DataService.getServiceInstanceId();
\r
521 case COMPONENT.SERVICE:
\r
522 if(DataService.getE2EService() === true)
\r
523 return "mso_create_e2e_svc_instance";
\r
525 return "mso_create_svc_instance";
\r
526 case COMPONENT.VNF:
\r
527 return "mso_create_vnf_instance/"
\r
528 + DataService.getServiceInstanceId();
\r
529 case COMPONENT.VF_MODULE:
\r
530 return "mso_create_vfmodule_instance/"
\r
531 + DataService.getServiceInstanceId() + "/vnfs/"
\r
532 + DataService.getVnfInstanceId();
\r
533 case COMPONENT.VOLUME_GROUP:
\r
534 return "mso_create_volumegroup_instance/"
\r
535 + DataService.getServiceInstanceId() + "/vnfs/"
\r
536 + DataService.getVnfInstanceId();
\r
540 var getMsoE2ERequest = function(parameterList) {
\r
541 var modelInfo = DataService.getModelInfo(_this.componentId);
\r
544 var lcpRegion = getValueFromList(FIELD.ID.LCP_REGION, parameterList);
\r
545 if (lcpRegion === FIELD.KEY.LCP_REGION_TEXT) {
\r
546 lcpRegion = getValueFromList(FIELD.ID.LCP_REGION_TEXT,
\r
549 var cloudOwner = _.find(DataService.getCloudRegionTenantList(), function(region){
\r
550 return region.cloudRegionId === lcpRegion;
\r
554 var displayInputs = modelInfo.displayInputs;
\r
555 var groupBy = _.groupBy(displayInputs, "templateUUID");
\r
557 _.forEach(groupBy, function(nodeTemplateInputs, nodeTemplateUUID) {
\r
559 var vfLocations = [];
\r
561 nodeTemplateInputs.forEach(function(parameter){
\r
562 if(parameter.type === 'vf_location') {
\r
564 vnfProfileId: parameter.displayName,
\r
565 locationConstraints : {
\r
566 vimId: cloudOwner + '_' + lcpRegion
\r
569 vfLocations.push(loc);
\r
570 } else if(parameter.type === 'sdn_controller') {
\r
571 if(parameter.value === undefined || parameter.value === null) {
\r
572 reqParas[parameter.name] = '';
\r
574 reqParas[parameter.name] = parameter.value.value;
\r
578 _.forEach(displayInputs, function(item, key){
\r
579 if(item === parameter) {
\r
583 var value = _.find(parameterList, function(item){
\r
584 return item.id === name;
\r
586 reqParas[parameter.displayName] = value;
\r
591 resourceName: nodeTemplateInputs[0].templateName,
\r
592 resourceInvariantUuid: nodeTemplateInputs[0].templateInvariantUUID,
\r
593 resourceUuid: nodeTemplateInputs[0].templateUUID,
\r
594 resourceCustomizationUuid: nodeTemplateInputs[0].templateCustomizationUUID,
\r
596 locationConstraints: vfLocations,
\r
597 //TODO resources: [],
\r
598 requestInputs: reqParas
\r
603 var requestBody = {
\r
605 name: getValueFromList(FIELD.ID.INSTANCE_NAME, parameterList),
\r
606 description: modelInfo["description"],
\r
607 serviceInvariantUuid: modelInfo["modelInvariantId"],
\r
608 serviceUuid: modelInfo["modelNameVersionId"],
\r
609 globalSubscriberId: DataService.getGlobalCustomerId(),
\r
610 serviceType: getValueFromList(FIELD.ID.SERVICE_TYPE, parameterList) || modelInfo["serviceTypeName"],
\r
612 locationConstraints: [],
\r
614 requestInputs: {} //TODO
\r
619 return requestBody;
\r
622 var getMsoRequestDetails = function(parameterList) {
\r
623 console.log("getMsoRequestDetails invoked, parameterList="); console.log(JSON.stringify(parameterList,null,4));
\r
624 //console.log("getMsoRequestDetails invoked, DataService.getArbitraryParameters()=");
\r
625 //console.log(JSON.stringify(DataService.getArbitraryParameters(),null,4));
\r
627 //VoLTE logic goes here
\r
628 if(DataService.getE2EService() === true) {
\r
629 return getMsoE2ERequest(parameterList);
\r
632 var modelInfo = DataService.getModelInfo(_this.componentId);
\r
633 var requestorloggedInId = DataService.getLoggedInUserId();
\r
634 var owningEntityId = getValueFromList(FIELD.ID.OWNING_ENTITY, parameterList);
\r
635 if (requestorloggedInId == null)
\r
636 requestorloggedInId = "";
\r
637 var isSupRollback = false;
\r
638 if (getValueFromList(FIELD.ID.SUPPRESS_ROLLBACK,parameterList) === "true") {
\r
639 isSupRollback = true;
\r
641 var requestDetails = {
\r
643 instanceName : getValueFromList(FIELD.ID.INSTANCE_NAME,
\r
644 parameterList) || DataService.getVfModuleInstanceName(),
\r
645 source : FIELD.ID.VID,
\r
646 suppressRollback : isSupRollback,
\r
647 requestorId: requestorloggedInId
\r
650 modelType : _this.componentId,
\r
651 modelInvariantId : modelInfo.modelInvariantId,
\r
652 modelVersionId : modelInfo.modelNameVersionId,
\r
653 modelName : modelInfo.modelName,
\r
654 modelVersion : modelInfo.modelVersion,
\r
655 modelCustomizationId: modelInfo.customizationUuid,
\r
656 modelCustomizationName : modelInfo.modelCustomizationName
\r
658 requestParameters : {
\r
659 userParams : getArbitraryParameters(parameterList)
\r
662 if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_ADD_MSO_TESTAPI_FIELD)) {
\r
663 if ((_this.componentId != COMPONENT.SERVICE) || ( DataService.getALaCarte() )) {
\r
664 requestDetails.requestParameters.testApi = DataService.getMsoRequestParametersTestApi();
\r
667 if ( (_this.componentId != COMPONENT.SERVICE) || ( !DataService.getALaCarte() ) ) {
\r
668 // include cloud region for everything but service create alacarte
\r
669 var lcpRegion = getValueFromList(FIELD.ID.LCP_REGION, parameterList);
\r
670 if (lcpRegion === FIELD.KEY.LCP_REGION_TEXT) {
\r
671 lcpRegion = getValueFromList(FIELD.ID.LCP_REGION_TEXT,
\r
674 requestDetails.cloudConfiguration = {
\r
675 lcpCloudRegionId : lcpRegion,
\r
676 tenantId : getValueFromList(FIELD.ID.TENANT, parameterList)
\r
679 switch (_this.componentId) {
\r
681 case COMPONENT.SERVICE:
\r
682 requestDetails.subscriberInfo = {
\r
683 globalSubscriberId : DataService.getGlobalCustomerId(),
\r
684 subscriberName : DataService.getSubscriberName()
\r
686 var isInTop = DataService.getHideServiceFields() || false;
\r
688 requestDetails.requestParameters.subscriptionServiceType = DataService.getModelInfo(_this.componentId)["serviceTypeName"];
\r
690 requestDetails.requestParameters.subscriptionServiceType = getValueFromList(
\r
691 FIELD.ID.SERVICE_TYPE, parameterList);
\r
693 requestDetails.requestParameters.aLaCarte = DataService.getALaCarte();
\r
694 if ( !DataService.getALaCarte() ) {
\r
695 requestDetails.requestInfo.productFamilyId = getValueFromList(
\r
696 FIELD.ID.PRODUCT_FAMILY, parameterList);
\r
698 var svcModelInfo = {
\r
699 modelType : _this.componentId,
\r
700 modelInvariantId : modelInfo.modelInvariantId,
\r
701 modelVersionId : modelInfo.modelNameVersionId,
\r
702 modelName : modelInfo.modelName,
\r
703 modelVersion : modelInfo.modelVersion
\r
705 requestDetails.modelInfo = svcModelInfo;
\r
707 var selectedProject = getValueFromList(FIELD.ID.PROJECT, parameterList);
\r
709 if (selectedProject) {
\r
710 requestDetails.project = {
\r
711 projectName: getValueFromList(FIELD.ID.PROJECT, parameterList)
\r
715 requestDetails.owningEntity = {
\r
716 owningEntityId: owningEntityId,
\r
717 owningEntityName: getOwningEntityNameById(owningEntityId)
\r
721 case COMPONENT.VNF:
\r
723 requestDetails.requestInfo.productFamilyId = getValueFromList(
\r
724 FIELD.ID.PRODUCT_FAMILY, parameterList);
\r
726 var lineOfBusiness = getValueFromList(FIELD.ID.LINE_OF_BUSINESS, parameterList);
\r
728 if(lineOfBusiness) {
\r
729 var lineOfBusinessNamesString = _.map(lineOfBusiness, "name").join(", ");
\r
731 requestDetails.lineOfBusiness = {
\r
732 lineOfBusinessName: lineOfBusinessNamesString
\r
736 requestDetails.platform = {
\r
737 platformName: getValueFromList(FIELD.ID.PLATFORM, parameterList)
\r
741 case COMPONENT.NETWORK:
\r
742 requestDetails.requestInfo.productFamilyId = getValueFromList(
\r
743 FIELD.ID.PRODUCT_FAMILY, parameterList);
\r
744 var lineOfBusiness = getValueFromList(FIELD.ID.LINE_OF_BUSINESS, parameterList);
\r
746 if(lineOfBusiness) {
\r
747 var lineOfBusinessNamesString = _.map(lineOfBusiness, "name").join(", ");
\r
749 requestDetails.lineOfBusiness = {
\r
750 lineOfBusinessName: lineOfBusinessNamesString
\r
754 requestDetails.platform = {
\r
755 platformName: getValueFromList(FIELD.ID.PLATFORM, parameterList)
\r
758 case COMPONENT.VF_MODULE:
\r
759 requestDetails.requestParameters.usePreload = getValueFromList(
\r
760 FIELD.ID.SDN_C_PRELOAD, parameterList);
\r
761 if(_this.componentId == COMPONENT.VF_MODULE &&(requestDetails.requestParameters.usePreload== null || requestDetails.requestParameters.usePreload === '')){
\r
762 requestDetails.requestParameters.usePreload = false;
\r
765 case COMPONENT.VOLUME_GROUP:
\r
769 var relatedInstanceList = getRelatedInstanceList(parameterList);
\r
771 if (relatedInstanceList !== undefined) {
\r
772 requestDetails.relatedInstanceList = relatedInstanceList;
\r
775 return requestDetails;
\r
778 var getRelatedInstanceList = function(parameterList) {
\r
779 var relatedInstanceList = new Array();
\r
780 switch (_this.componentId) {
\r
781 case COMPONENT.SERVICE:
\r
783 case COMPONENT.NETWORK:
\r
784 case COMPONENT.VNF:
\r
785 addRelatedInstance(relatedInstanceList, COMPONENT.SERVICE,
\r
786 DataService.getServiceInstanceId());
\r
788 case COMPONENT.VF_MODULE:
\r
789 addRelatedInstance(relatedInstanceList, COMPONENT.SERVICE,
\r
790 DataService.getServiceInstanceId());
\r
791 addRelatedInstance(relatedInstanceList, COMPONENT.VNF, DataService
\r
792 .getVnfInstanceId());
\r
794 var availableVolumeGroup = getValueFromList(
\r
795 FIELD.ID.AVAILABLE_VOLUME_GROUP, parameterList);
\r
797 if (UtilityService.hasContents(availableVolumeGroup) && availableVolumeGroup !== "None") {
\r
798 var availableVolumeGroups = DataService.getAvailableVolumeGroupList();
\r
800 for (var i = 0; i < availableVolumeGroups.length; i++) {
\r
801 if (availableVolumeGroups[i].instance.name == availableVolumeGroup) {
\r
802 DataService.setModelInfo(COMPONENT.VOLUME_GROUP, DataService.getModelInfo(COMPONENT.VF_MODULE));
\r
803 DataService.setVolumeGroupInstanceId(availableVolumeGroups[i].instance.object["volume-group-id"]);
\r
808 addRelatedInstance(relatedInstanceList, COMPONENT.VOLUME_GROUP,
\r
809 DataService.getVolumeGroupInstanceId());
\r
812 case COMPONENT.VOLUME_GROUP:
\r
813 addRelatedInstance(relatedInstanceList, COMPONENT.SERVICE,
\r
814 DataService.getServiceInstanceId());
\r
815 addRelatedInstance(relatedInstanceList, COMPONENT.VNF, DataService
\r
816 .getVnfInstanceId());
\r
820 return relatedInstanceList;
\r
823 var addRelatedInstance = function(relatedInstanceList, componentId,
\r
825 var modelInfo = DataService.getModelInfo(componentId);
\r
826 var relatedInstance;
\r
827 if (modelInfo !== undefined) {
\r
828 if (componentId === COMPONENT.SERVICE) {
\r
829 relatedInstance = {
\r
830 "instanceId" : instanceId,
\r
832 "modelType" : componentId,
\r
833 "modelName" : modelInfo.modelName,
\r
834 "modelInvariantId" : modelInfo.modelInvariantId,
\r
835 "modelVersion" : modelInfo.modelVersion,
\r
836 "modelVersionId" : modelInfo.modelNameVersionId,
\r
842 relatedInstance = {
\r
843 "instanceId" : instanceId,
\r
845 "modelType" : componentId,
\r
846 "modelName" : modelInfo.modelName,
\r
847 "modelInvariantId" : modelInfo.modelInvariantId,
\r
848 "modelVersion" : modelInfo.modelVersion,
\r
849 "modelVersionId" : modelInfo.modelNameVersionId,
\r
850 "modelCustomizationId": modelInfo.customizationUuid,
\r
851 "modelCustomizationName": modelInfo.modelCustomizationName
\r
855 relatedInstanceList.push({
\r
856 relatedInstance : relatedInstance
\r
862 * var getArbitraryParameters = function(parameterList) { var
\r
863 * arbitraryParameters = new Object(); for (var i = 0; i <
\r
864 * parameterList.length; i++) { var parameter = parameterList[i]; switch
\r
865 * (parameter.id) { case FIELD.ID.INSTANCE_NAME: case
\r
866 * FIELD.ID.PRODUCT_FAMILY: case FIELD.ID.LCP_REGION: case
\r
867 * FIELD.ID.LCP_REGION_TEXT: case FIELD.ID.SERVICE_TYPE: case
\r
868 * FIELD.ID.TENANT: case FIELD.ID.SUPPRESS_ROLLBACK: break; default:
\r
869 * arbitraryParameters[parameter.id] = parameter.value; } } return
\r
870 * arbitraryParameters; }
\r
872 var getArbitraryParameters = function(parameterList) {
\r
873 var arbitraryParameters = new Object();
\r
874 var arbitraryArray = new Array();
\r
875 for (var i = 0; i < parameterList.length; i++) {
\r
876 var parameter = parameterList[i];
\r
877 switch (parameter.id) {
\r
878 case FIELD.ID.AVAILABLE_VOLUME_GROUP:
\r
879 case FIELD.ID.INSTANCE_NAME:
\r
880 case FIELD.ID.PRODUCT_FAMILY:
\r
881 case FIELD.ID.LCP_REGION:
\r
882 case FIELD.ID.LCP_REGION_TEXT:
\r
883 case FIELD.ID.SERVICE_TYPE:
\r
884 case FIELD.ID.TENANT:
\r
885 case FIELD.ID.SUPPRESS_ROLLBACK:
\r
886 case FIELD.ID.SUBSCRIBER_NAME:
\r
887 case FIELD.ID.SDN_C_PRELOAD:
\r
888 case FIELD.ID.UPLOAD_SUPPLEMENTORY_DATA_FILE:
\r
889 case FIELD.ID.OWNING_ENTITY:
\r
890 case FIELD.ID.PLATFORM:
\r
891 case FIELD.ID.LINE_OF_BUSINESS:
\r
892 case FIELD.ID.PROJECT:
\r
894 case FIELD.ID.SUPPLEMENTORY_DATA_FILE:
\r
895 arbitraryParameters = FIELD.PARAMETER.SUPPLEMENTORY_DATA_FILE['value'];
\r
896 arbitraryArray=arbitraryParameters;
\r
897 FIELD.PARAMETER.SUPPLEMENTORY_DATA_FILE['value']=[];
\r
901 if (parameter.value != '') {
\r
902 arbitraryParameters = {
\r
903 name: parameter.id,
\r
904 value: parameter.value
\r
906 arbitraryArray.push(arbitraryParameters);
\r
910 return (arbitraryArray);
\r
913 var getModel = function() {
\r
914 AsdcService.getModel(DataService.getModelId(), function(response) {
\r
915 DataService.setModelInfo(_this.componentId, {
\r
916 modelInvariantId : response.data.invariantUUID,
\r
917 modelNameVersionId : response.data.uuid,
\r
918 modelName : response.data.name,
\r
919 modelVersion : response.data.version,
\r
920 inputs : response.data.inputs
\r
922 UtilityService.startNextAsyncOperation();
\r
926 var getSubscriptionServiceTypeList = function() {
\r
927 AaiService.getSubscriptionServiceTypeList(DataService
\r
928 .getGlobalCustomerId(), function(response) {
\r
929 DataService.setSubscriptionServiceTypeList(response);
\r
930 UtilityService.startNextAsyncOperation();
\r
934 var getLoggedInUserID = function() {
\r
935 AaiService.getLoggedInUserID(function(response) {
\r
936 DataService.setLoggedInUserId(response.data);
\r
937 UtilityService.startNextAsyncOperation();
\r
941 var getSubscribers = function() {
\r
942 AaiService.getSubscribers(function(response) {
\r
943 DataService.setSubscribers(response);
\r
944 UtilityService.startNextAsyncOperation();
\r
947 var getServices = function() {
\r
948 AaiService.getServices(function(response) {
\r
949 var serviceIdList = [];
\r
950 angular.forEach(response.data, function(value, key) {
\r
951 angular.forEach(value, function(subVal, key) {
\r
953 "id" : subVal[FIELD.ID.SERVICE_ID],
\r
954 "description" : subVal[FIELD.ID.SERVICE_DESCRIPTION],
\r
955 "isPermitted" : subVal[FIELD.ID.IS_PERMITTED],
\r
957 serviceIdList.push(newVal);
\r
958 DataService.setServiceIdList(serviceIdList);
\r
962 UtilityService.startNextAsyncOperation();
\r
965 var getAicZones = function() {
\r
966 AaiService.getAicZones(function(response) {
\r
967 var serviceIdList = [];
\r
968 angular.forEach(response.data, function(value, key) {
\r
969 angular.forEach(value, function(subVal, key) {
\r
971 "id" : subVal[FIELD.ID.ZONE_ID],
\r
972 "name" : subVal[FIELD.ID.ZONE_NAME],
\r
974 serviceIdList.push(newVal);
\r
975 DataService.setAicZones(serviceIdList);
\r
979 UtilityService.startNextAsyncOperation();
\r
983 var getOwningEntityProperties = function() {
\r
984 OwningEntityService.getOwningEntityProperties(function(owningEntityProperties) {
\r
985 DataService.setOwningEntityProperties(owningEntityProperties);
\r
986 UtilityService.startNextAsyncOperation();
\r
991 var getLcpCloudRegionTenantList = function() {
\r
992 AaiService.getLcpCloudRegionTenantList(DataService
\r
993 .getGlobalCustomerId(), DataService.getServiceType(), function(
\r
995 DataService.setCloudRegionTenantList(response);
\r
996 UtilityService.startNextAsyncOperation();
\r
1000 var internalGetParametersHandler = function() {
\r
1001 if (angular.isFunction(_this.getParametersHandler)) {
\r
1002 _this.getParametersHandler({
\r
1003 summaryList : getSummaryList(),
\r
1004 userProvidedList : getUserProvidedList()
\r
1009 var getSubscribersParameter = function() {
\r
1010 var subscribers = DataService.getSubscribers();
\r
1011 var parameter = FIELD.PARAMETER.SUBSCRIBER_NAME;
\r
1012 if ( UtilityService.hasContents(subscribers)) {
\r
1013 parameter.optionList = [];
\r
1015 for (var i = 0; i < subscribers.length; i++) {
\r
1016 parameter.optionList.push({
\r
1017 id : subscribers[i][FIELD.ID.GLOBAL_CUSTOMER_ID],
\r
1018 name : subscribers[i][FIELD.ID.SUBNAME],
\r
1019 isPermitted : subscribers[i][FIELD.ID.IS_PERMITTED]
\r
1026 var getServiceId = function() {
\r
1027 var serviceIdList = DataService.getServiceIdList();
\r
1028 //var serviceTypeList = DataService.getSubscriptionServiceTypeList();
\r
1029 var parameter = FIELD.PARAMETER.PRODUCT_FAMILY;
\r
1030 parameter.optionList = new Array();
\r
1031 if ( UtilityService.hasContents(serviceIdList) ) {
\r
1033 for (var i = 0; i < serviceIdList.length; i++) {
\r
1034 parameter.optionList.push({
\r
1035 id : serviceIdList[i].id,
\r
1036 name : serviceIdList[i].description,
\r
1037 isPermitted : serviceIdList[i].isPermitted
\r
1045 var getAicZonesParameter = function() {
\r
1046 var aicList = DataService.getAicZones();
\r
1047 var parameter = FIELD.PARAMETER.AIC_ZONES;
\r
1048 parameter.optionList = new Array();
\r
1049 if ( UtilityService.hasContents(aicList) ) {
\r
1051 for (var i = 0; i < aicList.length; i++) {
\r
1052 parameter.optionList.push({
\r
1053 id : aicList[i].id,
\r
1054 name : aicList[i].name,
\r
1055 isPermitted : true
\r
1064 var getProjectParameter = function() {
\r
1065 return getOwningEntityParameterWithOptions(FIELD.PARAMETER.PROJECT);
\r
1068 var getOwningEntityParameter = function() {
\r
1069 return getOwningEntityParameterWithOptions(FIELD.PARAMETER.OWNING_ENTITY);
\r
1072 var getLineOfBusinessParameter = function() {
\r
1073 return getOwningEntityParameterWithOptions(FIELD.PARAMETER.LINE_OF_BUSINESS);
\r
1076 var getPlatformParameter = function() {
\r
1077 return getOwningEntityParameterWithOptions(FIELD.PARAMETER.PLATFORM);
\r
1080 var getOwningEntityNameById = function (id) {
\r
1081 var properties = DataService.getOwningEntityProperties();
\r
1082 var parameter = _.find(properties[FIELD.ID.OWNING_ENTITY], {"id": id});
\r
1083 return parameter && parameter.name;
\r
1086 var getOwningEntityParameterWithOptions = function(parameter) {
\r
1087 var properties = DataService.getOwningEntityProperties();
\r
1088 if (properties && properties[parameter.id]) {
\r
1089 parameter.optionList = _.map(properties[parameter.id], function(parameter) {
\r
1091 "id" : parameter.id,
\r
1092 "name" : parameter.name,
\r
1093 "isPermitted": true
\r
1101 var getLcpRegionParameter = function() {
\r
1102 var cloudRegionTenantList = DataService.getCloudRegionTenantList();
\r
1103 console.log ( "cloudRegionTenantList=");
\r
1104 console.log ( JSON.stringify (cloudRegionTenantList, null, 4 ));
\r
1106 var parameter = FIELD.PARAMETER.LCP_REGION;
\r
1107 if ( UtilityService.hasContents (cloudRegionTenantList) ) {
\r
1108 parameter.optionList = new Array();
\r
1109 for (var i = 0; i < cloudRegionTenantList.length; i++) {
\r
1110 for (var j = 0; j < parameter.optionList.length; j++) {
\r
1111 if (parameter.optionList[j].id === cloudRegionTenantList[i].cloudRegionId) {
\r
1112 parameter.optionList[j].isPermitted =
\r
1113 parameter.optionList[j].isPermitted || cloudRegionTenantList[i].isPermitted;
\r
1117 if (j < parameter.optionList.length) {
\r
1120 parameter.optionList.push({
\r
1121 id : cloudRegionTenantList[i].cloudRegionId,
\r
1122 isPermitted : cloudRegionTenantList[i].isPermitted
\r
1129 var getTenantList = function(cloudRegionId) {
\r
1130 var cloudRegionTenantList = DataService.getCloudRegionTenantList();
\r
1131 var parameter = "";
\r
1132 if ( UtilityService.hasContents (cloudRegionTenantList) ) {
\r
1133 parameter = FIELD.PARAMETER.TENANT_ENABLED;
\r
1134 parameter.optionList = new Array();
\r
1135 for (var i = 0; i < cloudRegionTenantList.length; i++) {
\r
1136 if (cloudRegionTenantList[i].cloudRegionId === cloudRegionId) {
\r
1137 parameter.optionList.push({
\r
1138 id : cloudRegionTenantList[i].tenantId,
\r
1139 name : cloudRegionTenantList[i].tenantName,
\r
1140 isPermitted : cloudRegionTenantList[i].isPermitted
\r
1150 var addOptionList = function(parameter, optionSimpleArray) {
\r
1151 var optionList = new Array();
\r
1152 if (!angular.isArray(optionSimpleArray)) {
\r
1153 return optionList;
\r
1155 for (var i = 0; i < optionSimpleArray.length; i++) {
\r
1157 name : optionSimpleArray[i],
\r
1158 isPermitted :true,
\r
1161 parameter.optionList = optionList;
\r
1165 var getValueFromList = function(id, parameterList) {
\r
1166 for (var i = 0; i < parameterList.length; i++) {
\r
1167 if (parameterList[i].id === id) {
\r
1168 return parameterList[i].value;
\r
1172 var updateUserParameterList = function(updatedId, parameterListControl) {
\r
1173 console.log ("updateUserParameterList() updatedId=" + updatedId);
\r
1174 if (updatedId === FIELD.ID.PRODUCT_FAMILY && DataService.getHideServiceFields()) {
\r
1175 var cloudRegionTenantList = new Array();
\r
1176 AaiService.getLcpCloudRegionTenantList(DataService.getGlobalCustomerId(), DataService.getServiceType(), function(cloudRegionTenantList) {
\r
1177 DataService.setCloudRegionTenantList(cloudRegionTenantList);
\r
1178 parameterListControl.updateList([ getLcpRegionParameter() ]);
\r
1180 }else if (updatedId === FIELD.ID.SDN_C_PRELOAD) {
\r
1181 var list = parameterListControl.getList(updatedId);
\r
1182 if($('input[parameter-id="'+updatedId+'"]').is(':checked')){
\r
1183 FIELD.PARAMETER.SDN_C_PRELOAD_CHECKED.value=true;
\r
1184 parameterListControl
\r
1185 .updateList([ FIELD.PARAMETER.SDN_C_PRELOAD_CHECKED ]);
\r
1187 parameterListControl
\r
1188 .updateList([ FIELD.PARAMETER.SDN_C_PRELOAD_UNCHECKED ]);
\r
1190 }else if (updatedId === FIELD.ID.UPLOAD_SUPPLEMENTORY_DATA_FILE) {
\r
1191 if($('input[parameter-id="'+updatedId+'"]').is(':checked')){
\r
1192 $('input[parameter-id="'+FIELD.ID.SUPPLEMENTORY_DATA_FILE+'"]').closest('tr').show();
\r
1193 FIELD.PARAMETER.UPLOAD_SUPPLEMENTORY_DATA_FILE_CHECKED.value=true;
\r
1194 parameterListControl
\r
1195 .updateList([ FIELD.PARAMETER.UPLOAD_SUPPLEMENTORY_DATA_FILE_CHECKED ]);
\r
1197 $('input[parameter-id="'+FIELD.ID.SUPPLEMENTORY_DATA_FILE+'"]').closest('tr').hide();
\r
1198 FIELD.PARAMETER.UPLOAD_SUPPLEMENTORY_DATA_FILE_CHECKED.value=false;
\r
1199 parameterListControl
\r
1200 .updateList([ FIELD.PARAMETER.UPLOAD_SUPPLEMENTORY_DATA_FILE_UNCHECKED ]);
\r
1202 } else if (updatedId === FIELD.ID.SUPPLEMENTORY_DATA_FILE) {
\r
1203 var filePath = $('input[parameter-id="'+updatedId+'"]').val();
\r
1204 var arr =filePath.split('.');
\r
1205 var fileExt = arr[arr.length-1];
\r
1206 if(fileExt!='' && fileExt.toLowerCase()!='json'){
\r
1207 $('input[parameter-id="'+updatedId+'"]').val('');
\r
1208 alert("Invalid file format. Please select *.json format file.");
\r
1211 } else if (updatedId === FIELD.ID.LCP_REGION) {
\r
1212 var list = parameterListControl.getList(updatedId);
\r
1213 if (list[0].selectedIndex >= 0) {
\r
1214 parameterListControl
\r
1215 .updateList([ getTenantList(list[0].value) ]);
\r
1217 parameterListControl
\r
1218 .updateList([ FIELD.PARAMETER.TENANT_DISABLED ]);
\r
1220 if (list[0].value === FIELD.KEY.LCP_REGION_TEXT) {
\r
1221 parameterListControl
\r
1222 .updateList([ FIELD.PARAMETER.LCP_REGION_TEXT_VISIBLE ]);
\r
1224 parameterListControl
\r
1225 .updateList([ FIELD.PARAMETER.LCP_REGION_TEXT_HIDDEN ]);
\r
1227 } else if (updatedId === FIELD.ID.SUBSCRIBER_NAME) {
\r
1228 var list = parameterListControl.getList(updatedId);
\r
1229 if (list[0].selectedIndex >= 0) {
\r
1230 DataService.setGlobalCustomerId(list[0].value);
\r
1232 AaiService.getSubscriptionServiceTypeList(DataService
\r
1233 .getGlobalCustomerId(), function(response) {
\r
1234 DataService.setSubscriptionServiceTypeList(response);
\r
1235 var serviceTypeParameters = FIELD.PARAMETER.SERVICE_TYPE;
\r
1236 serviceTypeParameters.optionList = [];
\r
1238 for (var i = 0; i < response.length; i++) {
\r
1239 serviceTypeParameters.optionList.push({
\r
1240 "id" : response[i].name,
\r
1241 "name" : response[i].name,
\r
1242 "isPermitted" :response[i].isPermitted
\r
1246 console.log ( "updateUserParameterList: service type parameters " );
\r
1247 console.log ( JSON.stringify (serviceTypeParameters, null, 4));
\r
1248 parameterListControl.updateList([ serviceTypeParameters ]);
\r
1252 } else if ( updatedId === FIELD.ID.SERVICE_TYPE ) {
\r
1253 var list = parameterListControl.getList(updatedId);
\r
1254 if (list[0].selectedIndex >= 0) {
\r
1256 DataService.setServiceType(list[0].value);
\r
1257 var cloudRegionTenantList = new Array();
\r
1258 AaiService.getLcpCloudRegionTenantList(DataService.getGlobalCustomerId(), DataService.getServiceType(), function(cloudRegionTenantList) {
\r
1259 DataService.setCloudRegionTenantList(cloudRegionTenantList);
\r
1260 parameterListControl.updateList([ getLcpRegionParameter() ]);
\r
1263 parameterListControl
\r
1264 .updateList([ FIELD.PARAMETER.SERVICE_TYPE_DISABLED ]);
\r
1271 initializeComponent : function(componentId) {
\r
1272 _this.componentId = ComponentService.initialize(componentId);
\r
1274 setHttpErrorHandler : function(httpErrorHandler) {
\r
1275 _this.httpErrorHandler = httpErrorHandler;
\r
1277 getComponentDisplayName : ComponentService.getComponentDisplayName,
\r
1278 getParameters : function(getParametersHandler) {
\r
1279 _this.getParametersHandler = getParametersHandler;
\r
1280 UtilityService.setHttpErrorHandler(_this.httpErrorHandler);
\r
1281 UtilityService.startAsyncOperations(getAsyncOperationList(),
\r
1282 internalGetParametersHandler);
\r
1284 updateUserParameterList : updateUserParameterList,
\r
1285 getMsoRequestDetails : getMsoRequestDetails,
\r
1286 getMsoUrl : getMsoUrl,
\r
1287 setInventoryInfo: setInventoryInfo
\r
1291 appDS2.factory("CreationService", [ "$log", "AaiService", "AsdcService",
\r
1292 "DataService","VIDCONFIGURATION", "ComponentService", "COMPONENT", "FIELD", "PARAMETER",
\r
1293 "UtilityService", "OwningEntityService","featureFlags", CreationService ]);
\r