aboutsummaryrefslogtreecommitdiffstats
path: root/src/app/vnfs/build-artifacts/parameter-definitions
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/vnfs/build-artifacts/parameter-definitions')
-rw-r--r--src/app/vnfs/build-artifacts/parameter-definitions/parameter-definition.service.ts145
-rw-r--r--src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.html7
-rw-r--r--src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.ts118
3 files changed, 89 insertions, 181 deletions
diff --git a/src/app/vnfs/build-artifacts/parameter-definitions/parameter-definition.service.ts b/src/app/vnfs/build-artifacts/parameter-definitions/parameter-definition.service.ts
index 2bd1bc9..14af6ab 100644
--- a/src/app/vnfs/build-artifacts/parameter-definitions/parameter-definition.service.ts
+++ b/src/app/vnfs/build-artifacts/parameter-definitions/parameter-definition.service.ts
@@ -31,8 +31,6 @@ import {UtilityService} from '../../../shared/services/utilityService/utility.se
import {NotificationsService} from 'angular2-notifications';
import 'rxjs/add/operator/map';
import { appConstants } from '../../../../constants/app-constants';
-import { HttpUtilService } from '../../../shared/services/httpUtil/http-util.service';
-
let YAML = require('yamljs');
@@ -40,7 +38,7 @@ declare var $: any;
@Injectable()
export class ParameterDefinitionService {
- clName= "ParameterDefinitionSvc";
+
public vnfcTypeData: string = '';
public selectedUploadType: string;
@ViewChild(ModalComponent) modalComponent: ModalComponent;
@@ -65,12 +63,9 @@ export class ParameterDefinitionService {
private selectedActionReference: any;
private apiToken = localStorage['apiToken'];
private userId = localStorage['userId'];
- public versionNoForApiCall=require('../../../../cdt.application.properties.json').versionNoForApiCall;
-
constructor(private mappingEditorService: MappingEditorService,
private paramShareService: ParamShareService,
private nService: NotificationsService,
- private httpService: HttpUtilService,
private utilService: UtilityService) {
}
@@ -84,8 +79,6 @@ export class ParameterDefinitionService {
this.protocol = protocol;
this.action = action;
this.artifact_fileName = artifactName;
- this.appDataObject = this.mappingEditorService.appDataObject;
- this.downloadDataObject = this.mappingEditorService.downloadDataObject;
}
public afterInit(artifactName, displayParamObjects) {
@@ -96,8 +89,7 @@ export class ParameterDefinitionService {
/* Saves pd to appc */
public sendPD(yamlString: String) {
let result: any;
- let input = this.utilService.createPayLoadForSave("pd_data",this.vnfType,this.action,this.artifact_fileName, this.versionNoForApiCall, yamlString);
- /*let payload = '{"userID": "' + this.userId + '","vnf-type" : "' + this.vnfType + '","action" : "' + this.action + '","artifact-name" : "' + this.artifact_fileName + '","artifact-type" : "APPC-CONFIG","artifact-version" : "0.0.1","artifact-contents" : ' + yamlString + '}';
+ let payload = '{"userID": "' + this.userId + '","vnf-type" : "' + this.vnfType + '","action" : "' + this.action + '","artifact-name" : "' + this.artifact_fileName + '","artifact-type" : "APPC-CONFIG","artifact-version" : "0.0.1","artifact-contents" : ' + yamlString + '}';
let input = {
'input': {
'design-request': {
@@ -106,7 +98,7 @@ export class ParameterDefinitionService {
'payload': payload
}
}
- };*/
+ };
this.appDataObject.pd = input;
}
@@ -122,78 +114,26 @@ export class ParameterDefinitionService {
return result;
}
- //.. setup display of each parameter row depending on the paramater name,
- // pre-set values of source and rule-type fields (columns)
- populateDataUponSource( displayParamObjects) {
- var methName= "populateDataUponSource";
- if( this.utilService.getTracelvl() > 0 )
- console.log( this.clName+": "+methName+": start: displayParamObjects "+
- "length="+displayParamObjects.length );
- displayParamObjects.forEach( parameter => {
- if( this.utilService.getTracelvl() > 0 )
- console.log( this.clName+": "+methName+": param: name:["+
- parameter.name+"] source:["+
- parameter.source+"] rule-type:["+parameter['rule-type']+"]");
- if( parameter.name == 'NodeList-DD') {
- if( this.utilService.getTracelvl() > 0 )
- console.log( this.clName+": "+methName+": the Param is NodeList");
- parameter.source= "DataDictionary";
- }
- else if( parameter.name == 'vnfName-DD' ) {
- if( this.utilService.getTracelvl() > 0 )
- console.log( this.clName+": "+methName+": the Param's vnfName-DD");
- parameter.source= "A&AI";
- parameter['rule-type']= "vnf-name";
- };
- if( parameter.source == 'A&AI') {
- parameter.ruleTypeValues = [null, 'vnf-name', 'vm-name-list', 'vnfc-name-list', 'vnf-oam-ipv4-address', 'vnfc-oam-ipv4-address-list'];
- if( parameter['rule-type'] == 'vm-name-list' ||
- parameter['rule-type'] == 'vnfc-name-list' ||
- parameter['rule-type'] == 'vnfc-oam-ipv4-address-list')
- {
- parameter.showFilterFields = true;
- parameter.enableFilterByValue = false;
- } else {
- parameter.showFilterFields = false;
- }
- }
- else if( parameter.source == 'Manual') {
+ //========================== End of removeUnwantedvalues() Method============================================
+ populateDataUponSource(displayParamObjects) {
+ displayParamObjects.forEach(parameter => {
+ if (parameter.source == 'A&AI') {
+ parameter.ruleTypeValues = [null, 'vnf-name', 'vm-name-list', 'vnfc-name-list', 'vnf-oam-ipv4-address', 'vnfc-oam-ipv4-address-list'];
+ if (parameter['rule-type'] == 'vm-name-list' || parameter['rule-type'] == 'vnfc-name-list' || parameter['rule-type'] == 'vnfc-oam-ipv4-address-list') {
+ parameter.showFilterFields = true;
+ parameter.enableFilterByValue = false;
+ } else {
+ parameter.showFilterFields = false;
+ }
+
+ } else if (parameter.source == 'Manual') {
parameter.ruleTypeValues = [null];
}
- else if( parameter.source == 'DataDictionary') {
- parameter.sourceValues = ['DataDictionary'];
- parameter.ruleTypeValues = ['NodeList'];
- parameter['rule-type']= 'NodeList';
- }
else {
parameter.ruleTypeValues = [parameter['rule-type']];
}
- //.. print-out the parameter's drop-downs for source and rule-type
- if( this.utilService.getTracelvl() > 1 ) {
- if( parameter.sourceValues != null &&
- parameter.sourceValues != undefined )
- {
- console.log( this.clName+": "+methName+": sourceValues length="+
- parameter.sourceValues.length );
- if( parameter.sourceValues.length > 0 ) {
- for( var i0=0; i0 < parameter.sourceValues.length; i0++ )
- console.log( methName+": sourceValues["+i0+"]:["+
- parameter.sourceValues[i0]+"]");
- };
- };
- if( parameter.ruleTypeValues != null &&
- parameter.ruleTypeValues != undefined )
- {
- console.log( this.clName+": "+methName+": ruleTypeValues length="+
- parameter.ruleTypeValues.length );
- if( parameter.ruleTypeValues.length > 0 ) {
- for( var i0=0; i0 < parameter.ruleTypeValues.length; i0++ )
- console.log( methName+": ruleTypeValues["+i0+"]:["+
- parameter.ruleTypeValues[i0]+"]");
- };
- };
- };
});
+
}
//========================== End of getPD() Method============================================
@@ -202,7 +142,7 @@ export class ParameterDefinitionService {
//Added code to deserialize, serialize and format the response keys for display purposes ??May be unneessary?? To Do: - Check
let fileObj = JSON.parse(fileContent);
this.displayParamObjects = this.formatFileContentForDisplay(fileObj);
- this.populateDataUponSource( this.displayParamObjects);
+ this.populateDataUponSource(this.displayParamObjects);
this.formatResponseForKey(this.displayParamObjects);
if (undefined !== this.displayParamObjects)
this.modelParamDefinitionObjects = this.displayParamObjects;
@@ -212,6 +152,7 @@ export class ParameterDefinitionService {
return this.displayParamObjects;
}
+ //========================== End of populatePD() Method============================================
/* Formats each object read from YAML file as per page expectations */
formatResponseForKey(param: any[]) {
for (var i = 0; i < param.length; i++) {
@@ -259,8 +200,8 @@ export class ParameterDefinitionService {
}
}
}
- //========================== End of formatKeys() Method============================================
+ //========================== End of formatKeys() Method============================================
//Send null if there are no keys present - Check with key names being absent
formatKeysForFileGeneration() {
for (var i = 0; i < this.modelParamDefinitionObjects.length; i++) {
@@ -328,7 +269,7 @@ export class ParameterDefinitionService {
}
delete fileModel[i]['response-keys'];
fileModel[i]['response-keys'] = fileModel[i]['response-keys-new'];
- delete fileModel[i]['response-keys-new'];
+ delete fileModel[i]['response-keys=new'];
}
}
return fileModel;
@@ -364,22 +305,14 @@ export class ParameterDefinitionService {
return result;
}
- //========================== End of clearSessionStorageForParam() Method============================================
- isValidateSourceAndResponseKeys(objs: any[]) {
- let isValid = true;
- if (undefined != objs || null != objs) {
- for (var i = 0; i < objs.length; i++) {
- if (objs[i].source == 'INSTAR' && (null == objs[i]['response-keys'] || undefined == objs[i]['response-keys'])) {
- isValid = false;
- return isValid;
- }
- }
- }
- return isValid;
+
+ public prepareFileName(): any {
+ let fileNameObject: any = this.mappingEditorService.latestAction;
+ this.appDataObject = this.mappingEditorService.appDataObject;
+ this.downloadDataObject = this.mappingEditorService.downloadDataObject;
+ return fileNameObject;
}
-
-
public destroy(displayParamObjects) {
this.displayParamObjects = displayParamObjects;
if (this.mappingEditorService.referenceNameObjects) {
@@ -405,8 +338,6 @@ export class ParameterDefinitionService {
jsonString = jsonString.replace(/"null"/g, 'null');
let saveModel = JSON.parse(jsonString);
let pdFileObject = this.processResponseKeys(saveModel);
- //Validate for Source =INSTAR and responsekeys present
- if (this.isValidateSourceAndResponseKeys(pdFileObject)) {
let yamlObject = {
'kind': 'Property Definition',
'version': 'V1',
@@ -431,14 +362,7 @@ export class ParameterDefinitionService {
else {
this.sendPD(JSON.stringify(yamlString));
}
- }
- else {
- for (var i = 0; i < this.modelParamDefinitionObjects.length; i++) {
- this.formatKeys(this.modelParamDefinitionObjects[i]);
- }
- this.nService.error('Error', 'Response Keys cannot be empty if source is INSTAR');
- return;
- }
+
//Restore Keys for display
for (var i = 0; i < this.modelParamDefinitionObjects.length; i++) {
this.formatKeys(this.modelParamDefinitionObjects[i]);
@@ -486,18 +410,7 @@ export class ParameterDefinitionService {
}
parameterDefinitionObject['source'] = fields[0];
parameterDefinitionObject['rule-type'] = fields[1];
- } else {
- if (parameterDefinitionObject['source'] === 'INSTAR') {
- parameterDefinitionObject['source'] = 'Manual';
- parameterDefinitionObject['ruleTypeValues'] = [null];
- parameterDefinitionObject['rule-type'] = null;
- parameterDefinitionObject['showFilterFields'] = false;
- for (let x = 0; x < 5; x++) {
- parameterDefinitionObject['response-keys'][x]['key-name'] = null;
- parameterDefinitionObject['response-keys'][x]['key-value'] = null;
- }
- }
- }
+ }
this.formatKeys(parameterDefinitionObject); //Ensure there are 3 elements for response-keys, request-keys for display purposes
if (!result.present) { //only push if not present
this.modelParamDefinitionObjects.push(parameterDefinitionObject);
diff --git a/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.html b/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.html
index 6cae750..799627b 100644
--- a/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.html
+++ b/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.html
@@ -40,11 +40,10 @@ limitations under the License.
<label>Vnf Type</label><input class="form-control" type="text" disabled value="{{vnfType}}" />
</div>
<div class="col-lg-3 col-sm-6 col-md-3 col-xs-12" *ngIf="vnfcType">
- <label>Vnfc Type</label> <label style="font-size:12px;">(NFC Function)</label>
- <input class="form-control" type="text" disabled value="{{vnfcType}}" />
+ <label>Vnfc Type</label><input class="form-control" type="text" disabled value="{{vnfcType}}" />
</div>
<div class="col-lg-3 col-sm-6 col-md-3 col-xs-12" *ngIf="!vnfcType">
-
+
</div>
<div class="col-lg-3 col-sm-6 col-md-3 col-xs-12">
<label>Protocol</label><input class="form-control" type="text" disabled value="{{protocol}}" />
@@ -143,7 +142,7 @@ limitations under the License.
<option *ngFor="let src of sourceValues"
[value]="src"
[selected]="src === obj.source"
- [disabled]="(obj.name == 'NodeList-DD' && src != 'DataDictionary')||(obj.name == 'vnfName-DD' && src == 'DataDictionary')||(obj.name != 'NodeList-DD' && obj.name != 'vnfName-DD' && src == 'INSTAR')">
+ >
{{src}}
</option>
diff --git a/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.ts b/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.ts
index 6ba8e52..f7d1837 100644
--- a/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.ts
+++ b/src/app/vnfs/build-artifacts/parameter-definitions/parameter.component.ts
@@ -38,7 +38,6 @@ import 'rxjs/add/operator/map';
import { NgProgress } from 'ngx-progressbar';
import { NgxSpinnerService } from 'ngx-spinner';
import { appConstants } from '../../../../constants/app-constants';
-import { APIService } from "../../../shared/services/cdt.apicall";
let YAML = require('yamljs');
@@ -51,11 +50,9 @@ declare var $: any;
providers: [ParameterDefinitionService]
})
export class ParameterComponent implements OnInit {
- clName= "ParameterCompon";
public paramForm: any;
public actionType: any;
public showFilterFields: boolean;
-
public filterByFieldvalues = appConstants.filterByFieldvalues;
public ruleTypeConfiguaration = appConstants.ruleTypeConfiguaration;
public requiredValues: boolean[] = appConstants.requiredValues;
@@ -109,12 +106,11 @@ export class ParameterComponent implements OnInit {
public artifactName;
public appDataObject: any;
public downloadDataObject: any;
- public artifact_fileName="";
+ public artifact_fileName = "";
template_id: any;
private selectedActionReference: any;
constructor(private httpService: HttpUtilService,
- private apiService:APIService,
private parameterDefinitionService: ParameterDefinitionService,
private paramShareService: ParamShareService,
private mappingEditorService: MappingEditorService,
@@ -126,26 +122,33 @@ export class ParameterComponent implements OnInit {
}
ngOnInit() {
- var methName= "ngOnInit";
- this.selectedActionReference = this.mappingEditorService.newObject;
+ this.selectedActionReference = this.parameterDefinitionService.prepareFileName();
if (this.selectedActionReference && this.selectedActionReference != undefined) {
- this.vnfType = this.selectedActionReference.vnf;
- this.protocol = this.selectedActionReference.protocol;
- this.action = this.selectedActionReference.action;
- if( this.utilService.getTracelvl() > 0 )
- console.log( this.clName+": "+methName+": vnfType:["+this.vnfType+
- "] action:["+this.action+"] protocol:["+this.protocol+"]");
- if(this.selectedActionReference.vnfc) {
- this.vnfcType = this.selectedActionReference.vnfc;
- if( this.utilService.getTracelvl() > 0 )
- console.log( this.clName+": "+methName+": have vnfcType:["+
- this.vnfcType+"]");
- }
- if( this.action === 'ConfigScaleOut'){
- // this.template_id = this.selectedActionReference.templateId;
- this.template_id = this.mappingEditorService.identifier;
+
+ this.vnfType = this.selectedActionReference.scope['vnf-type'];
+ this.vnfcType = this.selectedActionReference.scope['vnfc-type'];
+ this.protocol = this.selectedActionReference['device-protocol'];
+ this.action = this.selectedActionReference.action;
+
+ for (let i = 0; i < this.selectedActionReference['artifact-list'].length; i++) {
+ let artifactList = this.selectedActionReference['artifact-list'];
+ if (artifactList[i]['artifact-type'] === 'parameter_definitions') {
+ var artifactName = artifactList[i]['artifact-name'];
+ var artifactNameWithoutExtension = '';
+ if (artifactName) {
+ artifactNameWithoutExtension = artifactName.substring(0, artifactName.lastIndexOf("."));
+ }
+ if (this.mappingEditorService.identifier) {
+ if (artifactNameWithoutExtension.endsWith(this.mappingEditorService.identifier)) {
+ this.artifact_fileName = artifactName;
+ }
+
+ }
+ else {
+ this.artifact_fileName = artifactName;
+ }
+ }
}
- this.artifact_fileName = this.selectedActionReference.pd_artifact;
this.parameterDefinitionService.setValues(this.vnfType, this.vnfcType, this.protocol, this.action, this.artifact_fileName);
}
else {
@@ -162,26 +165,22 @@ export class ParameterComponent implements OnInit {
'scopeType': ''
};
}
- //let path = this.location.path
- /* this.activeRoutes.url.subscribe(UrlSegment => {
- this.actionType = UrlSegment[0].path
- })
- */
+
+ this.template_id = this.mappingEditorService.identifier;
}
ngAfterViewInit() {
- if( this.mappingEditorService.latestAction) {
+ if (this.mappingEditorService.latestAction) {
this.displayParamObjects = [];
this.modelParamDefinitionObjects = [];
- this.displayParamObjects= this.paramShareService.getSessionParamData();
- // if( this.paramShareService.getSessionParamData() != undefined &&
- // this.paramShareService.getSessionParamData().length > 0)
- if( this.displayParamObjects != undefined &&
- this.displayParamObjects.length > 0 )
- {
- this.parameterDefinitionService.populateDataUponSource( this.displayParamObjects);
+ if (this.paramShareService.getSessionParamData() != undefined && this.paramShareService.getSessionParamData().length > 0) {
+ this.getPDFromSession();
} else {
- this.getPD();
+ this.ngProgress.start();
+ this.getPD();
+ setTimeout(() => {
+ this.ngProgress.done();
+ }, 3500);
}
} else {
this.nService.error(appConstants.errors.error, appConstants.errors["noAction&VNFTypeInRDscreenError"]);
@@ -192,20 +191,19 @@ export class ParameterComponent implements OnInit {
public getPD() {
let result: any;
- let input=
- this.utilService.createPayloadForRetrieve( false, this.action, this.vnfType,this.artifact_fileName);
+ let input=this.utilService.createPayloadForRetrieve(false, this.action, this.vnfType,this.artifact_fileName);
let artifactContent: any;
- this.ngProgress.start();
- return this.apiService.callGetArtifactsApi(input).subscribe( data => {
- if( this.utilService.checkResult(data)) {
- let result: any = JSON.parse(data.output.data.block).artifactInfo[0];
+ return this.httpService.post({
+ url: environment.getDesigns,
+ data: input
+ }).subscribe(data => {
+ if (this.utilService.checkResult(data)) {
+ let result: any = JSON.parse(data.output.data.block).artifactInfo[0];
var pdObject = YAML.parse(result['artifact-content']);
let fileModel = pdObject['vnf-parameter-list'];
this.displayParamObjects = this.parameterDefinitionService.populatePD(fileModel);
}
- else {
- }
- this.ngProgress.done();
+
},
error => this.nService.error(appConstants.errors.error, appConstants.errors.connectionError));
@@ -214,19 +212,20 @@ export class ParameterComponent implements OnInit {
public getPDFromSession() {
- this.ngProgress.start();
+ this.ngProgress.start();
return this.httpService.get({
url: 'testurl',
- }).subscribe( data => {
- this.displayParamObjects = this.paramShareService.getSessionParamData();
- this.ngProgress.done();
+ }).subscribe(data => {
+ this.displayParamObjects = this.paramShareService.getSessionParamData();
+ this.ngProgress.done();
},
- error => {
- this.displayParamObjects = this.paramShareService.getSessionParamData();
- this.ngProgress.done();
- });
+ error => {
+ this.displayParamObjects = this.paramShareService.getSessionParamData();
+ this.ngProgress.done();
+ });
}
+ //========================== End of NGInit() Method============================================
selectedNavItem(item: any) {
this.item = item;
}
@@ -267,10 +266,6 @@ export class ParameterComponent implements OnInit {
// Create the file reader
let reader = new FileReader();
this.readFile(input.files[0], reader, (result) => {
- if ('keyfile' === uploadType) {
- this.myKeyFileName = input.files[0].name;
- this.displayParamObjects = this.parameterDefinitionService.processKeyFile(this.myKeyFileName, result);
- }
if ('pdfile' === uploadType) {
this.myPdFileName = input.files[0].name;
this.displayParamObjects = this.parameterDefinitionService.processPDfile(this.myPdFileName, result);
@@ -299,7 +294,8 @@ export class ParameterComponent implements OnInit {
let obj: any = fileInput.target.files;
}
- sourceChanged( data, obj) {
+
+ sourceChanged(data, obj) {
if (data == 'A&AI') {
obj.ruleTypeValues = appConstants.ruleTypeValues;
for (let x = 0; x < 5; x++) {
@@ -321,7 +317,7 @@ export class ParameterComponent implements OnInit {
}
//========================== End of sourceChanged() Method============================================
- ruleTypeChanged( data, obj) {
+ ruleTypeChanged(data, obj) {
if (data == null || data == undefined || data == 'null') {
obj.showFilterFields = false;
obj['rule-type'] = null;
@@ -344,7 +340,7 @@ export class ParameterComponent implements OnInit {
}
for (let x = 0; x < sourceObject.length; x++) {
obj['response-keys'][x]['key-name'] = sourceObject[x]['key-name'];
- obj['response-keys'][x]['key-value'] = sourceObject[x]['key-value'];
+ obj['response-keys'][x]['key-value'] = sourceObject[x]['key-value'];
}
}