diff options
32 files changed, 4764 insertions, 2991 deletions
diff --git a/models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml b/models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml new file mode 100644 index 000000000..0fc677d9c --- /dev/null +++ b/models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml @@ -0,0 +1,43 @@ +policy_types: + onap.policies.controlloop.Guard: + derived_from: tosca.policies.Root + version: 1.0.0 + description: Guard Policies for Control Loop Operational Policies + onap.policies.controlloop.guard.MinMax: + derived_from: onap.policies.controlloop.Guard + version: 1.0.0 + description: Supports Min/Max number of VF Modules + properties: + minmax_policy: + type: map + description: null + entry_schema: + type: onap.datatypes.guard.MinMax +data_types: + onap.datatypes.guard.MinMax: + derived_from: tosca.datatypes.Root + properties: + actor: + type: string + description: Specifies the Actor + required: true + recipe: + type: string + description: Specified the Recipe + required: true + time_range: + type: tosca.datatypes.TimeInterval + description: An optional range of time during the day the Min/Max limit is valid for. + required: false + controlLoopName: + type: string + description: An optional specific control loop to apply this guard to. + required: false + min_vf_module_instances: + type: integer + required: true + description: The minimum instances of this VF-Module + max_vf_module_instances: + type: integer + required: false + description: The maximum instances of this VF-Module diff --git a/models-examples/src/main/resources/policytypes/onap.policies.Optimization.yaml b/models-examples/src/main/resources/policytypes/onap.policies.Optimization.yaml new file mode 100644 index 000000000..49470ba3b --- /dev/null +++ b/models-examples/src/main/resources/policytypes/onap.policies.Optimization.yaml @@ -0,0 +1,41 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +policy_types: + onap.policies.Optimization: + derived_from: tosca.policies.Root + version: 1.0.0 + description: The base policy type for all policies that govern optimization + properties: + scope: + description: Scope for the policy - could be for a specific release. + type: list + matchable: true + required: true + services: + description: One or more services that the policy applies to. + type: list + matchable: true + required: true + entry_schema: + type: string + resources: + description: One or more VNF resources that the policy applies to. + type: list + matchable: true + required: true + entry_schema: + type: string + geography: + description: One or more geographic regions + type: list + matchable: true + required: true + entry_schema: + type: string + constraints: + - valid_values: + - US + - International + identity: + description: Used internally for identification + type: string + required: true
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.Operational.yaml b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.Operational.yaml index e18c16a6d..f21fd5afb 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.Operational.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.Operational.yaml @@ -1,6 +1,6 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.controlloop.Operational: + onap.policies.controlloop.Operational: derived_from: tosca.policies.Root version: 1.0.0 description: Operational Policy for Control Loops
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.Blacklist.yaml b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.Blacklist.yaml index e09861428..91a825212 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.Blacklist.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.Blacklist.yaml @@ -1,40 +1,40 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.controlloop.Guard: - derived_from: tosca.policies.Root - version: 1.0.0 - description: Guard Policies for Control Loop Operational Policies - - onap.policies.controlloop.guard.Blacklist: - derived_from: onap.policies.controlloop.Guard - version: 1.0.0 - description: Supports blacklist of VNF's from performing control loop actions on. - properties: - blacklist_policy: - type: map - description: - entry_schema: - type: onap.datatypes.guard.Blacklist + onap.policies.controlloop.Guard: + derived_from: tosca.policies.Root + version: 1.0.0 + description: Guard Policies for Control Loop Operational Policies + onap.policies.controlloop.guard.Blacklist: + derived_from: onap.policies.controlloop.Guard + version: 1.0.0 + description: Supports blacklist of VNF's from performing control loop actions on. + properties: + blacklist_policy: + type: map + description: null + entry_schema: + type: onap.datatypes.guard.Blacklist data_types: - - onap.datatypes.guard.Blacklist: + onap.datatypes.guard.Blacklist: derived_from: tosca.datatypes.Root properties: - actor: - type: string - description: Specifies the Actor - required: true - recipe: - type: string - description: Specified the Recipe - required: true - time_range: - type: tosca.datatypes.TimeInterval - description: An optional range of time during the day the blacklist is valid for. - required: false - controlLoopName: - type: string - description: An optional specific control loop to apply this guard to. - required: false - blacklist: - type: list - description: List of VNF's - required: true
\ No newline at end of file + actor: + type: string + description: Specifies the Actor + required: true + recipe: + type: string + description: Specified the Recipe + required: true + time_range: + type: tosca.datatypes.TimeInterval + description: An optional range of time during the day the blacklist is valid for. + required: false + controlLoopName: + type: string + description: An optional specific control loop to apply this guard to. + required: false + blacklist: + type: list + description: List of VNF's + required: true
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.FrequencyLimiter.yaml b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.FrequencyLimiter.yaml index 2a7b6247f..45e5471fc 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.FrequencyLimiter.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.FrequencyLimiter.yaml @@ -1,50 +1,50 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.controlloop.Guard: + onap.policies.controlloop.Guard: derived_from: tosca.policies.Root version: 1.0.0 description: Guard Policies for Control Loop Operational Policies - - onap.policies.controlloop.guard.FrequencyLimiter: + onap.policies.controlloop.guard.FrequencyLimiter: derived_from: onap.policies.controlloop.Guard version: 1.0.0 description: Supports limiting the frequency of actions being taken by a Actor. properties: - frequency_policy: - type: map - description: - entry_schema: - type: onap.datatypes.guard.FrequencyLimiter + frequency_policy: + type: map + description: null + entry_schema: + type: onap.datatypes.guard.FrequencyLimiter data_types: - - onap.datatypes.guard.FrequencyLimiter: + onap.datatypes.guard.FrequencyLimiter: derived_from: tosca.datatypes.Root properties: - actor: - type: string - description: Specifies the Actor - required: true - recipe: - type: string - description: Specified the Recipe - required: true - time_window: - type: scalar-unit.time - description: The time window to count the actions against. - required: true - limit: - type: integer - description: The limit - required: true - constraints: - - greater_than: 0 - time_range: - type: tosca.datatypes.TimeInterval - description: An optional range of time during the day the frequency is valid for. - required: false - controlLoopName: - type: string - description: An optional specific control loop to apply this guard to. - required: false - target: - type: string - description: An optional specific VNF to apply this guard to. - required: false
\ No newline at end of file + actor: + type: string + description: Specifies the Actor + required: true + recipe: + type: string + description: Specified the Recipe + required: true + time_window: + type: scalar-unit.time + description: The time window to count the actions against. + required: true + limit: + type: integer + description: The limit + required: true + constraints: + - greater_than: 0 + time_range: + type: tosca.datatypes.TimeInterval + description: An optional range of time during the day the frequency is valid for. + required: false + controlLoopName: + type: string + description: An optional specific control loop to apply this guard to. + required: false + target: + type: string + description: An optional specific VNF to apply this guard to. + required: false
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.MinMax.yaml b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.MinMax.yaml index 0a1aa9b72..54c4204e2 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.MinMax.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.MinMax.yaml @@ -1,44 +1,44 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.controlloop.Guard: + onap.policies.controlloop.Guard: derived_from: tosca.policies.Root version: 1.0.0 description: Guard Policies for Control Loop Operational Policies - - onap.policies.controlloop.guard.MinMax: + onap.policies.controlloop.guard.MinMax: derived_from: onap.policies.controlloop.Guard version: 1.0.0 description: Supports Min/Max number of VF Modules properties: - minmax_policy: - type: map - description: - entry_schema: - type: onap.datatypes.guard.MinMax + minmax_policy: + type: map + description: null + entry_schema: + type: onap.datatypes.guard.MinMax data_types: - - onap.datatypes.guard.MinMax: + onap.datatypes.guard.MinMax: derived_from: tosca.datatypes.Root properties: - actor: - type: string - description: Specifies the Actor - required: true - recipe: - type: string - description: Specified the Recipe - required: true - time_range: - type: tosca.datatypes.TimeInterval - description: An optional range of time during the day the Min/Max limit is valid for. - required: false - controlLoopName: - type: string - description: An optional specific control loop to apply this guard to. - required: false - min_vf_module_instances: - type: integer - required: true - description: The minimum instances of this VF-Module - - max_vf_module_instances: - type: integer - required: false - description: The maximum instances of this VF-Module
\ No newline at end of file + actor: + type: string + description: Specifies the Actor + required: true + recipe: + type: string + description: Specified the Recipe + required: true + time_range: + type: tosca.datatypes.TimeInterval + description: An optional range of time during the day the Min/Max limit is valid for. + required: false + controlLoopName: + type: string + description: An optional specific control loop to apply this guard to. + required: false + min_vf_module_instances: + type: integer + required: true + description: The minimum instances of this VF-Module + max_vf_module_instances: + type: integer + required: false + description: The maximum instances of this VF-Module
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.coordination.FirstBlocksSecond.yaml b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.coordination.FirstBlocksSecond.yaml new file mode 100644 index 000000000..35a515611 --- /dev/null +++ b/models-examples/src/main/resources/policytypes/onap.policies.controlloop.guard.coordination.FirstBlocksSecond.yaml @@ -0,0 +1,23 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +policy_types: + onap.policies.controlloop.Guard: + derived_from: tosca.policies.Root + version: 1.0.0 + description: Guard Policies for Control Loop Operational Policies + onap.policies.controlloop.guard.Coordination: + derived_from: onap.policies.controlloop.Guard + version: 1.0.0 + description: Guard Policies for Control Loop Coordination + onap.policies.controlloop.guard.coordination.FirstBlocksSecond: + derived_from: onap.policies.controlloop.guard.Coordination + version: 1.0.0 + description: Supports one Control Loop blocking another + properties: + controlLoop: + type: list + description: Specific Control Loops to which to apply this guard + required: true + constraint: + length: 2 + entry_schema: + type: string
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app.yaml b/models-examples/src/main/resources/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app.yaml index 2985603af..2f5abdde3 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app.yaml @@ -1,163 +1,158 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - - onap.policies.Monitoring: - derived_from: tosca.policies.Root - description: a base policy type for all policies that governs monitoring provisioning - - - onap.policies.monitoring.cdap.tca.hi.lo.app: - derived_from: onap.policies.Monitoring - version: 1.0.0 - properties: - tca_policy: - type: map - description: TCA Policy JSON - entry_schema: - type: onap.datatypes.monitoring.tca_policy + onap.policies.Monitoring: + derived_from: tosca.policies.Root + description: a base policy type for all policies that governs monitoring provisioning + onap.policies.monitoring.cdap.tca.hi.lo.app: + derived_from: onap.policies.Monitoring + version: 1.0.0 + properties: + tca_policy: + type: map + description: TCA Policy JSON + entry_schema: + type: onap.datatypes.monitoring.tca_policy data_types: - - - onap.datatypes.monitoring.metricsPerEventName: - derived_from: tosca.datatypes.Root - properties: - controlLoopSchemaType: - type: string - required: true - description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM - constraints: - - valid_values: - - VM - - VNF - eventName: - type: string - required: true - description: Event name to which thresholds need to be applied - policyName: - type: string - required: true - description: TCA Policy Scope Name - policyScope: - type: string - required: true - description: TCA Policy Scope - policyVersion: - type: string - required: true - description: TCA Policy Scope Version - thresholds: - type: list - required: true - description: Thresholds associated with eventName - entry_schema: - type: onap.datatypes.monitoring.thresholds - - - onap.datatypes.monitoring.tca_policy: - derived_from: tosca.datatypes.Root - properties: - domain: - type: string - required: true - description: Domain name to which TCA needs to be applied - default: measurementsForVfScaling - constraints: - - equal: measurementsForVfScaling - metricsPerEventName: - type: list - required: true - description: Contains eventName and threshold details that need to be applied to given eventName - entry_schema: - type: onap.datatypes.monitoring.metricsPerEventName - - - onap.datatypes.monitoring.thresholds: - derived_from: tosca.datatypes.Root - properties: - closedLoopControlName: - type: string - required: true - description: Closed Loop Control Name associated with the threshold - closedLoopEventStatus: - type: string - required: true - description: Closed Loop Event Status of the threshold - constraints: - - valid_values: - - ONSET - - ABATED - direction: - type: string - required: true - description: Direction of the threshold - constraints: - - valid_values: - - LESS - - LESS_OR_EQUAL - - GREATER - - GREATER_OR_EQUAL - - EQUAL - fieldPath: - type: string - required: true - description: Json field Path as per CEF message which needs to be analyzed for TCA - constraints: - - valid_values: - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated - - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait - - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage - - $.event.measurementsForVfScalingFields.meanRequestLatency - - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered - - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached - - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured - - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree - - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed - - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value - severity: - type: string - required: true - description: Threshold Event Severity - constraints: - - valid_values: - - CRITICAL - - MAJOR - - MINOR - - WARNING - - NORMAL - thresholdValue: - type: integer - required: true - description: Threshold value for the field Path inside CEF message - version: - type: string - required: true - description: Version number associated with the threshold
\ No newline at end of file + onap.datatypes.monitoring.metricsPerEventName: + derived_from: tosca.datatypes.Root + properties: + controlLoopSchemaType: + type: string + required: true + description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM + constraints: + - valid_values: + - VM + - VNF + eventName: + type: string + required: true + description: Event name to which thresholds need to be applied + policyName: + type: string + required: true + description: TCA Policy Scope Name + policyScope: + type: string + required: true + description: TCA Policy Scope + policyVersion: + type: string + required: true + description: TCA Policy Scope Version + thresholds: + type: list + required: true + description: Thresholds associated with eventName + entry_schema: + type: onap.datatypes.monitoring.thresholds + onap.datatypes.monitoring.tca_policy: + derived_from: tosca.datatypes.Root + properties: + domain: + type: string + required: true + description: Domain name to which TCA needs to be applied + default: measurementsForVfScaling + constraints: + - equal: measurementsForVfScaling + metricsPerEventName: + type: list + required: true + description: Contains eventName and threshold details that need to be applied to given eventName + entry_schema: + type: onap.datatypes.monitoring.metricsPerEventName + onap.datatypes.monitoring.thresholds: + derived_from: tosca.datatypes.Root + properties: + closedLoopControlName: + type: string + required: true + description: Closed Loop Control Name associated with the threshold + closedLoopEventStatus: + type: string + required: true + description: Closed Loop Event Status of the threshold + constraints: + - valid_values: + - ONSET + - ABATED + direction: + type: string + required: true + description: Direction of the threshold + constraints: + - valid_values: + - LESS + - LESS_OR_EQUAL + - GREATER + - GREATER_OR_EQUAL + - EQUAL + fieldPath: + type: string + required: true + description: Json field Path as per CEF message which needs to be analyzed for TCA + constraints: + - valid_values: + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated + - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait + - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage + - $.event.measurementsForVfScalingFields.meanRequestLatency + - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered + - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached + - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured + - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree + - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed + - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value + severity: + type: string + required: true + description: Threshold Event Severity + constraints: + - valid_values: + - CRITICAL + - MAJOR + - MINOR + - WARNING + - NORMAL + thresholdValue: + type: integer + required: true + description: Threshold value for the field Path inside CEF message + version: + type: string + required: true + description: Version number associated with the threshold
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml b/models-examples/src/main/resources/policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml index 63796fa3f..cf70e9bb2 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml @@ -1,18 +1,16 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - - onap.policies.Monitoring: - derived_from: tosca.policies.Root - description: a base policy type for all policies that govern monitoring provision - version: 1.0.0 - - - onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server: - derived_from: policy.nodes.Root - version: 1.0.0 - properties: - buscontroller_feed_publishing_endpoint: - type: string - description: DMAAP Bus Controller feed endpoint - datafile.policy: - type: string - description: datafile Policy JSON as string
\ No newline at end of file + onap.policies.Monitoring: + derived_from: tosca.policies.Root + description: a base policy type for all policies that govern monitoring provision + version: 1.0.0 + onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server: + derived_from: policy.nodes.Root + version: 1.0.0 + properties: + buscontroller_feed_publishing_endpoint: + type: string + description: DMAAP Bus Controller feed endpoint + datafile.policy: + type: string + description: datafile Policy JSON as string
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.AffinityPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.AffinityPolicy.yaml index 1dcc5af86..ce2538c66 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.AffinityPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.AffinityPolicy.yaml @@ -1,63 +1,30 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.AffinityPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - zone - identity: - type: string - required: true - applicableResources: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - any - - all - affinityProperties: - type: policy.data.affinityProperties_properties - required: true - resources: - type: list - required: true - entry_schema: - type: string + onap.policies.optimization.AffinityPolicy: + derived_from: onap.policies.Optimization + properties: + applicableResources: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - any + - all + affinityProperties: + type: policy.data.affinityProperties_properties + required: true data_types: - - - policy.data.affinityProperties_properties: - derived_from: tosca.nodes.Root - properties: - qualifier: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - same - - different - category: - type: string - required: true + policy.data.affinityProperties_properties: + derived_from: tosca.nodes.Root + properties: + qualifier: + type: string + constraints: + - valid_values: + - same + - different + category: + type: string + required: true
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.DistancePolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.DistancePolicy.yaml index 458d152e0..4137fc7eb 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.DistancePolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.DistancePolicy.yaml @@ -1,83 +1,55 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.DistancePolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - distance_to_location - identity: - type: string - required: true - resources: - type: list - required: true - entry_schema: - type: string - applicableResources: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - any - - all - distanceProperties: - type: policy.data.distanceProperties_properties - required: true + onap.policies.optimization.DistancePolicy: + derived_from: onap.policies.Optimization + properties: + applicableResources: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - any + - all + distanceProperties: + type: policy.data.distanceProperties_properties + required: true data_types: - - - policy.data.distanceProperties_properties: - derived_from: tosca.nodes.Root - properties: - locationInfo: - type: string - required: true - distance: - type: policy.data.distance_properties - required: true - policy.data.distance_properties: - derived_from: tosca.nodes.Root - properties: - value: - type: string - required: true - operator: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - < - - <= - - '>' - - '>=' - - '=' - unit: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - km + policy.data.distanceProperties_properties: + derived_from: tosca.nodes.Root + properties: + locationInfo: + type: string + required: true + distance: + type: policy.data.distance_properties + required: true + entry_schema: + type: policy.data.distance_properties + policy.data.distance_properties: + derived_from: tosca.nodes.Root + properties: + value: + type: string + required: true + operator: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - < + - <= + - '>' + - '>=' + - = + unit: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - km
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.HpaPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.HpaPolicy.yaml index be4110517..62bc4afca 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.HpaPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.HpaPolicy.yaml @@ -1,136 +1,102 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.HpaPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - hpa - resources: - type: list - required: true - entry_schema: - type: string - identity: - type: string - required: true - flavorFeatures: - type: list - required: true - entry_schema: - type: policy.data.flavorFeatures_properties + onap.policies.optimization.HpaPolicy: + derived_from: onap.policies.Optimization + properties: + flavorFeatures: + type: list + required: true + entry_schema: + type: policy.data.flavorFeatures_properties data_types: - - - policy.data.flavorFeatures_properties: - derived_from: tosca.nodes.Root - properties: - id: - type: string - required: true - type: - type: string - required: true - directives: - type: list - required: true - entry_schema: - type: policy.data.directives_properties - flavorProperties: - type: list - required: true - entry_schema: - type: policy.data.flavorProperties_properties - - - policy.data.directives_properties: - derived_from: tosca.nodes.Root - properties: - type: - type: string - attributes: - type: list - entry_schema: - type: policy.data.directives_attributes_properties - - - policy.data.directives_attributes_properties: - derived_from: tosca.nodes.Root - properties: - attribute_name: - type: string - attribute_value: - type: string - - - policy.data.flavorProperties_properties: - derived_from: tosca.nodes.Root - properties: - hpa-feature: - type: string - required: true - mandatory: - type: string - required: true - score: - type: string - required: false - architecture: - type: string - required: true - hpa-version: - type: string - required: true - directives: - type: list - required: true - entry_schema: - type: policy.data.directives_properties - hpa-feature-attributes: - type: list - required: true - entry_schema: - type: policy.data.hpa-feature-attributes_properties - - - policy.data.hpa-feature-attributes_properties: - derived_from: tosca.nodes.Root - properties: - hpa-attribute-key: - type: string - required: true - hpa-attribute-value: - type: string - required: true - operator: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - < - - <= - - '>' - - '>=' - - '=' - - '!=' - - any - - all - - subset - unit: - type: string - required: false + policy.data.flavorFeatures_properties: + derived_from: tosca.nodes.Root + properties: + id: + type: string + required: true + type: + type: string + required: true + directives: + type: list + required: true + entry_schema: + type: policy.data.directives_properties + flavorProperties: + type: list + required: true + entry_schema: + type: policy.data.flavorProperties_properties + policy.data.directives_properties: + derived_from: tosca.nodes.Root + properties: + type: + type: string + attributes: + type: list + entry_schema: + type: policy.data.directives_attributes_properties + policy.data.directives_attributes_properties: + derived_from: tosca.nodes.Root + properties: + attribute_name: + type: string + attribute_value: + type: string + policy.data.flavorProperties_properties: + derived_from: tosca.nodes.Root + properties: + hpa-feature: + type: string + required: true + mandatory: + type: string + required: true + score: + type: string + required: false + architecture: + type: string + required: true + hpa-version: + type: string + required: true + directives: + type: list + required: true + entry_schema: + type: policy.data.directives_properties + hpa-feature-attributes: + type: list + required: true + entry_schema: + type: policy.data.hpa-feature-attributes_properties + policy.data.hpa-feature-attributes_properties: + derived_from: tosca.nodes.Root + properties: + hpa-attribute-key: + type: string + required: true + hpa-attribute-value: + type: string + required: true + operator: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - < + - <= + - '>' + - '>=' + - = + - '!=' + - any + - all + - subset + unit: + type: string + required: false
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.OptimizationPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.OptimizationPolicy.yaml index 267109861..f8652dda5 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.OptimizationPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.OptimizationPolicy.yaml @@ -1,90 +1,65 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.OptimizationPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - placement_optimization - identity: - type: string - required: true - objective: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - minimize - - maximize - objectiveParameter: - type: policy.data.objectiveParameter_properties - required: true + onap.policies.optimization.OptimizationPolicy: + derived_from: onap.policies.Optimization + properties: + objective: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - minimize + - maximize + objectiveParameter: + type: policy.data.objectiveParameter_properties + required: true data_types: - - - policy.data.objectiveParameter_properties: - derived_from: tosca.nodes.Root - properties: - parameterAttributes: - type: list - required: true - entry_schema: - type: policy.data.parameterAttributes_properties - operator: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - '*' - - + - - '-' - - / - - '%' - policy.data.parameterAttributes_properties: - derived_from: tosca.nodes.Root - properties: - resources: - type: string - required: true - customerLocationInfo: - type: string - required: true - parameter: - type: string - required: true - weight: - type: string - required: true - operator: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - '*' - - + - - '-' - - / - - '%' + policy.data.objectiveParameter_properties: + derived_from: tosca.nodes.Root + properties: + parameterAttributes: + type: list + required: true + entry_schema: + type: policy.data.parameterAttributes_properties + operator: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - '*' + - + + - '-' + - / + - '%' + policy.data.parameterAttributes_properties: + derived_from: tosca.nodes.Root + properties: + resources: + type: string + required: true + customerLocationInfo: + type: string + required: true + parameter: + type: string + required: true + weight: + type: string + required: true + operator: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - '*' + - + + - '-' + - / + - '%'
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.PciPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.PciPolicy.yaml index ba4dbec37..5efb8f218 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.PciPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.PciPolicy.yaml @@ -1,59 +1,29 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.PciPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - pciPolicy - identity: - type: string - required: true - resources: - type: list - required: true - entry_schema: - type: string - pciProperties: - type: list - required: false - entry_schema: - type: policy.data.pciProperties_properties + onap.policies.optimization.PciPolicy: + derived_from: onap.policies.Optimization + properties: + pciProperties: + type: list + required: false + entry_schema: + type: policy.data.pciProperties_properties data_types: - - - policy.data.pciProperties_properties: - derived_from: tosca.nodes.Root - properties: - algoCategory: - type: string - required: false - pciOptmizationAlgoName: - type: string - required: false - pciOptimizationNwConstraint: - type: string - required: false - pciOptimizationPriority: - type: string - required: false - pciOptimizationTimeConstraint: - type: string - required: false + policy.data.pciProperties_properties: + derived_from: tosca.nodes.Root + properties: + algoCategory: + type: string + required: false + pciOptmizationAlgoName: + type: string + required: false + pciOptimizationNwConstraint: + type: string + required: false + pciOptimizationPriority: + type: string + required: false + pciOptimizationTimeConstraint: + type: string + required: false
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.QueryPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.QueryPolicy.yaml index 82cd60a46..778d24b37 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.QueryPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.QueryPolicy.yaml @@ -1,48 +1,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.QueryPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - request_param_query - identity: - type: string - required: true - queryProperties: - type: list - required: true - entry_schema: - type: policy.data.queryProperties_properties + onap.policies.optimization.QueryPolicy: + derived_from: onap.policies.Optimization + properties: + queryProperties: + type: list + required: true + entry_schema: + type: policy.data.queryProperties_properties data_types: - - - policy.data.queryProperties_properties: - derived_from: tosca.nodes.Root - properties: - attribute: - type: string - required: true - value: - type: string - required: true - attribute_location: - type: string - required: true + policy.data.queryProperties_properties: + derived_from: tosca.nodes.Root + properties: + attribute: + type: string + required: true + value: + type: string + required: true + attribute_location: + type: string + required: true
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.SubscriberPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.SubscriberPolicy.yaml index ab006fa57..e821aae83 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.SubscriberPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.SubscriberPolicy.yaml @@ -1,52 +1,27 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.SubscriberPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - subscriberPolicy - identity: - type: string - required: true - properties: - type: policy.data.properties_properties - required: true + onap.policies.optimization.SubscriberPolicy: + derived_from: onap.policies.Optimization + properties: + subscriberProperties: + type: policy.data.subscriberProperties_properties + required: true data_types: - - - policy.data.properties_properties: - derived_from: tosca.nodes.Root - properties: - subscriberName: - type: list - required: true - entry_schema: - type: string - subscriberRole: - type: list - required: true - entry_schema: - type: string - provStatus: - type: list - required: true - entry_schema: - type: string + policy.data.subscriberProperties_properties: + derived_from: tosca.nodes.Root + properties: + subscriberName: + type: list + required: true + entry_schema: + type: string + subscriberRole: + type: list + required: true + entry_schema: + type: string + provStatus: + type: list + required: true + entry_schema: + type: string
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.Vim_fit.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.Vim_fit.yaml index 9c12f7d63..d2b4ef6a6 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.Vim_fit.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.Vim_fit.yaml @@ -1,57 +1,27 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.Vim_fit: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - vim_fit - identity: - type: string - required: true - applicableResources: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - any - - all - resources: - type: list - required: true - entry_schema: - type: string - capacityProperties: - type: policy.data.capacityProperties_properties - required: true + onap.policies.optimization.Vim_fit: + derived_from: onap.policies.Optimization + properties: + applicableResources: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - any + - all + capacityProperties: + type: policy.data.capacityProperties_properties + required: true data_types: - - - policy.data.capacityProperties_properties: - derived_from: tosca.nodes.Root - properties: - controller: - type: string - required: true - request: - type: string - required: true + policy.data.capacityProperties_properties: + derived_from: tosca.nodes.Root + properties: + controller: + type: string + required: true + request: + type: string + required: true
\ No newline at end of file diff --git a/models-examples/src/main/resources/policytypes/onap.policies.optimization.VnfPolicy.yaml b/models-examples/src/main/resources/policytypes/onap.policies.optimization.VnfPolicy.yaml index 4bfc24216..f825f449d 100644 --- a/models-examples/src/main/resources/policytypes/onap.policies.optimization.VnfPolicy.yaml +++ b/models-examples/src/main/resources/policytypes/onap.policies.optimization.VnfPolicy.yaml @@ -1,74 +1,43 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: - - onap.policies.Optimization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: a base policy type for all policies that govern optimization - - onap.policies.optimization.VnfPolicy: - derived_from: onap.policies.Optimization - properties: - policyScope: - type: list - description: scope where the policy is applicable - required: true - matchable: true - entry_schema: - type: string - policyType: - type: list - description: type of a policy - required: true - matchable: true - entry_schema: - type: string - consraints: - - valid_values: - - vnfPolicy - identity: - type: string - required: true - resources: - type: list - required: true - entry_schema: - type: string - applicableResources: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - any - - all - vnfProperties: - type: list - required: true - entry_schema: - type: policy.data.vnfProperties_properties + onap.policies.optimization.VnfPolicy: + derived_from: onap.policies.Optimization + properties: + applicableResources: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - any + - all + vnfProperties: + type: list + required: true + entry_schema: + type: policy.data.vnfProperties_properties data_types: - - - policy.data.vnfProperties_properties: - derived_from: tosca.nodes.Root - properties: - inventoryProvider: - type: string - required: true - serviceType: - type: string - required: true - inventoryType: - type: list - required: true - entry_schema: - type: string - constraints: - - valid_values: - - serviceInstanceId - - vnfName - - cloudRegionId - - vimId - customerId: - type: string - required: true - + policy.data.vnfProperties_properties: + derived_from: tosca.nodes.Root + properties: + inventoryProvider: + type: string + required: true + serviceType: + type: string + required: true + inventoryType: + type: list + required: true + entry_schema: + type: string + constraints: + - valid_values: + - serviceInstanceId + - vnfName + - cloudRegionId + - vimId + customerId: + type: string + required: true
\ No newline at end of file diff --git a/models-interactions/model-actors/actor.so/src/test/resources/org/onap/policy/controlloop/actor/so/aai/AaiCqResponse.json b/models-interactions/model-actors/actor.so/src/test/resources/org/onap/policy/controlloop/actor/so/aai/AaiCqResponse.json deleted file mode 100644 index 63d6f79ac..000000000 --- a/models-interactions/model-actors/actor.so/src/test/resources/org/onap/policy/controlloop/actor/so/aai/AaiCqResponse.json +++ /dev/null @@ -1,673 +0,0 @@ -{ - "results": [ - { - "vserver": { - "vserver-id": "e7f1db09-ff78-44fc-b256-69095c5556fb", - "vserver-name": "vfw-vm-0201-2", - "vserver-name2": "vfw-vm-0201-2", - "prov-status": "ACTIVE", - "vserver-selflink": "http://ecompctl1.research.att.com:8774/v2/3f2aaef74ecb4b19b35e26d0849fe9a2/servers/e7f1db09-ff78-44fc-b256-69095c5556fb", - "in-maint": false, - "is-closed-loop-disabled": false, - "resource-version": "1549553422524", - "relationship-list": { - "relationship": [ - { - "related-to": "generic-vnf", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "17044ef4-e7f3-46a1-af03-e2aa562f23ac" - } - ], - "related-to-property": [ - { - "property-key": "generic-vnf.vnf-name", - "property-value": "TestVM-Vnf-0201-1" - } - ] - }, - { - "related-to": "vnfc", - "related-link": "/aai/v11/network/vnfcs/vnfc/vfw", - "relationship-data": [ - { - "relationship-key": "vnfc.vnfc-name", - "relationship-value": "vfw" - } - ] - }, - { - "related-to": "vf-module", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "17044ef4-e7f3-46a1-af03-e2aa562f23ac" - }, - { - "relationship-key": "vf-module.vf-module-id", - "relationship-value": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2" - } - ] - }, - { - "related-to": "flavor", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/2", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "flavor.flavor-id", - "relationship-value": "2" - } - ], - "related-to-property": [ - { - "property-key": "flavor.flavor-name", - "property-value": "m1.small" - } - ] - }, - { - "related-to": "image", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/84be7136-301f-4f47-9585-3a2e0f9534af", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "image.image-id", - "relationship-value": "84be7136-301f-4f47-9585-3a2e0f9534af" - } - ], - "related-to-property": [ - { - "property-key": "image.image-name", - "property-value": "unknown" - } - ] - } - ] - } - } - }, - { - "generic-vnf": { - "vnf-id": "7b202620-2936-4b0d-b09c-60b411f10f64", - "vnf-name": "vLoadBalancerMS-Vnf-0211-1", - "vnf-type": "vLoadBalancerMS/vLoadBalancerMS 0", - "prov-status": "ACTIVE", - "equipment-role": "vLB", - "orchestration-status": "Active", - "ipv4-oam-address": "10.0.150.1", - "in-maint": true, - "is-closed-loop-disabled": false, - "resource-version": "1552311656338", - "model-invariant-id": "724ab1cf-6120-49e8-b909-849963bed1d6", - "model-version-id": "9d5944d8-2267-4799-824a-0f824e9a978d", - "model-customization-id": "efcd576d-a05e-4798-bb68-79e7d9c80f4c", - "nf-type": "ONAP-LOADBALANCER", - "nf-function": "LOADBALANCER", - "nf-role": "vLB", - "nf-naming-code": "vlb", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/vnfs/vnf/7b202620-2936-4b0d-b09c-60b411f10f64/vnf-data/vnf-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "service-instance", - "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vLB/service-instances/service-instance/101b8fc1-1796-4db1-a4e7-fe39c6a51558", - "relationship-data": [ - { - "relationship-key": "customer.global-customer-id", - "relationship-value": "Demonstration" - }, - { - "relationship-key": "service-subscription.service-type", - "relationship-value": "vLB" - }, - { - "relationship-key": "service-instance.service-instance-id", - "relationship-value": "101b8fc1-1796-4db1-a4e7-fe39c6a51558" - } - ], - "related-to-property": [ - { - "property-key": "service-instance.service-instance-name", - "property-value": "vLoadBalancerMS-0211-1" - } - ] - }, - { - "related-to": "platform", - "related-link": "/aai/v11/business/platforms/platform/Test-Platform", - "relationship-data": [ - { - "relationship-key": "platform.platform-name", - "relationship-value": "Test-Platform" - } - ] - }, - { - "related-to": "line-of-business", - "related-link": "/aai/v11/business/lines-of-business/line-of-business/Test-Business", - "relationship-data": [ - { - "relationship-key": "line-of-business.line-of-business-name", - "relationship-value": "Test-Business" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/58ca8df0-17b8-4aa2-8766-9c6c1a12cec8", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "58ca8df0-17b8-4aa2-8766-9c6c1a12cec8" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vdns-ms-0211-1" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/6c3b3714-e36c-45af-9f16-7d3a73d99497", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "6c3b3714-e36c-45af-9f16-7d3a73d99497" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vlb-ms-0211-1" - } - ] - }, - { - "related-to": "availability-zone", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/availability-zones/availability-zone/nova", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "availability-zone.availability-zone-name", - "relationship-value": "nova" - } - ] - } - ] - }, - "vf-modules": { - "vf-module": [ - { - "vf-module-id": "e46c6636-9ce5-4b77-bb1b-455ce9edc892", - "vf-module-name": "vLoadBalancerMS-0211-1", - "heat-stack-id": "vLoadBalancerMS-0211-1/73360253-2dfe-46f6-bcd6-8662a81238ea", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1552311559802", - "model-invariant-id": "d263fc6d-cfce-4e20-8337-e06f48b474e6", - "model-version-id": "24c0aa10-3979-402c-ad98-20124751b551", - "model-customization-id": "65382eb1-db84-466c-b9d7-4e0f1ba7105f", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/vnfs/vnf/7b202620-2936-4b0d-b09c-60b411f10f64/vnf-data/vf-modules/vf-module/e46c6636-9ce5-4b77-bb1b-455ce9edc892/vf-module-data/vf-module-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/58ca8df0-17b8-4aa2-8766-9c6c1a12cec8", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "58ca8df0-17b8-4aa2-8766-9c6c1a12cec8" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vdns-ms-0211-1" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/6c3b3714-e36c-45af-9f16-7d3a73d99497", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "6c3b3714-e36c-45af-9f16-7d3a73d99497" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vlb-ms-0211-1" - } - ] - } - ] - } - } - ] - } - } - }, - { - "service-instance": { - "service-instance-id": "101b8fc1-1796-4db1-a4e7-fe39c6a51558", - "service-instance-name": "vLoadBalancerMS-0211-1", - "environment-context": "General_Revenue-Bearing", - "workload-context": "Production", - "model-invariant-id": "1008a768-1b67-407e-88c6-58c82b34ef42", - "model-version-id": "81f8c1cd-f664-4450-b3a4-be645613ab32", - "resource-version": "1552311350334", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/service-topology/", - "orchestration-status": "Active", - "relationship-list": { - "relationship": [ - { - "related-to": "project", - "related-link": "/aai/v11/business/projects/project/Test-Project", - "relationship-data": [ - { - "relationship-key": "project.project-name", - "relationship-value": "Test-Project" - } - ] - }, - { - "related-to": "generic-vnf", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/7b202620-2936-4b0d-b09c-60b411f10f64", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "7b202620-2936-4b0d-b09c-60b411f10f64" - } - ], - "related-to-property": [ - { - "property-key": "generic-vnf.vnf-name", - "property-value": "vLoadBalancerMS-Vnf-0211-1" - } - ] - }, - { - "related-to": "owning-entity", - "related-link": "/aai/v11/business/owning-entities/owning-entity/bb94a687-4f3b-40a3-914e-e98037d5ebd2", - "relationship-data": [ - { - "relationship-key": "owning-entity.owning-entity-id", - "relationship-value": "bb94a687-4f3b-40a3-914e-e98037d5ebd2" - } - ] - } - ] - } - } - }, - { - "generic-vnf": { - "vnf-id": "17044ef4-e7f3-46a1-af03-e2aa562f23ac", - "vnf-name": "TestVM-Vnf-0201-1", - "vnf-type": "TestVM/TestVM 0", - "prov-status": "ACTIVE", - "equipment-role": "", - "orchestration-status": "Active", - "ipv4-oam-address": "10.0.70.1", - "in-maint": true, - "is-closed-loop-disabled": false, - "resource-version": "1549041636264", - "model-invariant-id": "6a4d7971-0778-4655-9eab-9d6031c7ad57", - "model-version-id": "fb6c673c-e5b6-4e0a-9baf-5e0089784de9", - "model-customization-id": "706a3100-dbe5-442e-86c3-c7b823abbec2", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vnf-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "service-instance", - "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/d41f8217-d464-4458-bf0a-fba33a0f1b31", - "relationship-data": [ - { - "relationship-key": "customer.global-customer-id", - "relationship-value": "Demonstration" - }, - { - "relationship-key": "service-subscription.service-type", - "relationship-value": "vFW" - }, - { - "relationship-key": "service-instance.service-instance-id", - "relationship-value": "d41f8217-d464-4458-bf0a-fba33a0f1b31" - } - ], - "related-to-property": [ - { - "property-key": "service-instance.service-instance-name", - "property-value": "TestVM-Service-0201-1" - } - ] - }, - { - "related-to": "platform", - "related-link": "/aai/v11/business/platforms/platform/Test-Platform", - "relationship-data": [ - { - "relationship-key": "platform.platform-name", - "relationship-value": "Test-Platform" - } - ] - }, - { - "related-to": "line-of-business", - "related-link": "/aai/v11/business/lines-of-business/line-of-business/Test-Business", - "relationship-data": [ - { - "relationship-key": "line-of-business.line-of-business-name", - "relationship-value": "Test-Business" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - }, - { - "related-to": "availability-zone", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionTwo/availability-zones/availability-zone/zone-1", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionTwo" - }, - { - "relationship-key": "availability-zone.availability-zone-name", - "relationship-value": "zone-1" - } - ] - } - ] - }, - "vf-modules": { - "vf-module": [ - { - "vf-module-id": "0afde97a-3e3f-4597-aec3-e5488c0f20b7", - "vf-module-name": "TestVM-0201-1", - "heat-stack-id": "TestVM-0201-1/aee4d7e5-b4a0-4261-b3cf-bb23348a3d99", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549039401119", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/0afde97a-3e3f-4597-aec3-e5488c0f20b7/vf-module-data/vf-module-topology/" - }, - { - "vf-module-id": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "vf-module-name": "TestVM-0201-2", - "heat-stack-id": "TestVM-0201-2/1b9db6b8-620b-46f1-935a-8a61c294a98b", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549041447373", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2/vf-module-data/vf-module-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - } - ] - } - } - ] - } - } - }, - { - "vf-module": { - "vf-module-id": "0afde97a-3e3f-4597-aec3-e5488c0f20b7", - "vf-module-name": "TestVM-0201-1", - "heat-stack-id": "TestVM-0201-1/aee4d7e5-b4a0-4261-b3cf-bb23348a3d99", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549039401119", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/0afde97a-3e3f-4597-aec3-e5488c0f20b7/vf-module-data/vf-module-topology/" - } - }, - { - "vf-module": { - "vf-module-id": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "vf-module-name": "TestVM-0201-2", - "heat-stack-id": "TestVM-0201-2/1b9db6b8-620b-46f1-935a-8a61c294a98b", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549041447373", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2/vf-module-data/vf-module-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - } - ] - } - } - }, - { - "tenant": { - "tenant-id": "tenant1-16197-as988q", - "tenant-name": "tenant-name-16197-as988q", - "resource-version": "1550769793637", - "vservers": { - "vserver": [ - { - "vserver-id": "vserver1-16197-as988q", - "vserver-name": "vserverName", - "vserver-name2": "vserverTE-name2-as988q", - "prov-status": "ACTIVE", - "vserver-selflink": "TRINITY vserverLink", - "in-maint": false, - "is-closed-loop-disabled": false, - "resource-version": "1550769794551", - "relationship-list": { - "relationship": [ - { - "related-to": "generic-vnf", - "relationship-label": "tosca.relationships.HostedOn", - "related-link": "/aai/v16/network/generic-vnfs/generic-vnf/VNF1-16197-as988q", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "VNF1-16197-as988q" - } - ], - "related-to-property": [ - { - "property-key": "generic-vnf.vnf-name", - "property-value": "vnf1Name" - } - ] - } - ] - } - } - ] - } - } - }, - { - "cloud-region": { - "cloud-owner": "co-16197-01-as988q", - "cloud-region-id": "cr-16197-01-as988q", - "resource-version": "1550769792672", - "orchestration-disabled": false, - "in-maint": false, - "tenants": { - "tenant": [ - { - "tenant-id": "tenant1-16197-as988q", - "tenant-name": "tenant-name-16197-as988q", - "resource-version": "1550769793637" - } - ] - } - } - } - ] -} diff --git a/models-interactions/model-impl/aai/src/main/java/org/onap/policy/aai/AaiCqResponse.java b/models-interactions/model-impl/aai/src/main/java/org/onap/policy/aai/AaiCqResponse.java index dea11d563..ca0c1867f 100644 --- a/models-interactions/model-impl/aai/src/main/java/org/onap/policy/aai/AaiCqResponse.java +++ b/models-interactions/model-impl/aai/src/main/java/org/onap/policy/aai/AaiCqResponse.java @@ -55,7 +55,6 @@ public class AaiCqResponse { private static JAXBContext jaxbContext; private static Unmarshaller unmarshaller; - // JABX initial stuff static { Map<String, Object> properties = new HashMap<>(); @@ -63,8 +62,12 @@ public class AaiCqResponse { properties.put(JAXBContextProperties.JSON_INCLUDE_ROOT, false); // Define JAXB context try { - jaxbContext = JAXBContextFactory.createContext(new Class[] {Vserver.class, GenericVnf.class, VfModule.class, - CloudRegion.class, ServiceInstance.class, Tenant.class, ModelVer.class}, properties); + jaxbContext = + JAXBContextFactory + .createContext( + new Class[] {Vserver.class, GenericVnf.class, VfModule.class, + CloudRegion.class, ServiceInstance.class, Tenant.class, ModelVer.class}, + properties); unmarshaller = jaxbContext.createUnmarshaller(); } catch (JAXBException e) { LOGGER.error("Could not initialize JAXBContext", e); @@ -75,11 +78,11 @@ public class AaiCqResponse { @SerializedName("results") private List<Object> inventoryResponseItems = new LinkedList<>(); - /** * Constructor creates a custom query response from a valid json string. * - * @param jsonString A&AI Custom Query response JSON string + * @param jsonString + * A&AI Custom Query response JSON string */ public AaiCqResponse(String jsonString) { @@ -95,8 +98,8 @@ public class AaiCqResponse { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject("vserver").toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject("vserver").toString())); // Getting the vserver pojo again from the json Vserver vserver = this.getAaiObject(json, Vserver.class); @@ -107,8 +110,8 @@ public class AaiCqResponse { if (resultsArray.getJSONObject(i).has(GENERIC_VNF)) { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject(GENERIC_VNF).toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject(GENERIC_VNF).toString())); // Getting the generic vnf pojo again from the json GenericVnf genericVnf = this.getAaiObject(json, GenericVnf.class); @@ -121,8 +124,8 @@ public class AaiCqResponse { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject("service-instance").toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject("service-instance").toString())); // Getting the employee pojo again from the json ServiceInstance serviceInstance = this.getAaiObject(json, ServiceInstance.class); @@ -134,8 +137,8 @@ public class AaiCqResponse { if (resultsArray.getJSONObject(i).has(VF_MODULE)) { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject(VF_MODULE).toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject(VF_MODULE).toString())); // Getting the vf module pojo again from the json VfModule vfModule = this.getAaiObject(json, VfModule.class); @@ -147,8 +150,8 @@ public class AaiCqResponse { if (resultsArray.getJSONObject(i).has("cloud-region")) { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject("cloud-region").toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject("cloud-region").toString())); // Getting the cloud region pojo again from the json CloudRegion cloudRegion = this.getAaiObject(json, CloudRegion.class); @@ -160,8 +163,8 @@ public class AaiCqResponse { if (resultsArray.getJSONObject(i).has("tenant")) { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject("tenant").toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject("tenant").toString())); // Getting the tenant pojo again from the json Tenant tenant = this.getAaiObject(json, Tenant.class); @@ -173,8 +176,8 @@ public class AaiCqResponse { if (resultsArray.getJSONObject(i).has("model-ver")) { // Create the StreamSource by creating StringReader using the // JSON input - StreamSource json = new StreamSource( - new StringReader(resultsArray.getJSONObject(i).getJSONObject("model-ver").toString())); + StreamSource json = new StreamSource(new StringReader( + resultsArray.getJSONObject(i).getJSONObject("model-ver").toString())); // Getting the ModelVer pojo again from the json ModelVer modelVer = this.getAaiObject(json, ModelVer.class); @@ -184,12 +187,8 @@ public class AaiCqResponse { } - - } - - private <T> T getAaiObject(StreamSource json, final Class<T> classOfResponse) { try { return unmarshaller.unmarshal(json, classOfResponse).getValue(); @@ -210,7 +209,8 @@ public class AaiCqResponse { /** * Get list of A&AI objects in the custom query. * - * @param classOfResponse Class of the type of A&AI objects to be returned + * @param classOfResponse + * Class of the type of A&AI objects to be returned * @return List A&AI objects matching the class */ @SuppressWarnings("unchecked") @@ -289,11 +289,11 @@ public class AaiCqResponse { } - /** * Returns a generic Vnf matching vnf name. * - * @param vnfName Name of the vnf to match + * @param vnfName + * Name of the vnf to match * @return generic Vnf */ public GenericVnf getGenericVnfByVnfName(String vnfName) { @@ -318,7 +318,8 @@ public class AaiCqResponse { /** * Returns a generic Vnf matching model invariant ID. * - * @param modelInvariantId Name of the vnf to match + * @param modelInvariantId + * Name of the vnf to match * @return generic Vnf */ public GenericVnf getGenericVnfByModelInvariantId(String modelInvariantId) { @@ -340,11 +341,11 @@ public class AaiCqResponse { } - /** * Returns a generic Vnf of a given VF Module ID. * - * @param vfModuleModelInvariantId of the vf module for which vnf is to be returned + * @param vfModuleModelInvariantId + * of the vf module for which vnf is to be returned * @return generic Vnf */ public GenericVnf getGenericVnfByVfModuleModelInvariantId(String vfModuleModelInvariantId) { @@ -354,7 +355,7 @@ public class AaiCqResponse { // Iterate through all the vfModules of that generic Vnf for (VfModule vfMod : genVnf.getVfModules().getVfModule()) { if (vfMod.getModelInvariantId() != null - && vfMod.getModelInvariantId().equals(vfModuleModelInvariantId)) { + && vfMod.getModelInvariantId().equals(vfModuleModelInvariantId)) { return genVnf; } } @@ -362,8 +363,6 @@ public class AaiCqResponse { return null; } - - /** * Get the generic vnf associated with the vserver in the custom query. * @@ -382,7 +381,8 @@ public class AaiCqResponse { String genericVnfId = ""; List<RelationshipData> relationshipData = null; - // Iterate through the list of relationships and get generic vnf relationship data + // Iterate through the list of relationships and get generic vnf + // relationship data for (Relationship r : relations) { // Get the name of generic-vnf related to this server if (GENERIC_VNF.equals(r.getRelatedTo())) { @@ -410,7 +410,6 @@ public class AaiCqResponse { return genericVnf; } - /** * Get Vf Module associated with the vserver in the custom query. * @@ -430,7 +429,8 @@ public class AaiCqResponse { String vfModuleId = ""; List<RelationshipData> relationshipData = null; - // Iterate through the list of relationships and get vf module relationship data + // Iterate through the list of relationships and get vf module + // relationship data for (Relationship r : relations) { // Get relationship data of vfmodule related to this server if (VF_MODULE.equals(r.getRelatedTo())) { @@ -461,7 +461,6 @@ public class AaiCqResponse { return vfModule; } - /** * Get vf modules in the custom query. * @@ -494,7 +493,6 @@ public class AaiCqResponse { return vfModule; } - /** * Get Vf Module matching a specific VF model invariant ID. * @@ -504,7 +502,8 @@ public class AaiCqResponse { VfModule vfModule = null; for (VfModule vfMod : this.getAllVfModules()) { - if (vfMod.getModelInvariantId() != null && vfModelInvariantId.equals(vfMod.getModelInvariantId())) { + if (vfMod.getModelInvariantId() != null + && vfModelInvariantId.equals(vfMod.getModelInvariantId())) { vfModule = vfMod; } @@ -543,8 +542,6 @@ public class AaiCqResponse { return modelVerList; } - - /** * Get ModelVer matching a specific version id. * @@ -562,5 +559,32 @@ public class AaiCqResponse { return modelVer; } -} + /** + * Get the count of vfModules matching customizationId, InvariantId and + * VersionId. + * + * @param custId + * ModelCustomizationId + * @param invId + * ModelInvariantId + * @param verId + * ModelVersionId + * @return Returns the count of vf modules + */ + public int getVfModuleCount(String custId, String invId, String verId) { + List<VfModule> vfModuleList = this.getAllVfModules(); + int count = 0; + for (VfModule vfModule : vfModuleList) { + if (vfModule.getModelCustomizationId() != null && vfModule.getModelInvariantId() != null + && vfModule.getModelVersionId() != null) { + if (vfModule.getModelCustomizationId().equals(custId) + && vfModule.getModelInvariantId().equals(invId) + && vfModule.getModelVersionId().equals(verId)) { + count = count + 1; + } + } + } + return count; + } +} diff --git a/models-interactions/model-impl/aai/src/test/java/org/onap/policy/aai/AaiCqResponseTest.java b/models-interactions/model-impl/aai/src/test/java/org/onap/policy/aai/AaiCqResponseTest.java index 8335ce80b..c128fb318 100644 --- a/models-interactions/model-impl/aai/src/test/java/org/onap/policy/aai/AaiCqResponseTest.java +++ b/models-interactions/model-impl/aai/src/test/java/org/onap/policy/aai/AaiCqResponseTest.java @@ -43,8 +43,8 @@ public class AaiCqResponseTest { private static final String ETE_VFMODULE = "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0"; private static final String ETE_VNF = "Ete_vFWCLvFWSNK_7ba1fbde_0"; private static final Logger LOGGER = LoggerFactory.getLogger(AaiCqResponseTest.class); - private static final String CQ_RESPONSE_SAMPLE = "src/test/resources/org/onap/policy/aai/AaiCqResponseFull.json"; - + private static final String CQ_RESPONSE_SAMPLE = + "src/test/resources/org/onap/policy/aai/AaiCqResponseFull.json"; @Test public void testConstructor() throws Exception { @@ -68,8 +68,9 @@ public class AaiCqResponseTest { */ String responseString = ""; - responseString = new String(Files - .readAllBytes(new File("src/test/resources/org/onap/policy/aai/AaiMalformedCqResponse.json").toPath())); + responseString = new String(Files.readAllBytes( + new File("src/test/resources/org/onap/policy/aai/AaiMalformedCqResponse.json") + .toPath())); AaiCqResponse aaiCqResponse; aaiCqResponse = new AaiCqResponse(responseString); @@ -77,7 +78,6 @@ public class AaiCqResponseTest { assertNull(aaiObj); } - } @Test @@ -108,7 +108,8 @@ public class AaiCqResponseTest { aaiCqResponse = new AaiCqResponse(responseString); ServiceInstance si = aaiCqResponse.getServiceInstance(); assertNotNull(si); - assertEquals("Service_Ete_Name7ba1fbde-6187-464a-a62d-d9dd25bdf4e8", si.getServiceInstanceName()); + assertEquals("Service_Ete_Name7ba1fbde-6187-464a-a62d-d9dd25bdf4e8", + si.getServiceInstanceName()); LOGGER.info(si.getServiceInstanceName()); } @@ -140,8 +141,6 @@ public class AaiCqResponseTest { LOGGER.info(tenant.getTenantId()); } - - @Test public void testGetGenericVnfs() throws Exception { @@ -158,8 +157,6 @@ public class AaiCqResponseTest { } - - @Test public void testGetDefaultGenericVnf() throws Exception { @@ -189,7 +186,6 @@ public class AaiCqResponseTest { LOGGER.info(genVnf.getVnfId()); } - @Test public void testGetGenericVnfByModelInvariantId() throws Exception { @@ -198,13 +194,13 @@ public class AaiCqResponseTest { AaiCqResponse aaiCqResponse; aaiCqResponse = new AaiCqResponse(responseString); - GenericVnf genVnf = aaiCqResponse.getGenericVnfByModelInvariantId("9a243c47-fd5f-43d1-bd2a-f17bd12a61f2"); + GenericVnf genVnf = + aaiCqResponse.getGenericVnfByModelInvariantId("9a243c47-fd5f-43d1-bd2a-f17bd12a61f2"); assertNotNull(genVnf); assertEquals("9a243c47-fd5f-43d1-bd2a-f17bd12a61f2", genVnf.getModelInvariantId()); LOGGER.info(genVnf.getModelInvariantId()); } - @Test public void testGetGenericVnfByVfModuleModelInvariantId() throws Exception { @@ -213,15 +209,13 @@ public class AaiCqResponseTest { AaiCqResponse aaiCqResponse; aaiCqResponse = new AaiCqResponse(responseString); - GenericVnf genVnf = - aaiCqResponse.getGenericVnfByVfModuleModelInvariantId("e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e"); + GenericVnf genVnf = aaiCqResponse + .getGenericVnfByVfModuleModelInvariantId("e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e"); assertNotNull(genVnf); assertEquals(ETE_VNF, genVnf.getVnfName()); LOGGER.info(genVnf.getVnfName()); } - - @Test public void testGetAllVfModules() throws Exception { @@ -238,7 +232,6 @@ public class AaiCqResponseTest { } - @Test public void testGetVfModuleByVfModuleName() throws Exception { @@ -252,7 +245,6 @@ public class AaiCqResponseTest { assertEquals(ETE_VFMODULE, vfModule.getVfModuleName()); LOGGER.info(vfModule.getVfModuleName()); - } @Test @@ -263,12 +255,12 @@ public class AaiCqResponseTest { AaiCqResponse aaiCqResponse; aaiCqResponse = new AaiCqResponse(responseString); - VfModule vfModule = aaiCqResponse.getVfModuleByVfModelInvariantId("e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e"); + VfModule vfModule = + aaiCqResponse.getVfModuleByVfModelInvariantId("e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e"); assertNotNull(vfModule); assertEquals(ETE_VFMODULE, vfModule.getVfModuleName()); LOGGER.info(vfModule.getVfModuleName()); - } @Test @@ -324,18 +316,29 @@ public class AaiCqResponseTest { AaiCqResponse aaiCqResponse; aaiCqResponse = new AaiCqResponse(responseString); - ModelVer modelVer = aaiCqResponse.getModelVerByVersionId("189a5070-3bd5-45ac-8a1d-c84ca40b277b"); + ModelVer modelVer = + aaiCqResponse.getModelVerByVersionId("189a5070-3bd5-45ac-8a1d-c84ca40b277b"); assertNotNull(modelVer); assertEquals("vFWCL_vFWSNK bbefb8ce-2bde", modelVer.getModelName()); LOGGER.info(modelVer.getModelName()); } + @Test + public void testGetVfModuleCount() throws Exception { + String responseString = + new String(Files.readAllBytes(new File(CQ_RESPONSE_SAMPLE).toPath())); + AaiCqResponse aaiCqResponse; + aaiCqResponse = new AaiCqResponse(responseString); + int count = aaiCqResponse.getVfModuleCount("47958575-138f-452a-8c8d-d89b595f8164", + "e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e", "94b18b1d-cc91-4f43-911a-e6348665f292"); + assertEquals(1, count); + } /** - * Aai Cq sample response. - * - * @return String return response + * Provides sample CQ response. + * + * @return a CQ response * @throws Exception file read exception */ public String getAaiCqResponse() throws Exception { diff --git a/models-interactions/model-impl/aai/src/test/resources/org/onap/policy/aai/AaiCqResponse.json b/models-interactions/model-impl/aai/src/test/resources/org/onap/policy/aai/AaiCqResponse.json deleted file mode 100644 index 63d6f79ac..000000000 --- a/models-interactions/model-impl/aai/src/test/resources/org/onap/policy/aai/AaiCqResponse.json +++ /dev/null @@ -1,673 +0,0 @@ -{ - "results": [ - { - "vserver": { - "vserver-id": "e7f1db09-ff78-44fc-b256-69095c5556fb", - "vserver-name": "vfw-vm-0201-2", - "vserver-name2": "vfw-vm-0201-2", - "prov-status": "ACTIVE", - "vserver-selflink": "http://ecompctl1.research.att.com:8774/v2/3f2aaef74ecb4b19b35e26d0849fe9a2/servers/e7f1db09-ff78-44fc-b256-69095c5556fb", - "in-maint": false, - "is-closed-loop-disabled": false, - "resource-version": "1549553422524", - "relationship-list": { - "relationship": [ - { - "related-to": "generic-vnf", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "17044ef4-e7f3-46a1-af03-e2aa562f23ac" - } - ], - "related-to-property": [ - { - "property-key": "generic-vnf.vnf-name", - "property-value": "TestVM-Vnf-0201-1" - } - ] - }, - { - "related-to": "vnfc", - "related-link": "/aai/v11/network/vnfcs/vnfc/vfw", - "relationship-data": [ - { - "relationship-key": "vnfc.vnfc-name", - "relationship-value": "vfw" - } - ] - }, - { - "related-to": "vf-module", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "17044ef4-e7f3-46a1-af03-e2aa562f23ac" - }, - { - "relationship-key": "vf-module.vf-module-id", - "relationship-value": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2" - } - ] - }, - { - "related-to": "flavor", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/2", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "flavor.flavor-id", - "relationship-value": "2" - } - ], - "related-to-property": [ - { - "property-key": "flavor.flavor-name", - "property-value": "m1.small" - } - ] - }, - { - "related-to": "image", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/84be7136-301f-4f47-9585-3a2e0f9534af", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "image.image-id", - "relationship-value": "84be7136-301f-4f47-9585-3a2e0f9534af" - } - ], - "related-to-property": [ - { - "property-key": "image.image-name", - "property-value": "unknown" - } - ] - } - ] - } - } - }, - { - "generic-vnf": { - "vnf-id": "7b202620-2936-4b0d-b09c-60b411f10f64", - "vnf-name": "vLoadBalancerMS-Vnf-0211-1", - "vnf-type": "vLoadBalancerMS/vLoadBalancerMS 0", - "prov-status": "ACTIVE", - "equipment-role": "vLB", - "orchestration-status": "Active", - "ipv4-oam-address": "10.0.150.1", - "in-maint": true, - "is-closed-loop-disabled": false, - "resource-version": "1552311656338", - "model-invariant-id": "724ab1cf-6120-49e8-b909-849963bed1d6", - "model-version-id": "9d5944d8-2267-4799-824a-0f824e9a978d", - "model-customization-id": "efcd576d-a05e-4798-bb68-79e7d9c80f4c", - "nf-type": "ONAP-LOADBALANCER", - "nf-function": "LOADBALANCER", - "nf-role": "vLB", - "nf-naming-code": "vlb", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/vnfs/vnf/7b202620-2936-4b0d-b09c-60b411f10f64/vnf-data/vnf-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "service-instance", - "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vLB/service-instances/service-instance/101b8fc1-1796-4db1-a4e7-fe39c6a51558", - "relationship-data": [ - { - "relationship-key": "customer.global-customer-id", - "relationship-value": "Demonstration" - }, - { - "relationship-key": "service-subscription.service-type", - "relationship-value": "vLB" - }, - { - "relationship-key": "service-instance.service-instance-id", - "relationship-value": "101b8fc1-1796-4db1-a4e7-fe39c6a51558" - } - ], - "related-to-property": [ - { - "property-key": "service-instance.service-instance-name", - "property-value": "vLoadBalancerMS-0211-1" - } - ] - }, - { - "related-to": "platform", - "related-link": "/aai/v11/business/platforms/platform/Test-Platform", - "relationship-data": [ - { - "relationship-key": "platform.platform-name", - "relationship-value": "Test-Platform" - } - ] - }, - { - "related-to": "line-of-business", - "related-link": "/aai/v11/business/lines-of-business/line-of-business/Test-Business", - "relationship-data": [ - { - "relationship-key": "line-of-business.line-of-business-name", - "relationship-value": "Test-Business" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/58ca8df0-17b8-4aa2-8766-9c6c1a12cec8", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "58ca8df0-17b8-4aa2-8766-9c6c1a12cec8" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vdns-ms-0211-1" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/6c3b3714-e36c-45af-9f16-7d3a73d99497", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "6c3b3714-e36c-45af-9f16-7d3a73d99497" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vlb-ms-0211-1" - } - ] - }, - { - "related-to": "availability-zone", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/availability-zones/availability-zone/nova", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "availability-zone.availability-zone-name", - "relationship-value": "nova" - } - ] - } - ] - }, - "vf-modules": { - "vf-module": [ - { - "vf-module-id": "e46c6636-9ce5-4b77-bb1b-455ce9edc892", - "vf-module-name": "vLoadBalancerMS-0211-1", - "heat-stack-id": "vLoadBalancerMS-0211-1/73360253-2dfe-46f6-bcd6-8662a81238ea", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1552311559802", - "model-invariant-id": "d263fc6d-cfce-4e20-8337-e06f48b474e6", - "model-version-id": "24c0aa10-3979-402c-ad98-20124751b551", - "model-customization-id": "65382eb1-db84-466c-b9d7-4e0f1ba7105f", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/vnfs/vnf/7b202620-2936-4b0d-b09c-60b411f10f64/vnf-data/vf-modules/vf-module/e46c6636-9ce5-4b77-bb1b-455ce9edc892/vf-module-data/vf-module-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/58ca8df0-17b8-4aa2-8766-9c6c1a12cec8", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "58ca8df0-17b8-4aa2-8766-9c6c1a12cec8" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vdns-ms-0211-1" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/6c3b3714-e36c-45af-9f16-7d3a73d99497", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "6c3b3714-e36c-45af-9f16-7d3a73d99497" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vlb-ms-0211-1" - } - ] - } - ] - } - } - ] - } - } - }, - { - "service-instance": { - "service-instance-id": "101b8fc1-1796-4db1-a4e7-fe39c6a51558", - "service-instance-name": "vLoadBalancerMS-0211-1", - "environment-context": "General_Revenue-Bearing", - "workload-context": "Production", - "model-invariant-id": "1008a768-1b67-407e-88c6-58c82b34ef42", - "model-version-id": "81f8c1cd-f664-4450-b3a4-be645613ab32", - "resource-version": "1552311350334", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/service-topology/", - "orchestration-status": "Active", - "relationship-list": { - "relationship": [ - { - "related-to": "project", - "related-link": "/aai/v11/business/projects/project/Test-Project", - "relationship-data": [ - { - "relationship-key": "project.project-name", - "relationship-value": "Test-Project" - } - ] - }, - { - "related-to": "generic-vnf", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/7b202620-2936-4b0d-b09c-60b411f10f64", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "7b202620-2936-4b0d-b09c-60b411f10f64" - } - ], - "related-to-property": [ - { - "property-key": "generic-vnf.vnf-name", - "property-value": "vLoadBalancerMS-Vnf-0211-1" - } - ] - }, - { - "related-to": "owning-entity", - "related-link": "/aai/v11/business/owning-entities/owning-entity/bb94a687-4f3b-40a3-914e-e98037d5ebd2", - "relationship-data": [ - { - "relationship-key": "owning-entity.owning-entity-id", - "relationship-value": "bb94a687-4f3b-40a3-914e-e98037d5ebd2" - } - ] - } - ] - } - } - }, - { - "generic-vnf": { - "vnf-id": "17044ef4-e7f3-46a1-af03-e2aa562f23ac", - "vnf-name": "TestVM-Vnf-0201-1", - "vnf-type": "TestVM/TestVM 0", - "prov-status": "ACTIVE", - "equipment-role": "", - "orchestration-status": "Active", - "ipv4-oam-address": "10.0.70.1", - "in-maint": true, - "is-closed-loop-disabled": false, - "resource-version": "1549041636264", - "model-invariant-id": "6a4d7971-0778-4655-9eab-9d6031c7ad57", - "model-version-id": "fb6c673c-e5b6-4e0a-9baf-5e0089784de9", - "model-customization-id": "706a3100-dbe5-442e-86c3-c7b823abbec2", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vnf-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "service-instance", - "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/d41f8217-d464-4458-bf0a-fba33a0f1b31", - "relationship-data": [ - { - "relationship-key": "customer.global-customer-id", - "relationship-value": "Demonstration" - }, - { - "relationship-key": "service-subscription.service-type", - "relationship-value": "vFW" - }, - { - "relationship-key": "service-instance.service-instance-id", - "relationship-value": "d41f8217-d464-4458-bf0a-fba33a0f1b31" - } - ], - "related-to-property": [ - { - "property-key": "service-instance.service-instance-name", - "property-value": "TestVM-Service-0201-1" - } - ] - }, - { - "related-to": "platform", - "related-link": "/aai/v11/business/platforms/platform/Test-Platform", - "relationship-data": [ - { - "relationship-key": "platform.platform-name", - "relationship-value": "Test-Platform" - } - ] - }, - { - "related-to": "line-of-business", - "related-link": "/aai/v11/business/lines-of-business/line-of-business/Test-Business", - "relationship-data": [ - { - "relationship-key": "line-of-business.line-of-business-name", - "relationship-value": "Test-Business" - } - ] - }, - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - }, - { - "related-to": "availability-zone", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionTwo/availability-zones/availability-zone/zone-1", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionTwo" - }, - { - "relationship-key": "availability-zone.availability-zone-name", - "relationship-value": "zone-1" - } - ] - } - ] - }, - "vf-modules": { - "vf-module": [ - { - "vf-module-id": "0afde97a-3e3f-4597-aec3-e5488c0f20b7", - "vf-module-name": "TestVM-0201-1", - "heat-stack-id": "TestVM-0201-1/aee4d7e5-b4a0-4261-b3cf-bb23348a3d99", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549039401119", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/0afde97a-3e3f-4597-aec3-e5488c0f20b7/vf-module-data/vf-module-topology/" - }, - { - "vf-module-id": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "vf-module-name": "TestVM-0201-2", - "heat-stack-id": "TestVM-0201-2/1b9db6b8-620b-46f1-935a-8a61c294a98b", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549041447373", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2/vf-module-data/vf-module-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - } - ] - } - } - ] - } - } - }, - { - "vf-module": { - "vf-module-id": "0afde97a-3e3f-4597-aec3-e5488c0f20b7", - "vf-module-name": "TestVM-0201-1", - "heat-stack-id": "TestVM-0201-1/aee4d7e5-b4a0-4261-b3cf-bb23348a3d99", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549039401119", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/0afde97a-3e3f-4597-aec3-e5488c0f20b7/vf-module-data/vf-module-topology/" - } - }, - { - "vf-module": { - "vf-module-id": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "vf-module-name": "TestVM-0201-2", - "heat-stack-id": "TestVM-0201-2/1b9db6b8-620b-46f1-935a-8a61c294a98b", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549041447373", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2/vf-module-data/vf-module-topology/", - "relationship-list": { - "relationship": [ - { - "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, - { - "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], - "related-to-property": [ - { - "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - } - ] - } - } - }, - { - "tenant": { - "tenant-id": "tenant1-16197-as988q", - "tenant-name": "tenant-name-16197-as988q", - "resource-version": "1550769793637", - "vservers": { - "vserver": [ - { - "vserver-id": "vserver1-16197-as988q", - "vserver-name": "vserverName", - "vserver-name2": "vserverTE-name2-as988q", - "prov-status": "ACTIVE", - "vserver-selflink": "TRINITY vserverLink", - "in-maint": false, - "is-closed-loop-disabled": false, - "resource-version": "1550769794551", - "relationship-list": { - "relationship": [ - { - "related-to": "generic-vnf", - "relationship-label": "tosca.relationships.HostedOn", - "related-link": "/aai/v16/network/generic-vnfs/generic-vnf/VNF1-16197-as988q", - "relationship-data": [ - { - "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "VNF1-16197-as988q" - } - ], - "related-to-property": [ - { - "property-key": "generic-vnf.vnf-name", - "property-value": "vnf1Name" - } - ] - } - ] - } - } - ] - } - } - }, - { - "cloud-region": { - "cloud-owner": "co-16197-01-as988q", - "cloud-region-id": "cr-16197-01-as988q", - "resource-version": "1550769792672", - "orchestration-disabled": false, - "in-maint": false, - "tenants": { - "tenant": [ - { - "tenant-id": "tenant1-16197-as988q", - "tenant-name": "tenant-name-16197-as988q", - "resource-version": "1550769793637" - } - ] - } - } - } - ] -} diff --git a/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiCqResponse.json b/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiCqResponse.json index 63d6f79ac..b23f3a883 100644 --- a/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiCqResponse.json +++ b/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiCqResponse.json @@ -2,672 +2,3869 @@ "results": [ { "vserver": { - "vserver-id": "e7f1db09-ff78-44fc-b256-69095c5556fb", - "vserver-name": "vfw-vm-0201-2", - "vserver-name2": "vfw-vm-0201-2", + "vserver-id": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f", + "vserver-name": "Ete_vFWCLvFWSNK_7ba1fbde_0", + "vserver-name2": "Ete_vFWCLvFWSNK_7ba1fbde_0", "prov-status": "ACTIVE", - "vserver-selflink": "http://ecompctl1.research.att.com:8774/v2/3f2aaef74ecb4b19b35e26d0849fe9a2/servers/e7f1db09-ff78-44fc-b256-69095c5556fb", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", "in-maint": false, "is-closed-loop-disabled": false, - "resource-version": "1549553422524", + "resource-version": "1556725250281", "relationship-list": { "relationship": [ { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/Ete_vFWCLvFWSNK_7ba1fbde_0", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, + { "related-to": "generic-vnf", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd", "relationship-data": [ { "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "17044ef4-e7f3-46a1-af03-e2aa562f23ac" - } - ], + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + } + ], "related-to-property": [ { "property-key": "generic-vnf.vnf-name", - "property-value": "TestVM-Vnf-0201-1" - } - ] - }, - { - "related-to": "vnfc", - "related-link": "/aai/v11/network/vnfcs/vnfc/vfw", - "relationship-data": [ - { - "relationship-key": "vnfc.vnfc-name", - "relationship-value": "vfw" - } - ] - }, + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, { "related-to": "vf-module", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd/vf-modules/vf-module/a6936a82-e340-4fe2-8e3e-b0a10a0001e2", "relationship-data": [ { "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "17044ef4-e7f3-46a1-af03-e2aa562f23ac" - }, + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + }, { "relationship-key": "vf-module.vf-module-id", - "relationship-value": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2" - } - ] - }, + "relationship-value": "a6936a82-e340-4fe2-8e3e-b0a10a0001e2" + } + ] + }, { - "related-to": "flavor", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/2", + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { - "relationship-key": "flavor.flavor-id", - "relationship-value": "2" - } - ], + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], "related-to-property": [ { - "property-key": "flavor.flavor-name", - "property-value": "m1.small" - } - ] - }, + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, { - "related-to": "image", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/84be7136-301f-4f47-9585-3a2e0f9534af", + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { - "relationship-key": "image.image-id", - "relationship-value": "84be7136-301f-4f47-9585-3a2e0f9534af" - } - ], + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], "related-to-property": [ { - "property-key": "image.image-name", - "property-value": "unknown" + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + }, + "l-interfaces": { + "l-interface": [ + { + "interface-name": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0-vfw_0_int_unprotected_private_port_0-u2lkra6bpz7l", + "interface-id": "bd621b3f-da40-4a8a-a703-3db290295cd9", + "macaddr": "fa:16:3e:0c:27:e4", + "network-name": "4e291560-92f8-4822-9dcf-dd75c04c9617", + "is-port-mirrored": false, + "resource-version": "1556725250653", + "in-maint": false, + "is-ip-unnumbered": false + }, + { + "interface-name": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0-vfw_0_onap_private_port_0-nfvykwarrnxr", + "interface-id": "86bbce7d-51ba-4ad2-a34a-aa2742f9789f", + "macaddr": "fa:16:3e:39:d9:27", + "network-name": "3ef9d123-0d09-4400-8ed0-c0fd5c76aa2b", + "is-port-mirrored": false, + "resource-version": "1556725250531", + "in-maint": false, + "is-ip-unnumbered": false + }, + { + "interface-name": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0-vfw_0_int_protected_private_port_0-bz3hsoxjcgyw", + "interface-id": "b1a8a573-d70d-4b32-b717-21fd6bb549a6", + "macaddr": "fa:16:3e:95:1d:e9", + "network-name": "47cae58a-b052-4f73-8f42-e154c260d5df", + "is-port-mirrored": false, + "resource-version": "1556725250584", + "in-maint": false, + "is-ip-unnumbered": false } - ] - } - ] + ] } } - }, + }, { "generic-vnf": { - "vnf-id": "7b202620-2936-4b0d-b09c-60b411f10f64", - "vnf-name": "vLoadBalancerMS-Vnf-0211-1", - "vnf-type": "vLoadBalancerMS/vLoadBalancerMS 0", + "vnf-id": "f17face5-69cb-4c88-9e0b-7426db7edddd", + "vnf-name": "Ete_vFWCLvFWSNK_7ba1fbde_0", + "vnf-type": "vFWCL 2019-05-01 15:30:/vFWCL_vFWSNK bbefb8ce-2bde 0", + "service-id": "e591441a-e649-4490-82e0-07dac05d674b", "prov-status": "ACTIVE", - "equipment-role": "vLB", "orchestration-status": "Active", - "ipv4-oam-address": "10.0.150.1", - "in-maint": true, + "in-maint": false, "is-closed-loop-disabled": false, - "resource-version": "1552311656338", - "model-invariant-id": "724ab1cf-6120-49e8-b909-849963bed1d6", - "model-version-id": "9d5944d8-2267-4799-824a-0f824e9a978d", - "model-customization-id": "efcd576d-a05e-4798-bb68-79e7d9c80f4c", - "nf-type": "ONAP-LOADBALANCER", - "nf-function": "LOADBALANCER", - "nf-role": "vLB", - "nf-naming-code": "vlb", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/vnfs/vnf/7b202620-2936-4b0d-b09c-60b411f10f64/vnf-data/vnf-topology/", + "resource-version": "1556725242259", + "model-invariant-id": "bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38", + "model-version-id": "189a5070-3bd5-45ac-8a1d-c84ca40b277b", + "model-customization-id": "f3733725-19a1-41a0-ba2d-540bf03862a8", "relationship-list": { "relationship": [ { "related-to": "service-instance", - "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vLB/service-instances/service-instance/101b8fc1-1796-4db1-a4e7-fe39c6a51558", + "relationship-label": "org.onap.relationships.inventory.ComposedOf", + "related-link": "/aai/v15/business/customers/customer/DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8/service-subscriptions/service-subscription/vFWCL/service-instances/service-instance/7be584e2-0bb2-4126-adaf-ced2c77ca0b3", "relationship-data": [ { "relationship-key": "customer.global-customer-id", - "relationship-value": "Demonstration" - }, + "relationship-value": "DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8" + }, { "relationship-key": "service-subscription.service-type", - "relationship-value": "vLB" - }, + "relationship-value": "vFWCL" + }, { "relationship-key": "service-instance.service-instance-id", - "relationship-value": "101b8fc1-1796-4db1-a4e7-fe39c6a51558" - } - ], + "relationship-value": "7be584e2-0bb2-4126-adaf-ced2c77ca0b3" + } + ], "related-to-property": [ { "property-key": "service-instance.service-instance-name", - "property-value": "vLoadBalancerMS-0211-1" - } - ] - }, + "property-value": "Service_Ete_Name7ba1fbde-6187-464a-a62d-d9dd25bdf4e8" + } + ] + }, { "related-to": "platform", - "related-link": "/aai/v11/business/platforms/platform/Test-Platform", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/platforms/platform/Platform-Demonstration", "relationship-data": [ { "relationship-key": "platform.platform-name", - "relationship-value": "Test-Platform" - } - ] - }, - { - "related-to": "line-of-business", - "related-link": "/aai/v11/business/lines-of-business/line-of-business/Test-Business", - "relationship-data": [ - { - "relationship-key": "line-of-business.line-of-business-name", - "relationship-value": "Test-Business" - } - ] - }, + "relationship-value": "Platform-Demonstration" + } + ] + }, { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/58ca8df0-17b8-4aa2-8766-9c6c1a12cec8", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/b75ccb62-131b-4e76-adad-28636fc60fb8", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "58ca8df0-17b8-4aa2-8766-9c6c1a12cec8" - } - ], + "relationship-value": "b75ccb62-131b-4e76-adad-28636fc60fb8" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vdns-ms-0211-1" - } - ] - }, + "property-value": "demofwl01snkfbde" + } + ] + }, { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/6c3b3714-e36c-45af-9f16-7d3a73d99497", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "6c3b3714-e36c-45af-9f16-7d3a73d99497" - } - ], + "relationship-value": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vlb-ms-0211-1" - } - ] - }, - { - "related-to": "availability-zone", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/availability-zones/availability-zone/nova", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionOne" - }, - { - "relationship-key": "availability-zone.availability-zone-name", - "relationship-value": "nova" + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] } - ] - } - ] + ] }, "vf-modules": { "vf-module": [ { - "vf-module-id": "e46c6636-9ce5-4b77-bb1b-455ce9edc892", - "vf-module-name": "vLoadBalancerMS-0211-1", - "heat-stack-id": "vLoadBalancerMS-0211-1/73360253-2dfe-46f6-bcd6-8662a81238ea", - "orchestration-status": "Active", + "vf-module-id": "a6936a82-e340-4fe2-8e3e-b0a10a0001e2", + "vf-module-name": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0", + "heat-stack-id": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0/6769f192-0579-4dab-b4e7-170d334c37dd", + "orchestration-status": "active", "is-base-vf-module": true, - "resource-version": "1552311559802", - "model-invariant-id": "d263fc6d-cfce-4e20-8337-e06f48b474e6", - "model-version-id": "24c0aa10-3979-402c-ad98-20124751b551", - "model-customization-id": "65382eb1-db84-466c-b9d7-4e0f1ba7105f", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/vnfs/vnf/7b202620-2936-4b0d-b09c-60b411f10f64/vnf-data/vf-modules/vf-module/e46c6636-9ce5-4b77-bb1b-455ce9edc892/vf-module-data/vf-module-topology/", + "automated-assignment": false, + "resource-version": "1556725224323", + "model-invariant-id": "e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e", + "model-version-id": "94b18b1d-cc91-4f43-911a-e6348665f292", + "model-customization-id": "47958575-138f-452a-8c8d-d89b595f8164", + "module-index": 0, "relationship-list": { "relationship": [ { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/58ca8df0-17b8-4aa2-8766-9c6c1a12cec8", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/b75ccb62-131b-4e76-adad-28636fc60fb8", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "58ca8df0-17b8-4aa2-8766-9c6c1a12cec8" - } - ], + "relationship-value": "b75ccb62-131b-4e76-adad-28636fc60fb8" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vdns-ms-0211-1" - } - ] - }, + "property-value": "demofwl01snkfbde" + } + ] + }, { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/6c3b3714-e36c-45af-9f16-7d3a73d99497", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "6c3b3714-e36c-45af-9f16-7d3a73d99497" - } - ], + "relationship-value": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vlb-ms-0211-1" - } - ] - } - ] + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + } + ] + } + } + ] + } + } + }, + { + "model-ver": { + "model-version-id": "189a5070-3bd5-45ac-8a1d-c84ca40b277b", + "model-name": "vFWCL_vFWSNK bbefb8ce-2bde", + "model-version": "1.0", + "model-description": "vendor software product", + "resource-version": "1556724755172", + "model-elements": { + "model-element": [ + { + "model-element-uuid": "d4dd3710-eb91-4b15-98d7-a8a90fa28f1b", + "new-data-del-flag": "T", + "cardinality": "unbounded", + "resource-version": "1556724755172", + "relationship-list": { + "relationship": [ + { + "related-to": "model-ver", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/acc6edd8-a8d4-4b93-afaa-0994068be14c/model-vers/model-ver/93a6166f-b3d5-4f06-b4ba-aed48d009ad9", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "acc6edd8-a8d4-4b93-afaa-0994068be14c" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "93a6166f-b3d5-4f06-b4ba-aed48d009ad9" + } + ], + "related-to-property": [ + { + "property-key": "model-ver.model-name", + "property-value": "generic-vnf" + } + ] + } + ] } - } - ] + } + ] + }, + "relationship-list": { + "relationship": [ + { + "related-to": "model-element", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/f6937c86-584c-47ae-ad29-8d41d6f0cc7c/model-vers/model-ver/a03b1102-ac3b-44dd-8862-9b94f1951040/model-elements/model-element/aa23fd76-27cf-4dbe-85c7-dca15bec5ca6/model-elements/model-element/f837e297-a5e8-45d8-9ee8-2a1b436dbddb", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "f6937c86-584c-47ae-ad29-8d41d6f0cc7c" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "a03b1102-ac3b-44dd-8862-9b94f1951040" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "aa23fd76-27cf-4dbe-85c7-dca15bec5ca6" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "f837e297-a5e8-45d8-9ee8-2a1b436dbddb" + } + ] + } + ] + } + } + }, + { + "model": { + "model-invariant-id": "bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38", + "model-type": "resource", + "resource-version": "1556724755172", + "model-vers": { + "model-ver": [ + { + "model-version-id": "189a5070-3bd5-45ac-8a1d-c84ca40b277b", + "model-name": "vFWCL_vFWSNK bbefb8ce-2bde", + "model-version": "1.0", + "model-description": "vendor software product", + "resource-version": "1556724755172", + "relationship-list": { + "relationship": [ + { + "related-to": "model-element", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/f6937c86-584c-47ae-ad29-8d41d6f0cc7c/model-vers/model-ver/a03b1102-ac3b-44dd-8862-9b94f1951040/model-elements/model-element/aa23fd76-27cf-4dbe-85c7-dca15bec5ca6/model-elements/model-element/f837e297-a5e8-45d8-9ee8-2a1b436dbddb", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "f6937c86-584c-47ae-ad29-8d41d6f0cc7c" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "a03b1102-ac3b-44dd-8862-9b94f1951040" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "aa23fd76-27cf-4dbe-85c7-dca15bec5ca6" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "f837e297-a5e8-45d8-9ee8-2a1b436dbddb" + } + ] + } + ] + } + } + ] } } - }, + }, { "service-instance": { - "service-instance-id": "101b8fc1-1796-4db1-a4e7-fe39c6a51558", - "service-instance-name": "vLoadBalancerMS-0211-1", + "service-instance-id": "7be584e2-0bb2-4126-adaf-ced2c77ca0b3", + "service-instance-name": "Service_Ete_Name7ba1fbde-6187-464a-a62d-d9dd25bdf4e8", "environment-context": "General_Revenue-Bearing", "workload-context": "Production", - "model-invariant-id": "1008a768-1b67-407e-88c6-58c82b34ef42", - "model-version-id": "81f8c1cd-f664-4450-b3a4-be645613ab32", - "resource-version": "1552311350334", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/101b8fc1-1796-4db1-a4e7-fe39c6a51558/service-data/service-topology/", + "model-invariant-id": "f6937c86-584c-47ae-ad29-8d41d6f0cc7c", + "model-version-id": "a03b1102-ac3b-44dd-8862-9b94f1951040", + "resource-version": "1556725033469", "orchestration-status": "Active", "relationship-list": { "relationship": [ { "related-to": "project", - "related-link": "/aai/v11/business/projects/project/Test-Project", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/projects/project/Project-Demonstration", "relationship-data": [ { "relationship-key": "project.project-name", - "relationship-value": "Test-Project" - } - ] - }, + "relationship-value": "Project-Demonstration" + } + ] + }, + { + "related-to": "owning-entity", + "relationship-label": "org.onap.relationships.inventory.BelongsTo", + "related-link": "/aai/v15/business/owning-entities/owning-entity/fcc64127-06ba-4761-b325-c681f636ad07", + "relationship-data": [ + { + "relationship-key": "owning-entity.owning-entity-id", + "relationship-value": "fcc64127-06ba-4761-b325-c681f636ad07" + } + ] + }, { "related-to": "generic-vnf", - "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/7b202620-2936-4b0d-b09c-60b411f10f64", + "relationship-label": "org.onap.relationships.inventory.ComposedOf", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9cd7da50-723c-418c-a91d-af2866844a5d", "relationship-data": [ { "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "7b202620-2936-4b0d-b09c-60b411f10f64" - } - ], + "relationship-value": "9cd7da50-723c-418c-a91d-af2866844a5d" + } + ], "related-to-property": [ { "property-key": "generic-vnf.vnf-name", - "property-value": "vLoadBalancerMS-Vnf-0211-1" - } - ] - }, + "property-value": "Ete_vFWCLvPKG_7ba1fbde_1" + } + ] + }, { - "related-to": "owning-entity", - "related-link": "/aai/v11/business/owning-entities/owning-entity/bb94a687-4f3b-40a3-914e-e98037d5ebd2", + "related-to": "generic-vnf", + "relationship-label": "org.onap.relationships.inventory.ComposedOf", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd", "relationship-data": [ { - "relationship-key": "owning-entity.owning-entity-id", - "relationship-value": "bb94a687-4f3b-40a3-914e-e98037d5ebd2" + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + } + ] + } + } + }, + { + "model-ver": { + "model-version-id": "a03b1102-ac3b-44dd-8862-9b94f1951040", + "model-name": "vFWCL 2019-05-01 15:30:", + "model-version": "1.0", + "distribution-status": "DISTRIBUTION_COMPLETE_OK", + "model-description": "catalog service description", + "resource-version": "1556724849102", + "model-elements": { + "model-element": [ + { + "model-element-uuid": "aa23fd76-27cf-4dbe-85c7-dca15bec5ca6", + "new-data-del-flag": "T", + "cardinality": "unbounded", + "resource-version": "1556724755319", + "relationship-list": { + "relationship": [ + { + "related-to": "model-ver", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/82194af1-3c2c-485a-8f44-420e22a9eaa4/model-vers/model-ver/46b92144-923a-4d20-b85a-3cbd847668a9", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "82194af1-3c2c-485a-8f44-420e22a9eaa4" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "46b92144-923a-4d20-b85a-3cbd847668a9" + } + ], + "related-to-property": [ + { + "property-key": "model-ver.model-name", + "property-value": "service-instance" + } + ] + } + ] + } } - ] - } - ] + ] } } - }, + }, + { + "model": { + "model-invariant-id": "f6937c86-584c-47ae-ad29-8d41d6f0cc7c", + "model-type": "service", + "resource-version": "1556724755319", + "model-vers": { + "model-ver": [ + { + "model-version-id": "a03b1102-ac3b-44dd-8862-9b94f1951040", + "model-name": "vFWCL 2019-05-01 15:30:", + "model-version": "1.0", + "distribution-status": "DISTRIBUTION_COMPLETE_OK", + "model-description": "catalog service description", + "resource-version": "1556724849102" + } + ] + } + } + }, { "generic-vnf": { - "vnf-id": "17044ef4-e7f3-46a1-af03-e2aa562f23ac", - "vnf-name": "TestVM-Vnf-0201-1", - "vnf-type": "TestVM/TestVM 0", + "vnf-id": "9cd7da50-723c-418c-a91d-af2866844a5d", + "vnf-name": "Ete_vFWCLvPKG_7ba1fbde_1", + "vnf-type": "vFWCL 2019-05-01 15:30:/vFWCL_vPKG 5101f6c6-8df3 0", + "service-id": "e591441a-e649-4490-82e0-07dac05d674b", "prov-status": "ACTIVE", - "equipment-role": "", "orchestration-status": "Active", - "ipv4-oam-address": "10.0.70.1", - "in-maint": true, + "in-maint": false, "is-closed-loop-disabled": false, - "resource-version": "1549041636264", - "model-invariant-id": "6a4d7971-0778-4655-9eab-9d6031c7ad57", - "model-version-id": "fb6c673c-e5b6-4e0a-9baf-5e0089784de9", - "model-customization-id": "706a3100-dbe5-442e-86c3-c7b823abbec2", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vnf-topology/", + "resource-version": "1556725432402", + "model-invariant-id": "9a243c47-fd5f-43d1-bd2a-f17bd12a61f2", + "model-version-id": "8f79aa0f-da58-4381-9abf-0d6d1926a1eb", + "model-customization-id": "82dd9d05-e056-4c3e-a9b4-8a3d6bd54226", "relationship-list": { "relationship": [ { "related-to": "service-instance", - "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/d41f8217-d464-4458-bf0a-fba33a0f1b31", + "relationship-label": "org.onap.relationships.inventory.ComposedOf", + "related-link": "/aai/v15/business/customers/customer/DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8/service-subscriptions/service-subscription/vFWCL/service-instances/service-instance/7be584e2-0bb2-4126-adaf-ced2c77ca0b3", "relationship-data": [ { "relationship-key": "customer.global-customer-id", - "relationship-value": "Demonstration" - }, + "relationship-value": "DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8" + }, { "relationship-key": "service-subscription.service-type", - "relationship-value": "vFW" - }, + "relationship-value": "vFWCL" + }, { "relationship-key": "service-instance.service-instance-id", - "relationship-value": "d41f8217-d464-4458-bf0a-fba33a0f1b31" - } - ], + "relationship-value": "7be584e2-0bb2-4126-adaf-ced2c77ca0b3" + } + ], "related-to-property": [ { "property-key": "service-instance.service-instance-name", - "property-value": "TestVM-Service-0201-1" - } - ] - }, + "property-value": "Service_Ete_Name7ba1fbde-6187-464a-a62d-d9dd25bdf4e8" + } + ] + }, { "related-to": "platform", - "related-link": "/aai/v11/business/platforms/platform/Test-Platform", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/platforms/platform/Platform-Demonstration", "relationship-data": [ { "relationship-key": "platform.platform-name", - "relationship-value": "Test-Platform" - } - ] - }, - { - "related-to": "line-of-business", - "related-link": "/aai/v11/business/lines-of-business/line-of-business/Test-Business", - "relationship-data": [ - { - "relationship-key": "line-of-business.line-of-business-name", - "relationship-value": "Test-Business" - } - ] - }, + "relationship-value": "Platform-Demonstration" + } + ] + }, { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/80465c73-3481-4d9d-9d3b-ab4016dfffe7", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], + "relationship-value": "80465c73-3481-4d9d-9d3b-ab4016dfffe7" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" + "property-value": "demofwl01pgnfbde" + } + ] } - ] - }, - { - "related-to": "availability-zone", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionTwo/availability-zones/availability-zone/zone-1", - "relationship-data": [ - { - "relationship-key": "cloud-region.cloud-owner", - "relationship-value": "CloudOwner" - }, - { - "relationship-key": "cloud-region.cloud-region-id", - "relationship-value": "RegionTwo" - }, - { - "relationship-key": "availability-zone.availability-zone-name", - "relationship-value": "zone-1" - } - ] - } - ] + ] }, "vf-modules": { "vf-module": [ { - "vf-module-id": "0afde97a-3e3f-4597-aec3-e5488c0f20b7", - "vf-module-name": "TestVM-0201-1", - "heat-stack-id": "TestVM-0201-1/aee4d7e5-b4a0-4261-b3cf-bb23348a3d99", - "orchestration-status": "Active", + "vf-module-id": "04bcd430-e1ef-4da5-a67e-3dd80463a725", + "vf-module-name": "Vfmodule_Ete_vFWCLvPKG_7ba1fbde_1", + "heat-stack-id": "Vfmodule_Ete_vFWCLvPKG_7ba1fbde_1/6f9827e8-68fb-45e9-a19e-e2246a43df14", + "orchestration-status": "active", "is-base-vf-module": true, - "resource-version": "1549039401119", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/0afde97a-3e3f-4597-aec3-e5488c0f20b7/vf-module-data/vf-module-topology/" - }, - { - "vf-module-id": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "vf-module-name": "TestVM-0201-2", - "heat-stack-id": "TestVM-0201-2/1b9db6b8-620b-46f1-935a-8a61c294a98b", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549041447373", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2/vf-module-data/vf-module-topology/", + "automated-assignment": false, + "resource-version": "1556725420287", + "model-invariant-id": "4eb0297d-1256-4ba7-9ed4-7bc44b6a0031", + "model-version-id": "bb755929-a025-48cd-b987-59cb4734c059", + "model-customization-id": "bfcebc88-8d57-449d-906c-f508b5bd0fe0", + "module-index": 0, "relationship-list": { "relationship": [ { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/80465c73-3481-4d9d-9d3b-ab4016dfffe7", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" - }, + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], + "relationship-value": "80465c73-3481-4d9d-9d3b-ab4016dfffe7" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" - } - ] - } - ] + "property-value": "demofwl01pgnfbde" + } + ] + } + ] } - } - ] + } + ] } } - }, - { - "vf-module": { - "vf-module-id": "0afde97a-3e3f-4597-aec3-e5488c0f20b7", - "vf-module-name": "TestVM-0201-1", - "heat-stack-id": "TestVM-0201-1/aee4d7e5-b4a0-4261-b3cf-bb23348a3d99", - "orchestration-status": "Active", - "is-base-vf-module": true, - "resource-version": "1549039401119", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/0afde97a-3e3f-4597-aec3-e5488c0f20b7/vf-module-data/vf-module-topology/" - } - }, + }, { "vf-module": { - "vf-module-id": "33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2", - "vf-module-name": "TestVM-0201-2", - "heat-stack-id": "TestVM-0201-2/1b9db6b8-620b-46f1-935a-8a61c294a98b", - "orchestration-status": "Active", + "vf-module-id": "a6936a82-e340-4fe2-8e3e-b0a10a0001e2", + "vf-module-name": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0", + "heat-stack-id": "Vfmodule_Ete_vFWCLvFWSNK_7ba1fbde_0/6769f192-0579-4dab-b4e7-170d334c37dd", + "orchestration-status": "active", "is-base-vf-module": true, - "resource-version": "1549041447373", - "model-invariant-id": "6af68fdb-6479-43e2-8989-938f06c994bd", - "model-version-id": "16d1834e-d834-431f-b064-98c469c6505d", - "model-customization-id": "29ffb122-22c8-48d2-b152-b52d9e81e910", - "selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/d41f8217-d464-4458-bf0a-fba33a0f1b31/service-data/vnfs/vnf/17044ef4-e7f3-46a1-af03-e2aa562f23ac/vnf-data/vf-modules/vf-module/33f9e03d-2fbd-4e9c-8e73-ce6b12f0b3d2/vf-module-data/vf-module-topology/", + "automated-assignment": false, + "resource-version": "1556725224323", + "model-invariant-id": "e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e", + "model-version-id": "94b18b1d-cc91-4f43-911a-e6348665f292", + "model-customization-id": "47958575-138f-452a-8c8d-d89b595f8164", + "module-index": 0, "relationship-list": { "relationship": [ { "related-to": "vserver", - "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/3f2aaef74ecb4b19b35e26d0849fe9a2/vservers/vserver/e7f1db09-ff78-44fc-b256-69095c5556fb", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/b75ccb62-131b-4e76-adad-28636fc60fb8", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" - }, + }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" - }, + }, { "relationship-key": "tenant.tenant-id", - "relationship-value": "3f2aaef74ecb4b19b35e26d0849fe9a2" + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "b75ccb62-131b-4e76-adad-28636fc60fb8" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01snkfbde" + } + ] }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, { "relationship-key": "vserver.vserver-id", - "relationship-value": "e7f1db09-ff78-44fc-b256-69095c5556fb" - } - ], + "relationship-value": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f" + } + ], "related-to-property": [ { "property-key": "vserver.vserver-name", - "property-value": "vfw-vm-0201-2" + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + } + ] + } + } + }, + { + "model-ver": { + "model-version-id": "94b18b1d-cc91-4f43-911a-e6348665f292", + "model-name": "VfwclVfwsnkBbefb8ce2bde..base_vfw..module-0", + "model-version": "1", + "resource-version": "1556724754936", + "model-elements": { + "model-element": [ + { + "model-element-uuid": "acdee717-9602-4c9c-acf4-8522b65c7161", + "new-data-del-flag": "T", + "cardinality": "unbounded", + "resource-version": "1556724754936", + "relationship-list": { + "relationship": [ + { + "related-to": "model-ver", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/ef86f9c5-2165-44f3-8fc3-96018b609ea5/model-vers/model-ver/c00563ae-812b-4e62-8330-7c4d0f47088a", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "ef86f9c5-2165-44f3-8fc3-96018b609ea5" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "c00563ae-812b-4e62-8330-7c4d0f47088a" + } + ], + "related-to-property": [ + { + "property-key": "model-ver.model-name", + "property-value": "vf-module" + } + ] + } + ] + } + } + ] + }, + "relationship-list": { + "relationship": [ + { + "related-to": "model-element", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38/model-vers/model-ver/189a5070-3bd5-45ac-8a1d-c84ca40b277b/model-elements/model-element/d4dd3710-eb91-4b15-98d7-a8a90fa28f1b/model-elements/model-element/d272cfdd-0700-43a9-8cab-b2fcd80c803a", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "189a5070-3bd5-45ac-8a1d-c84ca40b277b" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "d4dd3710-eb91-4b15-98d7-a8a90fa28f1b" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "d272cfdd-0700-43a9-8cab-b2fcd80c803a" + } + ] + } + ] + } + } + }, + { + "model": { + "model-invariant-id": "e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e", + "model-type": "resource", + "resource-version": "1556724754936", + "model-vers": { + "model-ver": [ + { + "model-version-id": "94b18b1d-cc91-4f43-911a-e6348665f292", + "model-name": "VfwclVfwsnkBbefb8ce2bde..base_vfw..module-0", + "model-version": "1", + "resource-version": "1556724754936", + "relationship-list": { + "relationship": [ + { + "related-to": "model-element", + "relationship-label": "org.onap.relationships.inventory.IsA", + "related-link": "/aai/v15/service-design-and-creation/models/model/bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38/model-vers/model-ver/189a5070-3bd5-45ac-8a1d-c84ca40b277b/model-elements/model-element/d4dd3710-eb91-4b15-98d7-a8a90fa28f1b/model-elements/model-element/d272cfdd-0700-43a9-8cab-b2fcd80c803a", + "relationship-data": [ + { + "relationship-key": "model.model-invariant-id", + "relationship-value": "bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38" + }, + { + "relationship-key": "model-ver.model-version-id", + "relationship-value": "189a5070-3bd5-45ac-8a1d-c84ca40b277b" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "d4dd3710-eb91-4b15-98d7-a8a90fa28f1b" + }, + { + "relationship-key": "model-element.model-element-uuid", + "relationship-value": "d272cfdd-0700-43a9-8cab-b2fcd80c803a" + } + ] + } + ] + } } - ] - } - ] + ] } } - }, + }, { "tenant": { - "tenant-id": "tenant1-16197-as988q", - "tenant-name": "tenant-name-16197-as988q", - "resource-version": "1550769793637", + "tenant-id": "41d6d38489bd40b09ea8a6b6b852dcbd", + "tenant-name": "Integration-SB-00", + "resource-version": "1556561749631", "vservers": { "vserver": [ { - "vserver-id": "vserver1-16197-as988q", - "vserver-name": "vserverName", - "vserver-name2": "vserverTE-name2-as988q", + "vserver-id": "f7807a27-1c45-4e79-9e61-6fb33ee4b7e7", + "vserver-name": "Ete_vFWCLvFWSNK_38fbaf46_0", + "vserver-name2": "Ete_vFWCLvFWSNK_38fbaf46_0", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/f7807a27-1c45-4e79-9e61-6fb33ee4b7e7", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556564836725", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/0b34a0bb-84ea-424a-a0ce-a2041e115025", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "0b34a0bb-84ea-424a-a0ce-a2041e115025" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWCLvFWSNK_38fbaf46_0" + } + ] + }, + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/Ete_vFWCLvFWSNK_38fbaf46_0", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "Ete_vFWCLvFWSNK_38fbaf46_0" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/0b34a0bb-84ea-424a-a0ce-a2041e115025/vf-modules/vf-module/32a2a6e2-27a4-4995-8e3d-50a65e8bfeb6", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "0b34a0bb-84ea-424a-a0ce-a2041e115025" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "32a2a6e2-27a4-4995-8e3d-50a65e8bfeb6" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "900dc2db-1d65-41ef-8b13-9b9b605cb0bd", + "vserver-name": "vofwl01snkf0ef", + "vserver-name2": "vofwl01snkf0ef", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/900dc2db-1d65-41ef-8b13-9b9b605cb0bd", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556567725997", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9a216ccb-6536-4dc3-a789-0634591342d3", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9a216ccb-6536-4dc3-a789-0634591342d3" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvFWSNK_8edbf0ef_1" + } + ] + }, + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01snkf0ef", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01snkf0ef" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9a216ccb-6536-4dc3-a789-0634591342d3/vf-modules/vf-module/3ecc64d4-3861-4024-8fd2-d81d2d6e539c", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9a216ccb-6536-4dc3-a789-0634591342d3" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "3ecc64d4-3861-4024-8fd2-d81d2d6e539c" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "cc93aa76-e88d-43a6-8e3b-331918dd3eab", + "vserver-name": "demofwl01pgnaf46", + "vserver-name2": "demofwl01pgnaf46", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/cc93aa76-e88d-43a6-8e3b-331918dd3eab", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556565009305", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/demofwl01pgnaf46", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "demofwl01pgnaf46" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9fdccaed-6809-457d-9178-9f2187b54e15", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9fdccaed-6809-457d-9178-9f2187b54e15" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWCLvPKG_38fbaf46_1" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9fdccaed-6809-457d-9178-9f2187b54e15/vf-modules/vf-module/475496f6-38d1-43df-a995-64a387f6c788", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9fdccaed-6809-457d-9178-9f2187b54e15" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "475496f6-38d1-43df-a995-64a387f6c788" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "ab342d19-f3e6-420b-8481-ed7f16c43dfa", + "vserver-name": "demofwl01snkaf46", + "vserver-name2": "demofwl01snkaf46", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/ab342d19-f3e6-420b-8481-ed7f16c43dfa", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556564837108", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/0b34a0bb-84ea-424a-a0ce-a2041e115025", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "0b34a0bb-84ea-424a-a0ce-a2041e115025" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWCLvFWSNK_38fbaf46_0" + } + ] + }, + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/demofwl01snkaf46", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "demofwl01snkaf46" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/0b34a0bb-84ea-424a-a0ce-a2041e115025/vf-modules/vf-module/32a2a6e2-27a4-4995-8e3d-50a65e8bfeb6", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "0b34a0bb-84ea-424a-a0ce-a2041e115025" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "32a2a6e2-27a4-4995-8e3d-50a65e8bfeb6" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "2a9ce7fd-ecae-4301-b2eb-0b3f42df2eb8", + "vserver-name": "vofwl01vfw8ab3", + "vserver-name2": "vofwl01vfw8ab3", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/2a9ce7fd-ecae-4301-b2eb-0b3f42df2eb8", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556573557549", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01vfw8ab3", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01vfw8ab3" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/b2d0096d-8d50-4f05-b603-dfe95b07f1ea", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "b2d0096d-8d50-4f05-b603-dfe95b07f1ea" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvFWSNK_8b908ab3_1" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/b2d0096d-8d50-4f05-b603-dfe95b07f1ea/vf-modules/vf-module/acc2eaad-1127-483a-80d2-ac5de1ec942a", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "b2d0096d-8d50-4f05-b603-dfe95b07f1ea" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "acc2eaad-1127-483a-80d2-ac5de1ec942a" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "91277106-90d3-450d-8a10-9aa9a8727d6e", + "vserver-name": "vofwl01pgnf0ef", + "vserver-name2": "vofwl01pgnf0ef", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/91277106-90d3-450d-8a10-9aa9a8727d6e", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556567540588", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9e34e80d-3995-479c-8c53-54e621840ae0", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9e34e80d-3995-479c-8c53-54e621840ae0" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvPKG_8edbf0ef_0" + } + ] + }, + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01pgnf0ef", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01pgnf0ef" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9e34e80d-3995-479c-8c53-54e621840ae0/vf-modules/vf-module/02e31bf2-8a33-418f-85f4-6b1d2903b3b7", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9e34e80d-3995-479c-8c53-54e621840ae0" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "02e31bf2-8a33-418f-85f4-6b1d2903b3b7" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "801da076-918a-4911-b87c-b44ce62822a9", + "vserver-name": "vofwl01pgn8ab3", + "vserver-name2": "vofwl01pgn8ab3", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/801da076-918a-4911-b87c-b44ce62822a9", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556573356532", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01pgn8ab3", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01pgn8ab3" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/7f0cccbf-408d-466c-8045-a7fd677bb24f", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "7f0cccbf-408d-466c-8045-a7fd677bb24f" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvPKG_8b908ab3_0" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/7f0cccbf-408d-466c-8045-a7fd677bb24f/vf-modules/vf-module/1e130341-7ccd-46bc-bf83-3453c1ba5fe3", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "7f0cccbf-408d-466c-8045-a7fd677bb24f" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "1e130341-7ccd-46bc-bf83-3453c1ba5fe3" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "8a503052-a89c-4035-94ec-b3ab1e157b49", + "vserver-name": "vofwl01vfwf0ef", + "vserver-name2": "vofwl01vfwf0ef", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/8a503052-a89c-4035-94ec-b3ab1e157b49", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556567726399", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9a216ccb-6536-4dc3-a789-0634591342d3", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9a216ccb-6536-4dc3-a789-0634591342d3" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvFWSNK_8edbf0ef_1" + } + ] + }, + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01vfwf0ef", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01vfwf0ef" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9a216ccb-6536-4dc3-a789-0634591342d3/vf-modules/vf-module/3ecc64d4-3861-4024-8fd2-d81d2d6e539c", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9a216ccb-6536-4dc3-a789-0634591342d3" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "3ecc64d4-3861-4024-8fd2-d81d2d6e539c" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "39a77e27-ced1-444c-a5b6-f73135e09225", + "vserver-name": "vofwl01snk8ab3", + "vserver-name2": "vofwl01snk8ab3", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/39a77e27-ced1-444c-a5b6-f73135e09225", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556573557017", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01snk8ab3", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01snk8ab3" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/b2d0096d-8d50-4f05-b603-dfe95b07f1ea", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "b2d0096d-8d50-4f05-b603-dfe95b07f1ea" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvFWSNK_8b908ab3_1" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/b2d0096d-8d50-4f05-b603-dfe95b07f1ea/vf-modules/vf-module/acc2eaad-1127-483a-80d2-ac5de1ec942a", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "b2d0096d-8d50-4f05-b603-dfe95b07f1ea" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "acc2eaad-1127-483a-80d2-ac5de1ec942a" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "0e581a27-5184-48b1-88b1-e81c5b5a450c", + "vserver-name": "vofwl01snk8ab3", + "vserver-name2": "vofwl01snk8ab3", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/0e581a27-5184-48b1-88b1-e81c5b5a450c", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556573767443", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01snk8ab3", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01snk8ab3" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvFWSNK_8b908ab3_2" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073/vf-modules/vf-module/06a08cc1-37a5-4ec6-bb85-e5ee4d69d0f0", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "06a08cc1-37a5-4ec6-bb85-e5ee4d69d0f0" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "c103ce57-6662-49e0-a589-ebfd91f05c79", + "vserver-name": "vofwl01vfw8ab3", + "vserver-name2": "vofwl01vfw8ab3", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/c103ce57-6662-49e0-a589-ebfd91f05c79", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556573767717", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/vofwl01vfw8ab3", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "vofwl01vfw8ab3" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWDTvFWSNK_8b908ab3_2" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073/vf-modules/vf-module/06a08cc1-37a5-4ec6-bb85-e5ee4d69d0f0", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "7d4ae51b-4d2e-45f7-a0a5-6fd42dc8a073" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "06a08cc1-37a5-4ec6-bb85-e5ee4d69d0f0" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "b75ccb62-131b-4e76-adad-28636fc60fb8", + "vserver-name": "demofwl01snkfbde", + "vserver-name2": "demofwl01snkfbde", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/b75ccb62-131b-4e76-adad-28636fc60fb8", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556725250327", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/demofwl01snkfbde", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "demofwl01snkfbde" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd/vf-modules/vf-module/a6936a82-e340-4fe2-8e3e-b0a10a0001e2", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "a6936a82-e340-4fe2-8e3e-b0a10a0001e2" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f", + "vserver-name": "Ete_vFWCLvFWSNK_7ba1fbde_0", + "vserver-name2": "Ete_vFWCLvFWSNK_7ba1fbde_0", + "prov-status": "ACTIVE", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1556725250281", + "relationship-list": { + "relationship": [ + { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/Ete_vFWCLvFWSNK_7ba1fbde_0", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, + { + "related-to": "generic-vnf", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/f17face5-69cb-4c88-9e0b-7426db7edddd/vf-modules/vf-module/a6936a82-e340-4fe2-8e3e-b0a10a0001e2", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "f17face5-69cb-4c88-9e0b-7426db7edddd" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "a6936a82-e340-4fe2-8e3e-b0a10a0001e2" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] + } + }, + { + "vserver-id": "80465c73-3481-4d9d-9d3b-ab4016dfffe7", + "vserver-name": "demofwl01pgnfbde", + "vserver-name2": "demofwl01pgnfbde", "prov-status": "ACTIVE", - "vserver-selflink": "TRINITY vserverLink", + "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/80465c73-3481-4d9d-9d3b-ab4016dfffe7", "in-maint": false, "is-closed-loop-disabled": false, - "resource-version": "1550769794551", + "resource-version": "1556725436997", "relationship-list": { "relationship": [ { + "related-to": "vnfc", + "relationship-label": "tosca.relationships.HostedOn", + "related-link": "/aai/v15/network/vnfcs/vnfc/demofwl01pgnfbde", + "relationship-data": [ + { + "relationship-key": "vnfc.vnfc-name", + "relationship-value": "demofwl01pgnfbde" + } + ] + }, + { "related-to": "generic-vnf", "relationship-label": "tosca.relationships.HostedOn", - "related-link": "/aai/v16/network/generic-vnfs/generic-vnf/VNF1-16197-as988q", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9cd7da50-723c-418c-a91d-af2866844a5d", "relationship-data": [ { "relationship-key": "generic-vnf.vnf-id", - "relationship-value": "VNF1-16197-as988q" - } - ], + "relationship-value": "9cd7da50-723c-418c-a91d-af2866844a5d" + } + ], "related-to-property": [ { "property-key": "generic-vnf.vnf-name", - "property-value": "vnf1Name" - } - ] - } - ] + "property-value": "Ete_vFWCLvPKG_7ba1fbde_1" + } + ] + }, + { + "related-to": "vf-module", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/network/generic-vnfs/generic-vnf/9cd7da50-723c-418c-a91d-af2866844a5d/vf-modules/vf-module/04bcd430-e1ef-4da5-a67e-3dd80463a725", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "9cd7da50-723c-418c-a91d-af2866844a5d" + }, + { + "relationship-key": "vf-module.vf-module-id", + "relationship-value": "04bcd430-e1ef-4da5-a67e-3dd80463a725" + } + ] + }, + { + "related-to": "image", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/images/image/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "image.image-id", + "relationship-value": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b" + } + ], + "related-to-property": [ + { + "property-key": "image.image-name", + "property-value": "unknown" + } + ] + }, + { + "related-to": "flavor", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/flavors/flavor/764efb04-5a46-4806-a766-2bdd24559f39", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "flavor.flavor-id", + "relationship-value": "764efb04-5a46-4806-a766-2bdd24559f39" + } + ], + "related-to-property": [ + { + "property-key": "flavor.flavor-name", + "property-value": "m1.medium" + } + ] + } + ] } - } - ] + } + ] + }, + "relationship-list": { + "relationship": [ + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vLB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vLB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vIMS", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vIMS" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vCPE", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vCPE" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vFW", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/gNB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "gNB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vIMS", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vIMS" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/gNB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "gNB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vLB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vLB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_8568f3da-8821-4600-b95f-6224f15943f7/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_8568f3da-8821-4600-b95f-6224f15943f7" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_38fbaf46-8ae5-4b08-ad4d-2cb552ca2eb0/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_38fbaf46-8ae5-4b08-ad4d-2cb552ca2eb0" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_8edbf0ef-8460-4965-9e56-7e4637c31a41/service-subscriptions/service-subscription/vFWDT", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_8edbf0ef-8460-4965-9e56-7e4637c31a41" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWDT" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vCPE", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vCPE" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_5dbd369e-2174-430a-9c15-b9a090b99591/service-subscriptions/service-subscription/vFWDT", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_5dbd369e-2174-430a-9c15-b9a090b99591" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWDT" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_8b908ab3-b9e6-41a9-a4e2-31cc9c5114a2/service-subscriptions/service-subscription/vFWDT", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_8b908ab3-b9e6-41a9-a4e2-31cc9c5114a2" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWDT" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + } + ] } } - }, + }, { "cloud-region": { - "cloud-owner": "co-16197-01-as988q", - "cloud-region-id": "cr-16197-01-as988q", - "resource-version": "1550769792672", - "orchestration-disabled": false, - "in-maint": false, + "cloud-owner": "CloudOwner", + "cloud-region-id": "RegionOne", + "cloud-type": "SharedNode", + "owner-defined-type": "OwnerType", + "cloud-region-version": "v1", + "cloud-zone": "CloudZone", + "resource-version": "1556561749631", "tenants": { "tenant": [ { - "tenant-id": "tenant1-16197-as988q", - "tenant-name": "tenant-name-16197-as988q", - "resource-version": "1550769793637" - } - ] + "tenant-id": "41d6d38489bd40b09ea8a6b6b852dcbd", + "tenant-name": "Integration-SB-00", + "resource-version": "1556561749631", + "relationship-list": { + "relationship": [ + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vLB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vLB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vIMS", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vIMS" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vCPE", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vCPE" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vFW", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/gNB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "gNB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vIMS", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vIMS" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/gNB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "gNB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vLB", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vLB" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_8568f3da-8821-4600-b95f-6224f15943f7/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_8568f3da-8821-4600-b95f-6224f15943f7" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_38fbaf46-8ae5-4b08-ad4d-2cb552ca2eb0/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_38fbaf46-8ae5-4b08-ad4d-2cb552ca2eb0" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Demonstration" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_8edbf0ef-8460-4965-9e56-7e4637c31a41/service-subscriptions/service-subscription/vFWDT", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_8edbf0ef-8460-4965-9e56-7e4637c31a41" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWDT" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/vCPE", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "SDN-ETHERNET-INTERNET" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vCPE" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_5dbd369e-2174-430a-9c15-b9a090b99591/service-subscriptions/service-subscription/vFWDT", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_5dbd369e-2174-430a-9c15-b9a090b99591" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWDT" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_8b908ab3-b9e6-41a9-a4e2-31cc9c5114a2/service-subscriptions/service-subscription/vFWDT", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_8b908ab3-b9e6-41a9-a4e2-31cc9c5114a2" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWDT" + } + ] + }, + { + "related-to": "service-subscription", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/business/customers/customer/DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8/service-subscriptions/service-subscription/vFWCL", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "DemoCust_7ba1fbde-6187-464a-a62d-d9dd25bdf4e8" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFWCL" + } + ] + } + ] + } + } + ] + }, + "flavors": { + "flavor": [ + { + "flavor-id": "764efb04-5a46-4806-a766-2bdd24559f39", + "flavor-name": "m1.medium", + "flavor-vcpus": 2, + "flavor-ram": 4096, + "flavor-disk": 40, + "flavor-ephemeral": 0, + "flavor-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/flavors/764efb04-5a46-4806-a766-2bdd24559f39", + "resource-version": "1556564836050", + "relationship-list": { + "relationship": [ + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f7807a27-1c45-4e79-9e61-6fb33ee4b7e7", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "f7807a27-1c45-4e79-9e61-6fb33ee4b7e7" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "Ete_vFWCLvFWSNK_38fbaf46_0" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/900dc2db-1d65-41ef-8b13-9b9b605cb0bd", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "900dc2db-1d65-41ef-8b13-9b9b605cb0bd" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01snkf0ef" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/cc93aa76-e88d-43a6-8e3b-331918dd3eab", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "cc93aa76-e88d-43a6-8e3b-331918dd3eab" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01pgnaf46" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/ab342d19-f3e6-420b-8481-ed7f16c43dfa", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "ab342d19-f3e6-420b-8481-ed7f16c43dfa" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01snkaf46" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/2a9ce7fd-ecae-4301-b2eb-0b3f42df2eb8", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "2a9ce7fd-ecae-4301-b2eb-0b3f42df2eb8" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01vfw8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/91277106-90d3-450d-8a10-9aa9a8727d6e", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "91277106-90d3-450d-8a10-9aa9a8727d6e" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01pgnf0ef" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/801da076-918a-4911-b87c-b44ce62822a9", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "801da076-918a-4911-b87c-b44ce62822a9" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01pgn8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/8a503052-a89c-4035-94ec-b3ab1e157b49", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "8a503052-a89c-4035-94ec-b3ab1e157b49" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01vfwf0ef" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/39a77e27-ced1-444c-a5b6-f73135e09225", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "39a77e27-ced1-444c-a5b6-f73135e09225" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01snk8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/0e581a27-5184-48b1-88b1-e81c5b5a450c", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "0e581a27-5184-48b1-88b1-e81c5b5a450c" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01snk8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/c103ce57-6662-49e0-a589-ebfd91f05c79", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "c103ce57-6662-49e0-a589-ebfd91f05c79" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01vfw8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/b75ccb62-131b-4e76-adad-28636fc60fb8", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "b75ccb62-131b-4e76-adad-28636fc60fb8" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01snkfbde" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/80465c73-3481-4d9d-9d3b-ab4016dfffe7", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "80465c73-3481-4d9d-9d3b-ab4016dfffe7" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01pgnfbde" + } + ] + } + ] + } + } + ] + }, + "images": { + "image": [ + { + "image-id": "42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "image-name": "unknown", + "image-architecture": "unknown", + "image-os-distro": "unknown", + "image-os-version": "unknown", + "application": "unknown", + "application-vendor": "unknown", + "application-version": "unknown", + "image-selflink": "http://10.12.25.2:8774/41d6d38489bd40b09ea8a6b6b852dcbd/images/42fd42f8-cf81-4f4c-a552-d4b124f83b0b", + "resource-version": "1556564834957", + "relationship-list": { + "relationship": [ + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f7807a27-1c45-4e79-9e61-6fb33ee4b7e7", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "f7807a27-1c45-4e79-9e61-6fb33ee4b7e7" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "Ete_vFWCLvFWSNK_38fbaf46_0" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/900dc2db-1d65-41ef-8b13-9b9b605cb0bd", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "900dc2db-1d65-41ef-8b13-9b9b605cb0bd" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01snkf0ef" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/cc93aa76-e88d-43a6-8e3b-331918dd3eab", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "cc93aa76-e88d-43a6-8e3b-331918dd3eab" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01pgnaf46" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/ab342d19-f3e6-420b-8481-ed7f16c43dfa", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "ab342d19-f3e6-420b-8481-ed7f16c43dfa" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01snkaf46" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/2a9ce7fd-ecae-4301-b2eb-0b3f42df2eb8", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "2a9ce7fd-ecae-4301-b2eb-0b3f42df2eb8" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01vfw8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/91277106-90d3-450d-8a10-9aa9a8727d6e", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "91277106-90d3-450d-8a10-9aa9a8727d6e" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01pgnf0ef" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/801da076-918a-4911-b87c-b44ce62822a9", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "801da076-918a-4911-b87c-b44ce62822a9" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01pgn8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/8a503052-a89c-4035-94ec-b3ab1e157b49", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "8a503052-a89c-4035-94ec-b3ab1e157b49" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01vfwf0ef" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/39a77e27-ced1-444c-a5b6-f73135e09225", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "39a77e27-ced1-444c-a5b6-f73135e09225" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01snk8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/0e581a27-5184-48b1-88b1-e81c5b5a450c", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "0e581a27-5184-48b1-88b1-e81c5b5a450c" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01snk8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/c103ce57-6662-49e0-a589-ebfd91f05c79", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "c103ce57-6662-49e0-a589-ebfd91f05c79" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "vofwl01vfw8ab3" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/b75ccb62-131b-4e76-adad-28636fc60fb8", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "b75ccb62-131b-4e76-adad-28636fc60fb8" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01snkfbde" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/f953c499-4b1e-426b-8c6d-e9e9f1fc730f", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "f953c499-4b1e-426b-8c6d-e9e9f1fc730f" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "Ete_vFWCLvFWSNK_7ba1fbde_0" + } + ] + }, + { + "related-to": "vserver", + "relationship-label": "org.onap.relationships.inventory.Uses", + "related-link": "/aai/v15/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/41d6d38489bd40b09ea8a6b6b852dcbd/vservers/vserver/80465c73-3481-4d9d-9d3b-ab4016dfffe7", + "relationship-data": [ + { + "relationship-key": "cloud-region.cloud-owner", + "relationship-value": "CloudOwner" + }, + { + "relationship-key": "cloud-region.cloud-region-id", + "relationship-value": "RegionOne" + }, + { + "relationship-key": "tenant.tenant-id", + "relationship-value": "41d6d38489bd40b09ea8a6b6b852dcbd" + }, + { + "relationship-key": "vserver.vserver-id", + "relationship-value": "80465c73-3481-4d9d-9d3b-ab4016dfffe7" + } + ], + "related-to-property": [ + { + "property-key": "vserver.vserver-name", + "property-value": "demofwl01pgnfbde" + } + ] + } + ] + } + } + ] + }, + "availability-zones": { + "availability-zone": [ + { + "availability-zone-name": "nova", + "hypervisor-type": "KVM", + "operational-status": "Active", + "resource-version": "1556561761360" + } + ] + }, + "relationship-list": { + "relationship": [ + { + "related-to": "complex", + "relationship-label": "org.onap.relationships.inventory.LocatedIn", + "related-link": "/aai/v15/cloud-infrastructure/complexes/complex/clli1", + "relationship-data": [ + { + "relationship-key": "complex.physical-location-id", + "relationship-value": "clli1" + } + ] + } + ] } } - } - ] + } + ] } diff --git a/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/AaiSimulatorTest.java b/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/AaiSimulatorTest.java index 51f764f1a..a03010a00 100644 --- a/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/AaiSimulatorTest.java +++ b/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/AaiSimulatorTest.java @@ -77,9 +77,9 @@ public class AaiSimulatorTest { @Test public void testCqGet() { final AaiCqResponse response = new AaiManager(new RestManager()).getCustomQueryResponse("http://localhost:6666", - "testUser", "testPass", UUID.randomUUID(), "vfw-vm-0201-2"); + "testUser", "testPass", UUID.randomUUID(), "Ete_vFWCLvFWSNK_7ba1fbde_0"); assertNotNull(response); - assertEquals(response.getVserver().getVserverName(), "vfw-vm-0201-2"); + assertEquals(response.getVserver().getVserverName(), "Ete_vFWCLvFWSNK_7ba1fbde_0"); } @Test diff --git a/models-provider/src/main/resources/dummyimpl/DummyToscaPolicyTypeGetResponse.json b/models-provider/src/main/resources/dummyimpl/DummyToscaPolicyTypeGetResponse.json index c28c2d2f2..477d4477a 100644 --- a/models-provider/src/main/resources/dummyimpl/DummyToscaPolicyTypeGetResponse.json +++ b/models-provider/src/main/resources/dummyimpl/DummyToscaPolicyTypeGetResponse.json @@ -1,223 +1,213 @@ { - "tosca_definitions_version": "tosca_simple_yaml_1_0_0", - "policy_types": [ - { - "onap.policies.Monitoring": { - "derived_from": "tosca.policies.Root", - "description": "a base policy type for all policies that governs monitoring provisioning" - } - }, - { - "onap.policy.monitoring.cdap.tca.hi.lo.app": { - "derived_from": "onap.policies.Monitoring", - "version": "1.0.0", - "properties": { - "tca_policy": { - "type": "map", - "description": "TCA Policy JSON", - "entry_schema": { - "type": "onap.datatypes.monitoring.tca_policy" - } - } - } - } + "tosca_definitions_version": "tosca_simple_yaml_1_0_0", + "policy_types": { + "onap.policies.Monitoring": { + "derived_from": "tosca.policies.Root", + "description": "a base policy type for all policies that governs monitoring provisioning" + }, + "onap.policy.monitoring.cdap.tca.hi.lo.app": { + "derived_from": "onap.policies.Monitoring", + "version": "1.0.0", + "properties": { + "tca_policy": { + "type": "map", + "description": "TCA Policy JSON", + "entry_schema": { + "type": "onap.datatypes.monitoring.tca_policy" + } + } } - ], - "data_types": [ - { - "onap.datatypes.monitoring.metricsPerEventName": { - "derived_from": "tosca.datatypes.Root", - "properties": { - "controlLoopSchemaType": { - "type": "string", - "required": true, - "description": "Specifies Control Loop Schema Type for the event Name e.g. VNF, VM", - "constraints": [ - { - "valid_values": [ - "VM", - "VNF" - ] - } - ] - }, - "eventName": { - "type": "string", - "required": true, - "description": "Event name to which thresholds need to be applied" - }, - "policyName": { - "type": "string", - "required": true, - "description": "TCA Policy Scope Name" - }, - "policyScope": { - "type": "string", - "required": true, - "description": "TCA Policy Scope" - }, - "policyVersion": { - "type": "string", - "required": true, - "description": "TCA Policy Scope Version" - }, - "thresholds": { - "type": "list", - "required": true, - "description": "Thresholds associated with eventName", - "entry_schema": { - "type": "onap.datatypes.monitoring.thresholds" - } - } + } + }, + "data_types": { + "onap.datatypes.monitoring.metricsPerEventName": { + "derived_from": "tosca.datatypes.Root", + "properties": { + "controlLoopSchemaType": { + "type": "string", + "required": true, + "description": "Specifies Control Loop Schema Type for the event Name e.g. VNF, VM", + "constraints": [ + { + "valid_values": [ + "VM", + "VNF" + ] } - } + ] + }, + "eventName": { + "type": "string", + "required": true, + "description": "Event name to which thresholds need to be applied" + }, + "policyName": { + "type": "string", + "required": true, + "description": "TCA Policy Scope Name" + }, + "policyScope": { + "type": "string", + "required": true, + "description": "TCA Policy Scope" + }, + "policyVersion": { + "type": "string", + "required": true, + "description": "TCA Policy Scope Version" + }, + "thresholds": { + "type": "list", + "required": true, + "description": "Thresholds associated with eventName", + "entry_schema": { + "type": "onap.datatypes.monitoring.thresholds" + } + } + } + } + }, + "onap.datatypes.monitoring.tca_policy": { + "derived_from": "tosca.datatypes.Root", + "properties": { + "domain": { + "type": "string", + "required": true, + "description": "Domain name to which TCA needs to be applied", + "default": "measurementsForVfScaling", + "constraints": [ + { + "equal": "measurementsForVfScaling" + } + ] }, - { - "onap.datatypes.monitoring.tca_policy": { - "derived_from": "tosca.datatypes.Root", - "properties": { - "domain": { - "type": "string", - "required": true, - "description": "Domain name to which TCA needs to be applied", - "default": "measurementsForVfScaling", - "constraints": [ - { - "equal": "measurementsForVfScaling" - } - ] - }, - "metricsPerEventName": { - "type": "list", - "required": true, - "description": "Contains eventName and threshold details that need to be applied to given eventName", - "entry_schema": { - "type": "onap.datatypes.monitoring.metricsPerEventName" - } - } - } - } + "metricsPerEventName": { + "type": "list", + "required": true, + "description": "Contains eventName and threshold details that need to be applied to given eventName", + "entry_schema": { + "type": "onap.datatypes.monitoring.metricsPerEventName" + } + } + } + }, + "onap.datatypes.monitoring.thresholds": { + "derived_from": "tosca.datatypes.Root", + "properties": { + "closedLoopControlName": { + "type": "string", + "required": true, + "description": "Closed Loop Control Name associated with the threshold" }, - { - "onap.datatypes.monitoring.thresholds": { - "derived_from": "tosca.datatypes.Root", - "properties": { - "closedLoopControlName": { - "type": "string", - "required": true, - "description": "Closed Loop Control Name associated with the threshold" - }, - "closedLoopEventStatus": { - "type": "string", - "required": true, - "description": "Closed Loop Event Status of the threshold", - "constraints": [ - { - "valid_values": [ - "ONSET", - "ABATED" - ] - } - ] - }, - "direction": { - "type": "string", - "required": true, - "description": "Direction of the threshold", - "constraints": [ - { - "valid_values": [ - "LESS", - "LESS_OR_EQUAL", - "GREATER", - "GREATER_OR_EQUAL", - "EQUAL" - ] - } - ] - }, - "fieldPath": { - "type": "string", - "required": true, - "description": "Json field Path as per CEF message which needs to be analyzed for TCA", - "constraints": [ - { - "valid_values": [ - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated", - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait", - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage", - "$.event.measurementsForVfScalingFields.meanRequestLatency", - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered", - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached", - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured", - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree", - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed", - "$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value" - ] - } - ] - }, - "severity": { - "type": "string", - "required": true, - "description": "Threshold Event Severity", - "constraints": [ - { - "valid_values": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "NORMAL" - ] - } - ] - }, - "thresholdValue": { - "type": "integer", - "required": true, - "description": "Threshold value for the field Path inside CEF message" - }, - "version": { - "type": "string", - "required": true, - "description": "Version number associated with the threshold" - } - } - } + "closedLoopEventStatus": { + "type": "string", + "required": true, + "description": "Closed Loop Event Status of the threshold", + "constraints": [ + { + "valid_values": [ + "ONSET", + "ABATED" + ] + } + ] + }, + "direction": { + "type": "string", + "required": true, + "description": "Direction of the threshold", + "constraints": [ + { + "valid_values": [ + "LESS", + "LESS_OR_EQUAL", + "GREATER", + "GREATER_OR_EQUAL", + "EQUAL" + ] + } + ] + }, + "fieldPath": { + "type": "string", + "required": true, + "description": "Json field Path as per CEF message which needs to be analyzed for TCA", + "constraints": [ + { + "valid_values": [ + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated", + "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait", + "$.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage", + "$.event.measurementsForVfScalingFields.meanRequestLatency", + "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered", + "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached", + "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured", + "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree", + "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed", + "$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value" + ] + } + ] + }, + "severity": { + "type": "string", + "required": true, + "description": "Threshold Event Severity", + "constraints": [ + { + "valid_values": [ + "CRITICAL", + "MAJOR", + "MINOR", + "WARNING", + "NORMAL" + ] + } + ] + }, + "thresholdValue": { + "type": "integer", + "required": true, + "description": "Threshold value for the field Path inside CEF message" + }, + "version": { + "type": "string", + "required": true, + "description": "Version number associated with the threshold" } - ] -}
\ No newline at end of file + } + } +} diff --git a/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyTypePersistenceTest.java b/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyTypePersistenceTest.java index 7b7690009..2ccf215c9 100644 --- a/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyTypePersistenceTest.java +++ b/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyTypePersistenceTest.java @@ -22,6 +22,7 @@ package org.onap.policy.models.provider.impl; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import com.google.gson.GsonBuilder; @@ -62,16 +63,22 @@ public class PolicyTypePersistenceTest { // @formatter:off private String[] policyTypeResourceNames = { - "policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml", - "policytypes/onap.policies.optimization.AffinityPolicy.yaml", + "policytypes/onap.policies.controlloop.Operational.yaml", "policytypes/onap.policies.optimization.DistancePolicy.yaml", - "policytypes/onap.policies.optimization.HpaPolicy.yaml", - "policytypes/onap.policies.optimization.OptimizationPolicy.yaml", + "policytypes/onap.policies.optimization.VnfPolicy.yaml", "policytypes/onap.policies.optimization.PciPolicy.yaml", - "policytypes/onap.policies.optimization.QueryPolicy.yaml", - "policytypes/onap.policies.optimization.SubscriberPolicy.yaml", + "policytypes/onap.policies.optimization.OptimizationPolicy.yaml", + "policytypes/onap.policies.controlloop.guard.Blacklist.yaml", + "policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml", + "policytypes/onap.policies.optimization.HpaPolicy.yaml", "policytypes/onap.policies.optimization.Vim_fit.yaml", - "policytypes/onap.policies.optimization.VnfPolicy.yaml", + "policytypes/onap.policies.optimization.SubscriberPolicy.yaml", + "policytypes/onap.policies.optimization.AffinityPolicy.yaml", + "policytypes/onap.policies.optimization.QueryPolicy.yaml", + "policytypes/onap.policies.controlloop.guard.MinMax.yaml", + "policytypes/onap.policies.controlloop.guard.FrequencyLimiter.yaml", + "policytypes/onap.policies.controlloop.guard.coordination.FirstBlocksSecond.yaml", + "policytypes/onap.policies.Optimization.yaml", "policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app.yaml" }; // @formatter:on @@ -141,7 +148,7 @@ public class PolicyTypePersistenceTest { ToscaServiceTemplate serviceTemplate = standardCoder.decode(policyTypeString, ToscaServiceTemplate.class); assertNotNull(serviceTemplate); - ToscaPolicyType inPolicyType = serviceTemplate.getPolicyTypes().get(0).values().iterator().next(); + ToscaPolicyType inPolicyType = serviceTemplate.getPolicyTypes().values().iterator().next(); databaseProvider.createPolicyTypes(serviceTemplate); databaseProvider.updatePolicyTypes(serviceTemplate); @@ -162,7 +169,7 @@ public class PolicyTypePersistenceTest { assertEquals(inPolicyType.getName(), policyTypeList.get(0).getName()); policyTypeList = databaseProvider.getFilteredPolicyTypeList(ToscaPolicyTypeFilter.builder().build()); - assertEquals(2, policyTypeList.size()); + assertTrue(policyTypeList.size() <= 3); assertEquals(inPolicyType.getName(), policyTypeList.get(0).getName()); for (ToscaPolicyType policyType: databaseProvider.getPolicyTypeList(null, null)) { diff --git a/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaEntity.java b/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaEntity.java index c0f40f159..0a8fa2788 100644 --- a/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaEntity.java +++ b/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaEntity.java @@ -111,4 +111,28 @@ public class ToscaEntity implements PfNameVersion { return entityMap; } + + /** + * Convert a map of TOSCA entities into a regular map. + * + * @param mapOfEntities the incoming list of maps of entities + * @return The entities on a regular map + * @throws PfModelException on duplicate entity entries + */ + public static <T extends ToscaEntity> Map<ToscaEntityKey, T> getEntityMapAsMap(Map<String, T> mapOfEntities) { + // Declare the return map + Map<ToscaEntityKey, T> entityMap = new LinkedHashMap<>(); + + for (T entityEntry : mapOfEntities.values()) { + if (entityMap.containsKey(entityEntry.getKey())) { + throw new PfModelRuntimeException(Response.Status.INTERNAL_SERVER_ERROR, + "list of map of entities contains more than one entity with key " + entityEntry.getKey()); + } + + entityMap.put(entityEntry.getKey(), entityEntry); + } + + return entityMap; + } + } diff --git a/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaServiceTemplate.java b/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaServiceTemplate.java index 21b15a8ae..17391964e 100644 --- a/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaServiceTemplate.java +++ b/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaServiceTemplate.java @@ -25,7 +25,6 @@ package org.onap.policy.models.tosca.authorative.concepts; import com.google.gson.annotations.SerializedName; import io.swagger.annotations.ApiModelProperty; -import java.util.List; import java.util.Map; import lombok.Data; import lombok.EqualsAndHashCode; @@ -49,17 +48,17 @@ public class ToscaServiceTemplate extends ToscaEntity { @ApiModelProperty(name = "policy_types") @SerializedName("policy_types") - private List<Map<String, ToscaPolicyType>> policyTypes; + private Map<String, ToscaPolicyType> policyTypes; @ApiModelProperty(name = "data_types") @SerializedName("data_types") - private List<Map<String, ToscaDataType>> dataTypes; + private Map<String, ToscaDataType> dataTypes; public Map<ToscaEntityKey, ToscaPolicyType> getPolicyTypesAsMap() { - return ToscaEntity.getEntityListMapAsMap(policyTypes); + return ToscaEntity.getEntityMapAsMap(policyTypes); } public Map<ToscaEntityKey, ToscaDataType> getDataTypesAsMap() { - return ToscaEntity.getEntityListMapAsMap(dataTypes); + return ToscaEntity.getEntityMapAsMap(dataTypes); } }
\ No newline at end of file diff --git a/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProvider.java b/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProvider.java index e41281d7f..8c6e492f7 100644 --- a/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProvider.java +++ b/models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProvider.java @@ -25,6 +25,8 @@ import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.TreeMap; + import lombok.NonNull; import org.onap.policy.models.base.PfConceptKey; import org.onap.policy.models.base.PfModelException; @@ -83,8 +85,8 @@ public class AuthorativeToscaProvider { LOGGER.debug("->getPolicyTypeList: name={}, version={}", name, version); - List<ToscaPolicyType> policyTypeList = asConceptList( - new SimpleToscaProvider().getPolicyTypes(dao, name, version).toAuthorative().getPolicyTypes()); + List<ToscaPolicyType> policyTypeList = new ArrayList<>( + new SimpleToscaProvider().getPolicyTypes(dao, name, version).toAuthorative().getPolicyTypes().values()); LOGGER.debug("<-getPolicyTypeList: name={}, version={}, policyTypeList={}", name, version, policyTypeList); return policyTypeList; @@ -106,7 +108,7 @@ public class AuthorativeToscaProvider { ToscaServiceTemplate serviceTemplate = new SimpleToscaProvider().getPolicyTypes(dao, null, null).toAuthorative(); - List<ToscaPolicyType> filteredPolicyTypes = asConceptList(serviceTemplate.getPolicyTypes()); + List<ToscaPolicyType> filteredPolicyTypes = new ArrayList<>(serviceTemplate.getPolicyTypes().values()); filteredPolicyTypes = filter.filter(filteredPolicyTypes); serviceTemplate.setPolicyTypes(asConceptMap(filteredPolicyTypes)); @@ -257,7 +259,7 @@ public class AuthorativeToscaProvider { List<ToscaPolicy> filteredPolicies = asConceptList(serviceTemplate.getToscaTopologyTemplate().getPolicies()); filteredPolicies = filter.filter(filteredPolicies); - serviceTemplate.getToscaTopologyTemplate().setPolicies(asConceptMap(filteredPolicies)); + serviceTemplate.getToscaTopologyTemplate().setPolicies(asConceptMapList(filteredPolicies)); LOGGER.debug("<-getFilteredPolicies: filter={}, serviceTemplate={}", filter, serviceTemplate); return serviceTemplate; @@ -368,14 +370,29 @@ public class AuthorativeToscaProvider { * @param conceptList the concept list * @return the list of concept map */ - private <T extends ToscaEntity> List<Map<String, T>> asConceptMap(List<T> conceptList) { + private <T extends ToscaEntity> List<Map<String, T>> asConceptMapList(List<T> conceptList) { List<Map<String, T>> toscaEntityMapList = new ArrayList<>(); for (T concept : conceptList) { - Map<String, T> conceptMap = new LinkedHashMap<>(); + Map<String, T> conceptMap = new TreeMap<>(); conceptMap.put(concept.getName(), concept); toscaEntityMapList.add(conceptMap); } return toscaEntityMapList; } + + /** + * Return the contents of a list of concepts as map of concepts. + * + * @param conceptList the concept list + * @return the list of concept map + */ + private <T extends ToscaEntity> Map<String, T> asConceptMap(List<T> conceptList) { + Map<String, T> conceptMap = new LinkedHashMap<>(); + for (T concept : conceptList) { + conceptMap.put(concept.getName(), concept); + } + + return conceptMap; + } } diff --git a/models-tosca/src/main/java/org/onap/policy/models/tosca/simple/concepts/JpaToscaServiceTemplate.java b/models-tosca/src/main/java/org/onap/policy/models/tosca/simple/concepts/JpaToscaServiceTemplate.java index 83c9dc0cf..e07894cd8 100644 --- a/models-tosca/src/main/java/org/onap/policy/models/tosca/simple/concepts/JpaToscaServiceTemplate.java +++ b/models-tosca/src/main/java/org/onap/policy/models/tosca/simple/concepts/JpaToscaServiceTemplate.java @@ -22,7 +22,12 @@ package org.onap.policy.models.tosca.simple.concepts; import com.google.gson.annotations.SerializedName; + +import java.util.Collections; +import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; + import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; @@ -43,6 +48,8 @@ import org.onap.policy.models.base.PfKey; import org.onap.policy.models.base.PfValidationMessage; import org.onap.policy.models.base.PfValidationResult; import org.onap.policy.models.base.PfValidationResult.ValidationResult; +import org.onap.policy.models.tosca.authorative.concepts.ToscaDataType; +import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyType; import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; /** @@ -141,11 +148,19 @@ public class JpaToscaServiceTemplate extends JpaToscaEntityType<ToscaServiceTemp toscaServiceTemplate.setToscaDefinitionsVersion(toscaDefinitionsVersion); if (dataTypes != null) { - toscaServiceTemplate.setDataTypes(dataTypes.toAuthorative()); + toscaServiceTemplate.setDataTypes(new LinkedHashMap<>()); + List<Map<String, ToscaDataType>> dataTypeMapList = dataTypes.toAuthorative(); + for (Map<String, ToscaDataType> dataTypeMap : dataTypeMapList) { + toscaServiceTemplate.getDataTypes().putAll(dataTypeMap); + } } if (policyTypes != null) { - toscaServiceTemplate.setPolicyTypes(policyTypes.toAuthorative()); + toscaServiceTemplate.setPolicyTypes(new LinkedHashMap<>()); + List<Map<String, ToscaPolicyType>> policyTypeMapList = policyTypes.toAuthorative(); + for (Map<String, ToscaPolicyType> policyTypeMap : policyTypeMapList) { + toscaServiceTemplate.getPolicyTypes().putAll(policyTypeMap); + } } if (topologyTemplate != null) { @@ -171,12 +186,12 @@ public class JpaToscaServiceTemplate extends JpaToscaEntityType<ToscaServiceTemp if (toscaServiceTemplate.getDataTypes() != null) { dataTypes = new JpaToscaDataTypes(); - dataTypes.fromAuthorative(toscaServiceTemplate.getDataTypes()); + dataTypes.fromAuthorative(Collections.singletonList(toscaServiceTemplate.getDataTypes())); } if (toscaServiceTemplate.getPolicyTypes() != null) { policyTypes = new JpaToscaPolicyTypes(); - policyTypes.fromAuthorative(toscaServiceTemplate.getPolicyTypes()); + policyTypes.fromAuthorative(Collections.singletonList(toscaServiceTemplate.getPolicyTypes())); } diff --git a/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaPolicyTypeFilterTest.java b/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaPolicyTypeFilterTest.java index 5fbad5559..28836a981 100644 --- a/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaPolicyTypeFilterTest.java +++ b/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaPolicyTypeFilterTest.java @@ -58,16 +58,22 @@ public class ToscaPolicyTypeFilterTest { // @formatter:off private static final String[] policyTypeResourceNames = { - "policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml", - "policytypes/onap.policies.optimization.AffinityPolicy.yaml", + "policytypes/onap.policies.controlloop.Operational.yaml", "policytypes/onap.policies.optimization.DistancePolicy.yaml", - "policytypes/onap.policies.optimization.HpaPolicy.yaml", - "policytypes/onap.policies.optimization.OptimizationPolicy.yaml", + "policytypes/onap.policies.optimization.VnfPolicy.yaml", "policytypes/onap.policies.optimization.PciPolicy.yaml", - "policytypes/onap.policies.optimization.QueryPolicy.yaml", - "policytypes/onap.policies.optimization.SubscriberPolicy.yaml", + "policytypes/onap.policies.optimization.OptimizationPolicy.yaml", + "policytypes/onap.policies.controlloop.guard.Blacklist.yaml", + "policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml", + "policytypes/onap.policies.optimization.HpaPolicy.yaml", "policytypes/onap.policies.optimization.Vim_fit.yaml", - "policytypes/onap.policies.optimization.VnfPolicy.yaml", + "policytypes/onap.policies.optimization.SubscriberPolicy.yaml", + "policytypes/onap.policies.optimization.AffinityPolicy.yaml", + "policytypes/onap.policies.optimization.QueryPolicy.yaml", + "policytypes/onap.policies.controlloop.guard.MinMax.yaml", + "policytypes/onap.policies.controlloop.guard.FrequencyLimiter.yaml", + "policytypes/onap.policies.controlloop.guard.coordination.FirstBlocksSecond.yaml", + "policytypes/onap.policies.Optimization.yaml", "policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app.yaml" }; // @formatter:on @@ -90,9 +96,7 @@ public class ToscaPolicyTypeFilterTest { new StandardCoder().decode(yamlAsJsonString, ToscaServiceTemplate.class); assertNotNull(serviceTemplate); - for (Map<String, ToscaPolicyType> foundPolicyTypeMap : serviceTemplate.getPolicyTypes()) { - addPolicyTypes(foundPolicyTypeMap); - } + addPolicyTypes(serviceTemplate.getPolicyTypes()); } for (ToscaPolicyType type : typeList) { @@ -138,21 +142,21 @@ public class ToscaPolicyTypeFilterTest { ToscaPolicyTypeFilter.builder().version(ToscaPolicyTypeFilter.LATEST_VERSION).build(); List<ToscaPolicyType> filteredList = filter.filter(typeList); - assertEquals(13, filteredList.size()); + assertEquals(20, filteredList.size()); assertEquals(VERSION_100, filteredList.get(0).getVersion()); - assertEquals(VERSION_000, filteredList.get(4).getVersion()); + assertEquals(VERSION_000, filteredList.get(11).getVersion()); typeList.get(12).setVersion("2.0.0"); filteredList = filter.filter(typeList); - assertEquals(13, filteredList.size()); - assertEquals("2.0.0", filteredList.get(0).getVersion()); - assertEquals(VERSION_000, filteredList.get(4).getVersion()); + assertEquals(20, filteredList.size()); + assertEquals("2.0.0", filteredList.get(11).getVersion()); + assertEquals(VERSION_000, filteredList.get(18).getVersion()); typeList.get(12).setVersion(VERSION_100); filteredList = filter.filter(typeList); - assertEquals(13, filteredList.size()); + assertEquals(20, filteredList.size()); assertEquals(VERSION_100, filteredList.get(0).getVersion()); - assertEquals(VERSION_000, filteredList.get(4).getVersion()); + assertEquals(VERSION_000, filteredList.get(18).getVersion()); } @Test @@ -174,7 +178,7 @@ public class ToscaPolicyTypeFilterTest { assertEquals(9, filteredList.size()); filter = ToscaPolicyTypeFilter.builder().name("onap.policies.optimization.Vim_fit").version(VERSION_000) - .build(); + .build(); filteredList = filter.filter(typeList); assertEquals(1, filteredList.size()); diff --git a/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProviderPolicyTypeTest.java b/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProviderPolicyTypeTest.java index 8bed1e4a1..d77b52daa 100644 --- a/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProviderPolicyTypeTest.java +++ b/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/provider/AuthorativeToscaProviderPolicyTypeTest.java @@ -27,7 +27,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import com.google.gson.GsonBuilder; -import java.util.ArrayList; +import java.util.LinkedHashMap; import java.util.List; import java.util.Properties; import org.apache.commons.lang3.ObjectUtils; @@ -137,15 +137,15 @@ public class AuthorativeToscaProviderPolicyTypeTest { PfConceptKey policyTypeKey = new PfConceptKey(POLICY_AFFINITY_VERSION0); - ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); - ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); + ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(createdPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), createdPolicyType.getDescription())); ToscaServiceTemplate gotServiceTemplate = new AuthorativeToscaProvider().getPolicyTypes(pfDao, policyTypeKey.getName(), policyTypeKey.getVersion()); - ToscaPolicyType gotPolicyType = gotServiceTemplate.getPolicyTypes().get(0).get(policyTypeKey.getName()); + ToscaPolicyType gotPolicyType = gotServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), createdPolicyType.getDescription())); @@ -160,11 +160,11 @@ public class AuthorativeToscaProviderPolicyTypeTest { assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); gotPolicyTypeList = new AuthorativeToscaProvider().getPolicyTypeList(pfDao, null, null); - assertEquals(2, gotPolicyTypeList.size()); + assertEquals(1, gotPolicyTypeList.size()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); gotPolicyTypeList = new AuthorativeToscaProvider().getPolicyTypeList(pfDao, null, VERSION_000); - assertEquals(2, gotPolicyTypeList.size()); + assertEquals(1, gotPolicyTypeList.size()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); } @@ -203,29 +203,29 @@ public class AuthorativeToscaProviderPolicyTypeTest { PfConceptKey policyTypeKey = new PfConceptKey(POLICY_AFFINITY_VERSION0); - ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); - ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); + ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(createdPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), createdPolicyType.getDescription())); ToscaServiceTemplate gotServiceTemplate = new AuthorativeToscaProvider().getFilteredPolicyTypes(pfDao, ToscaPolicyTypeFilter.builder().build()); - ToscaPolicyType gotPolicyType = gotServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType gotPolicyType = gotServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), gotPolicyType.getDescription())); gotServiceTemplate = new AuthorativeToscaProvider().getFilteredPolicyTypes(pfDao, ToscaPolicyTypeFilter.builder().name(policyTypeKey.getName()).build()); - gotPolicyType = gotServiceTemplate.getPolicyTypes().get(0).get(policyTypeKey.getName()); + gotPolicyType = gotServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), gotPolicyType.getDescription())); gotServiceTemplate = new AuthorativeToscaProvider().getFilteredPolicyTypes(pfDao, ToscaPolicyTypeFilter.builder().name(policyTypeKey.getName()).version(VERSION_000).build()); - gotPolicyType = gotServiceTemplate.getPolicyTypes().get(0).get(policyTypeKey.getName()); + gotPolicyType = gotServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), gotPolicyType.getDescription())); @@ -236,7 +236,7 @@ public class AuthorativeToscaProviderPolicyTypeTest { gotPolicyTypeList = new AuthorativeToscaProvider().getFilteredPolicyTypeList(pfDao, ToscaPolicyTypeFilter.builder().build()); - assertEquals(2, gotPolicyTypeList.size()); + assertEquals(1, gotPolicyTypeList.size()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); gotPolicyTypeList = new AuthorativeToscaProvider().getFilteredPolicyTypeList(pfDao, @@ -251,7 +251,7 @@ public class AuthorativeToscaProviderPolicyTypeTest { gotPolicyTypeList = new AuthorativeToscaProvider().getFilteredPolicyTypeList(pfDao, ToscaPolicyTypeFilter.builder().version("1.0.0").build()); - assertEquals(1, gotPolicyTypeList.size()); + assertEquals(0, gotPolicyTypeList.size()); assertEquals(true, beforePolicyType.getName().equals(gotPolicyType.getName())); } @@ -274,7 +274,7 @@ public class AuthorativeToscaProviderPolicyTypeTest { new AuthorativeToscaProvider().createPolicyTypes(pfDao, testToscaServiceTemplate); }).hasMessage(MISSING_POLICY_TYPES); - testToscaServiceTemplate.setPolicyTypes(new ArrayList<>()); + testToscaServiceTemplate.setPolicyTypes(new LinkedHashMap<>()); assertThatThrownBy(() -> { new AuthorativeToscaProvider().createPolicyTypes(pfDao, testToscaServiceTemplate); }).hasMessage("An incoming list of concepts must have at least one entry"); @@ -287,8 +287,8 @@ public class AuthorativeToscaProviderPolicyTypeTest { PfConceptKey policyTypeKey = new PfConceptKey(POLICY_AFFINITY_VERSION0); - ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); - ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); + ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(createdPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), createdPolicyType.getDescription())); } @@ -319,15 +319,15 @@ public class AuthorativeToscaProviderPolicyTypeTest { PfConceptKey policyTypeKey = new PfConceptKey(POLICY_AFFINITY_VERSION0); - ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); - ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); + ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(createdPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), createdPolicyType.getDescription())); ToscaServiceTemplate updatedServiceTemplate = new AuthorativeToscaProvider().updatePolicyTypes(pfDao, toscaServiceTemplate); - ToscaPolicyType updatedPolicy = updatedServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType updatedPolicy = updatedServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(updatedPolicy.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), updatedPolicy.getDescription())); } @@ -370,15 +370,15 @@ public class AuthorativeToscaProviderPolicyTypeTest { PfConceptKey policyTypeKey = new PfConceptKey(POLICY_AFFINITY_VERSION0); - ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); - ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(1).get(policyTypeKey.getName()); + ToscaPolicyType beforePolicyType = toscaServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); + ToscaPolicyType createdPolicyType = createdServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(createdPolicyType.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), createdPolicyType.getDescription())); ToscaServiceTemplate deletedServiceTemplate = new AuthorativeToscaProvider().deletePolicyType(pfDao, policyTypeKey.getName(), policyTypeKey.getVersion()); - ToscaPolicyType deletedPolicy = deletedServiceTemplate.getPolicyTypes().get(0).get(policyTypeKey.getName()); + ToscaPolicyType deletedPolicy = deletedServiceTemplate.getPolicyTypes().get(policyTypeKey.getName()); assertEquals(true, beforePolicyType.getName().equals(deletedPolicy.getName())); assertEquals(0, ObjectUtils.compare(beforePolicyType.getDescription(), deletedPolicy.getDescription())); @@ -405,7 +405,7 @@ public class AuthorativeToscaProviderPolicyTypeTest { new AuthorativeToscaProvider().createPolicyTypes(pfDao, testServiceTemplate); }).hasMessage(MISSING_POLICY_TYPES); - testServiceTemplate.setPolicyTypes(new ArrayList<>()); + testServiceTemplate.setPolicyTypes(new LinkedHashMap<>()); assertThatThrownBy(() -> { new AuthorativeToscaProvider().createPolicyTypes(pfDao, testServiceTemplate); }).hasMessage("An incoming list of concepts must have at least one entry"); |