From 16a9fce0e104a38371a9e5a567ec611ae3fc7f33 Mon Sep 17 00:00:00 2001 From: ys9693 Date: Sun, 19 Jan 2020 13:50:02 +0200 Subject: Catalog alignment Issue-ID: SDC-2724 Signed-off-by: ys9693 Change-Id: I52b4aacb58cbd432ca0e1ff7ff1f7dd52099c6fe --- catalog-ui/src/app/models/operation.ts | 60 +++++++++++++++++++++++++++++----- 1 file changed, 52 insertions(+), 8 deletions(-) (limited to 'catalog-ui/src/app/models/operation.ts') diff --git a/catalog-ui/src/app/models/operation.ts b/catalog-ui/src/app/models/operation.ts index bf037729e4..30095b92ef 100644 --- a/catalog-ui/src/app/models/operation.ts +++ b/catalog-ui/src/app/models/operation.ts @@ -2,16 +2,20 @@ export class OperationParameter { name: string; - type: String; - inputId: string; - required: boolean; + type: string; + inputId?: string; + required?: boolean; + property?: string; + mandatory?: boolean; constructor(param?: any) { if (param) { this.name = param.name; this.type = param.type; - this.inputId = param.inputId; + this.inputId = param.inputId ; this.required = param.required; + this.property = param.property; + this.mandatory = param.mandatory; } } } @@ -76,17 +80,41 @@ export class BEOperationModel { } } -export class OperationModel extends BEOperationModel { +export class OperationModel extends BEOperationModel{ interfaceType: string; interfaceId: string; - artifactFileName: string; - artifactData: any; + operationType: string; + description: string; + uniqueId: string; + artifactFileName?: string; + artifactData?: any; + + inputParams: IOperationParamsList; + outputParams: IOperationParamsList; + + workflowId: string; + workflowVersionId: string; + + protected OperationTypeEnum: Array = [ + 'Create', + 'Delete', + 'Instantiate', + 'Start', + 'Stop' + ]; constructor(operation?: any) { super(operation); if (operation) { this.interfaceId = operation.interfaceId; this.interfaceType = operation.interfaceType; + this.description = operation.description; + this.inputParams = operation.inputParams; + this.operationType = operation.operationType; + this.outputParams = operation.outputParams; + this.uniqueId = operation.uniqueId; + this.workflowId = operation.workflowId; + this.workflowVersionId = operation.workflowVersionId; this.artifactFileName = operation.artifactFileName; this.artifactData = operation.artifactData; } @@ -95,6 +123,22 @@ export class OperationModel extends BEOperationModel { public displayType(): string { return displayType(this.interfaceType); } + + public createInputParamsList(inputParams: Array): void { + this.inputParams = { + listToscaDataDefinition: inputParams + }; + } + + public createOutputParamsList(outputParams: Array): void { + this.outputParams = { + listToscaDataDefinition: outputParams + }; + } +} + +export interface CreateOperationResponse extends OperationModel { + artifactUUID: string; } export class InterfaceModel { @@ -115,4 +159,4 @@ export class InterfaceModel { } } -const displayType = (type:string) => type && type.substr(type.lastIndexOf('.') + 1); +const displayType = (type:string) => type && type.substr(type.lastIndexOf('.') + 1); \ No newline at end of file -- cgit 1.2.3-korg