diff --git a/is-monitor-frontend/src/app/is-model/types/TypeDefinition.ts b/is-monitor-frontend/src/app/is-model/types/TypeDefinition.ts index 579a724..1043e59 100644 --- a/is-monitor-frontend/src/app/is-model/types/TypeDefinition.ts +++ b/is-monitor-frontend/src/app/is-model/types/TypeDefinition.ts @@ -4,6 +4,6 @@ export interface TypeDefinition { name: string; description: string | null; abstract: boolean; - superClasses?: Set; + superClasses?: Array; properties?: Array; } diff --git a/is-monitor-frontend/src/app/list.ts b/is-monitor-frontend/src/app/list.ts deleted file mode 100644 index f7d97d8..0000000 --- a/is-monitor-frontend/src/app/list.ts +++ /dev/null @@ -1,88 +0,0 @@ -import { Facet } from './is-model/reference/entities/Facet'; - -export const list: Array = [ - { - '@class': 'SoftwareFacet', - header: { - '@class': 'Header', - uuid: 'f0460614-9ffb-4ecd-bf52-d91e8d81d604', - creator: 'luca.frosini', - modifiedBy: 'luca.frosini', - creationTime: '2109-06-29 12:00:00.000 CEST', - lastUpdateTime: '2109-06-29 12:00:00.000 CEST' - }, - group: 'vre-management', - name: 'whn-manager', - version: '1.3.0' - }, - { - '@class': 'SoftwareFacet', - header: { - '@class': 'Header', - uuid: 'f0460614-9ffb-4ecd-bf52-d91e8d81d604', - creator: 'luca.frosini', - modifiedBy: 'luca.frosini', - creationTime: '2109-06-29 12:00:00.000 CEST', - lastUpdateTime: '2109-06-29 12:00:00.000 CEST' - }, - group: 'vre-management', - name: 'smart-executor', - version: '2.0.0' - }, - { - '@class': 'SoftwareFacet', - header: { - '@class': 'Header', - uuid: 'f0460614-9ffb-4ecd-bf52-d91e8d81d604', - creator: 'luca.frosini', - modifiedBy: 'luca.frosini', - creationTime: '2109-06-29 12:00:00.000 CEST', - lastUpdateTime: '2109-06-29 12:00:00.000 CEST' - }, - group: 'information-system', - name: 'resource-registry', - version: '2.1.0' - }, - { - '@class': 'SoftwareFacet', - header: { - '@class': 'Header', - uuid: 'f0460614-9ffb-4ecd-bf52-d91e8d81d604', - creator: 'luca.frosini', - modifiedBy: 'luca.frosini', - creationTime: '2109-06-29 12:00:00.000 CEST', - lastUpdateTime: '2109-06-29 12:00:00.000 CEST' - }, - group: 'data-publishing', - name: 'gcat', - version: '2.3.0' - }, - { - '@class': 'SoftwareFacet', - header: { - '@class': 'Header', - uuid: 'f0460614-9ffb-4ecd-bf52-d91e8d81d604', - creator: 'luca.frosini', - modifiedBy: 'luca.frosini', - creationTime: '2109-06-29 12:00:00.000 CEST', - lastUpdateTime: '2109-06-29 12:00:00.000 CEST' - }, - group: 'vre-management', - name: 'whn-manager', - version: '1.3.0' - }, - { - '@class': 'SoftwareFacet', - header: { - '@class': 'Header', - uuid: 'f0460614-9ffb-4ecd-bf52-d91e8d81d604', - creator: 'luca.frosini', - modifiedBy: 'luca.frosini', - creationTime: '2109-06-29 12:00:00.000 CEST', - lastUpdateTime: '2109-06-29 12:00:00.000 CEST' - }, - group: 'vre-management', - name: 'whn-manager', - version: '1.3.0' - } -]; diff --git a/is-monitor-frontend/src/app/resource-list/resource-list.component.html b/is-monitor-frontend/src/app/resource-list/resource-list.component.html index ec6349c..6b0e18f 100644 --- a/is-monitor-frontend/src/app/resource-list/resource-list.component.html +++ b/is-monitor-frontend/src/app/resource-list/resource-list.component.html @@ -1,44 +1,23 @@
- +
- + - - - - - - - - -
Resources identifyed by {{resourceIdentification.type}}Resources identified by {{resources.get(key).type}}
- {{ property.charAt(0).toLocaleUpperCase() + property.substr(1) }} -
{{ facet[property] }}
- - - - - - - - - - + - - - - + + + +
Resources identifyed by {{resourceIdentification.type}}
UUID Resource Type + UUID {{ property.charAt(0).toLocaleUpperCase() + property.substr(1) }}
{{ resource.header.uuid }}{{ resource['@class'] }}{{ resource.consistsOf[0].target[property] }}
{{ r['@class'] }}{{ r.header.uuid }}{{ r.consistsOf[0].target[property] }}
- -
\ No newline at end of file diff --git a/is-monitor-frontend/src/app/resource-list/resource-list.component.ts b/is-monitor-frontend/src/app/resource-list/resource-list.component.ts index 1c82536..12502c8 100644 --- a/is-monitor-frontend/src/app/resource-list/resource-list.component.ts +++ b/is-monitor-frontend/src/app/resource-list/resource-list.component.ts @@ -1,7 +1,6 @@ import { Component, OnInit } from '@angular/core'; import { IsService } from '../is.service'; import { ResourceIdentification, TYPE_PROPERTY_KEY } from './resourceidentification'; -import { Facet } from '../is-model/reference/entities/Facet'; import { Resource } from '../is-model/reference/entities/Resource'; @Component({ @@ -11,42 +10,12 @@ import { Resource } from '../is-model/reference/entities/Resource'; }) export class ResourceListComponent implements OnInit { - public resourceIdentificationList: Array; - - public resourcesByIdentificationFacets: Map; + public resources: Map; constructor(private isService: IsService) { } ngOnInit() { - // this.isService.getIdentifyingFacets('Service', facets => {this.identifyingFacets = facets;}); - this.isService.getIdentifyingFacets('Service', facets => { this.resourceIdentificationList = this.analyseIdentifyingFacets(facets); }); - - this.isService.getResourceInstances('Service', resources => { - this.resourcesByIdentificationFacets = this.analyseResources(resources); - }); - } - - analyseIdentifyingFacets(identifyingFacets: Facet[]): Array { - - const map = new Map(); - const facets = new Array(); - - for (const facet of identifyingFacets) { - - const facetType: string = facet[TYPE_PROPERTY_KEY]; - let facetList: ResourceIdentification; - - if (map.has(facetType)) { - facetList = map.get(facetType); - } else { - facetList = new ResourceIdentification(facetType); - map.set(facetType, facetList); - facets.push(facetList); - } - facetList.addFacet(facet); - } - - return facets; + this.isService.getResourceInstances('Service', res => { this.resources = this.analyseResources(res); }); } analyseResources(resources: Resource[]): Map { @@ -68,6 +37,7 @@ export class ResourceListComponent implements OnInit { } return map; + } } diff --git a/is-monitor-frontend/src/app/resource-list/resourceidentification.ts b/is-monitor-frontend/src/app/resource-list/resourceidentification.ts index 3078602..e5a7ed5 100644 --- a/is-monitor-frontend/src/app/resource-list/resourceidentification.ts +++ b/is-monitor-frontend/src/app/resource-list/resourceidentification.ts @@ -1,5 +1,4 @@ import { Resource } from '../is-model/reference/entities/Resource'; -import { Facet } from '../is-model/reference/entities/Facet'; export const TYPE_PROPERTY_KEY = '@class'; export const HEADER_PROPERTY_KEY = 'header'; @@ -8,9 +7,6 @@ export class ResourceIdentification { public type: string; public mandatoryProperties: Set; - - public instances: Array; - public resources: Array; private first = true; @@ -18,23 +14,7 @@ export class ResourceIdentification { constructor(type: string) { this.type = type; this.mandatoryProperties = new Set(); - this.instances = new Array(); - } - - public addFacet(facet: Facet) { - if (this.first) { - for (const propertyKey in facet) { - if (propertyKey.localeCompare(TYPE_PROPERTY_KEY) === 0) { - continue; - } - if (propertyKey.localeCompare(HEADER_PROPERTY_KEY) === 0) { - continue; - } - this.mandatoryProperties.add(propertyKey); - } - this.first = false; - } - this.instances.push(facet); + this.resources = new Array(); } public addResource(resource: Resource) { diff --git a/is-monitor-frontend/src/app/types.ts b/is-monitor-frontend/src/app/types.ts index 5228884..afb07ce 100644 --- a/is-monitor-frontend/src/app/types.ts +++ b/is-monitor-frontend/src/app/types.ts @@ -1,166 +1,166 @@ -import { TypeDefinition } from './ISType'; +import { TypeDefinition } from './is-model/types/TypeDefinition'; export const types: TypeDefinition[] = [ { - "name": "Resource", - "description": null, - "superClasses": [ - "Entity" + name: 'Resource', + description: null, + superClasses: [ + 'Entity' ], - "properties": [], - "abstract": true + properties: [], + abstract: true }, { - "name": "Service", - "description": null, - "superClasses": [ - "Resource" + name: 'Service', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": true + properties: [], + abstract: true }, { - "name": "ConfigurationTemplate", - "description": null, - "superClasses": [ - "Resource" + name: 'ConfigurationTemplate', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Dataset", - "description": null, - "superClasses": [ - "Resource" + name: 'Dataset', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "ConcreteDataset", - "description": null, - "superClasses": [ - "Dataset" + name: 'ConcreteDataset', + description: null, + superClasses: [ + 'Dataset' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "HostingNode", - "description": null, - "superClasses": [ - "Service" + name: 'HostingNode', + description: null, + superClasses: [ + 'Service' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "VirtualService", - "description": null, - "superClasses": [ - "Service" + name: 'VirtualService', + description: null, + superClasses: [ + 'Service' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "EService", - "description": null, - "superClasses": [ - "Service" + name: 'EService', + description: null, + superClasses: [ + 'Service' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "RunningPlugin", - "description": null, - "superClasses": [ - "EService" + name: 'RunningPlugin', + description: null, + superClasses: [ + 'EService' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Software", - "description": null, - "superClasses": [ - "Resource" + name: 'Software', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Schema", - "description": null, - "superClasses": [ - "Resource" + name: 'Schema', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Configuration", - "description": null, - "superClasses": [ - "ConfigurationTemplate" + name: 'Configuration', + description: null, + superClasses: [ + 'ConfigurationTemplate' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "LegalBody", - "description": null, - "superClasses": [ - "Actor" + name: 'LegalBody', + description: null, + superClasses: [ + 'Actor' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "VirtualMachine", - "description": null, - "superClasses": [ - "Service" + name: 'VirtualMachine', + description: null, + superClasses: [ + 'Service' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Site", - "description": null, - "superClasses": [ - "Resource" + name: 'Site', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Person", - "description": null, - "superClasses": [ - "Actor" + name: 'Person', + description: null, + superClasses: [ + 'Actor' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Plugin", - "description": null, - "superClasses": [ - "Software" + name: 'Plugin', + description: null, + superClasses: [ + 'Software' ], - "properties": [], - "abstract": false + properties: [], + abstract: false }, { - "name": "Actor", - "description": null, - "superClasses": [ - "Resource" + name: 'Actor', + description: null, + superClasses: [ + 'Resource' ], - "properties": [], - "abstract": true + properties: [], + abstract: true } -]; \ No newline at end of file +];