diff options
Diffstat (limited to 'catalog-ui/src/app/ng2/services')
-rw-r--r-- | catalog-ui/src/app/ng2/services/component-services/component.service.ts | 44 | ||||
-rw-r--r-- | catalog-ui/src/app/ng2/services/responses/component-generic-response.ts | 6 |
2 files changed, 48 insertions, 2 deletions
diff --git a/catalog-ui/src/app/ng2/services/component-services/component.service.ts b/catalog-ui/src/app/ng2/services/component-services/component.service.ts index 9c3f78a444..381995d91c 100644 --- a/catalog-ui/src/app/ng2/services/component-services/component.service.ts +++ b/catalog-ui/src/app/ng2/services/component-services/component.service.ts @@ -24,7 +24,7 @@ import {Observable} from 'rxjs/Observable'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/toPromise'; import {Response, URLSearchParams} from '@angular/http'; -import { Component, InputBEModel, InstancePropertiesAPIMap, FilterPropertiesAssignmentData} from "app/models"; +import { Component, InputBEModel, InstancePropertiesAPIMap, FilterPropertiesAssignmentData, OperationModel, CreateOperationResponse} from "app/models"; import {COMPONENT_FIELDS} from "app/utils"; import {ComponentGenericResponse} from "../responses/component-generic-response"; import {InstanceBePropertiesMap} from "../../../models/properties-inputs/property-fe-map"; @@ -114,6 +114,48 @@ export class ComponentServiceNg2 { return this.getComponentDataByFieldsName(component.componentType, component.uniqueId, [COMPONENT_FIELDS.COMPONENT_PROPERTIES]); } + getInterfaceOperations(component:Component):Observable<ComponentGenericResponse> { + return this.getComponentDataByFieldsName(component.componentType, component.uniqueId, [COMPONENT_FIELDS.COMPONENT_INTERFACE_OPERATIONS]); + } + + getInterfaceOperation(component:Component, operation:OperationModel):Observable<OperationModel> { + return this.http.get(this.baseUrl + component.getTypeUrl() + component.uniqueId + '/interfaceOperations/' + operation.uniqueId) + .map((res:Response) => { + return res.json(); + }); + } + + createInterfaceOperation(component:Component, operation:OperationModel):Observable<CreateOperationResponse> { + const operationList = { + 'interfaceOperations': { + [operation.operationType]: operation + } + }; + return this.http.post(this.baseUrl + component.getTypeUrl() + component.uniqueId + '/interfaceOperations', operationList) + .map((res:Response) => { + return res.json(); + }); + } + + updateInterfaceOperation(component:Component, operation:OperationModel):Observable<CreateOperationResponse> { + const operationList = { + 'interfaceOperations': { + [operation.operationType]: operation + } + }; + return this.http.put(this.baseUrl + component.getTypeUrl() + component.uniqueId + '/interfaceOperations', operationList) + .map((res:Response) => { + return res.json(); + }); + } + + deleteInterfaceOperation(component:Component, operation:OperationModel):Observable<OperationModel> { + return this.http.delete(this.baseUrl + component.getTypeUrl() + component.uniqueId + '/interfaceOperations/' + operation.uniqueId) + .map((res:Response) => { + return res.json(); + }); + } + getCapabilitiesAndRequirements(componentType: string, componentId:string):Observable<ComponentGenericResponse> { return this.getComponentDataByFieldsName(componentType, componentId, [COMPONENT_FIELDS.COMPONENT_REQUIREMENTS, COMPONENT_FIELDS.COMPONENT_CAPABILITIES]); } diff --git a/catalog-ui/src/app/ng2/services/responses/component-generic-response.ts b/catalog-ui/src/app/ng2/services/responses/component-generic-response.ts index e7c88a0ab8..5036a10a9d 100644 --- a/catalog-ui/src/app/ng2/services/responses/component-generic-response.ts +++ b/catalog-ui/src/app/ng2/services/responses/component-generic-response.ts @@ -22,7 +22,7 @@ * Created by ob0695 on 4/18/2017. */ -import { ArtifactGroupModel, PropertyModel, PropertiesGroup, AttributeModel, AttributesGroup, ComponentInstance, +import { ArtifactGroupModel, PropertyModel, PropertiesGroup, AttributeModel, AttributesGroup, ComponentInstance, OperationModel, InputBEModel, Module, ComponentMetadata, RelationshipModel, RequirementsGroup, CapabilitiesGroup,InputFEModel} from "app/models"; import {CommonUtils} from "app/utils"; import {Serializable} from "../utils/serializable"; @@ -47,6 +47,7 @@ export class ComponentGenericResponse implements Serializable<ComponentGenericR public policies:Array<PolicyInstance>; public groups:Array<Module>; public interfaces:any; + public interfaceOperations:Array<OperationModel>; public additionalInformation:any; public derivedList:Array<any>; @@ -88,6 +89,9 @@ export class ComponentGenericResponse implements Serializable<ComponentGenericR if(response.toscaArtifacts) { this.toscaArtifacts = new ArtifactGroupModel(response.toscaArtifacts); } + if(response.interfaces) { + this.interfaceOperations = CommonUtils.initInterfaceOperations(response.interfaces); + } if(response.metadata) { this.metadata = new ComponentMetadata().deserialize(response.metadata); } |