Skip to content

cna.qualityModel.entities.Database.StorageBackingService

The Database.StorageService Node represents a Storage Backing Service entity. It extends the original TOSCA Database Node in order to allow the modeling of External Endpoints as well as Links to other Component entities. Additionally, modeled Backing Data and Data Aggregate entities can be referenced. The Node also allows modeling the persistence of a specific Data Aggregate entity.

File references:      TOSCA-File

Shorthand Name Database.StorageBackingService
Type Qualified Name qualityModel:Database.StorageBackingService
Type URI cna.qualityModel.entities.Database.StorageBackingService

1. Properties

Name Required Type Constraints
Description
N/A N/A N/A N/A N/A

2. Attributes

Name Required Type Constraints
Description
N/A N/A N/A N/A N/A

3. Definition

cna.qualityModel.entities.Database.StorageBackingService:
  derived_from: tosca.nodes.Database
  description: Node Type to model Storage Backing Service entities
  requirements:
    # Allow the definition of Links between Components
    - endpoint_link:
        capability: tosca.capabilities.Endpoint
        relationship: cna.qualityModel.relationships.ConnectsTo.Link
        occurrences: [0, UNBOUNDED]
    # Allow the definition of Data Aggregate usage
    - uses_data:
        capability: tosca.capabilities.Attachment
        node: cna.qualityModel.entities.DataAggregate
        relationship: cna.qualityModel.relationships.AttachesTo.Data
        occurrences: [0, UNBOUNDED]
    # Allow the definition of Backing Data usage
    - uses_backing_data:
        capability: tosca.capabilities.Attachment
        node: cna.qualityModel.entities.BackingData
        relationship: cna.qualityModel.relationships.AttachesTo.Data
        occurrences: [0, UNBOUNDED]
  capabilities:
    # Endpoint can already be assigned using the database_endpoint capability
    # Allow assigning External Endpoint entities
    external_endpoint:
      type: tosca.capabilities.Endpoint.Public
      occurrences: [0, UNBOUNDED]
    # Needed so that Data Aggregates can be stored
    persist_data:
      type: cna.qualityModel.capabilities.DataStorage
      description: The ability to persist Data Aggregates like Business Objects
      valid_source_types: [cna.qualityModel.entities.DataAggregate]
      occurrences: [1, UNBOUNDED]

4. Example

mysql_service:
  type: cna.qualityModel.entities.Database.StorageBackingService
  properties:
    root_password: rootpassword
    port: 3306
  requirements:
    - host:
        node: docker_host
        relationship: dockerHost_host_mySqlService
    # Reference to Backing Data
    - uses_backing_data: datasource_configuration_mysql_service
  capabilities:
    # Add Endpoint entity
    endpoint:
      type: tosca.capabilities.Endpoint
      properties:
        protocol: http
        port: 3306
        url_path: /sql
    persist_data:
      # Persist Data Aggregate
      type: cna.qualityModel.capabilities.DataStorage

Last update: 2022-08-31
Back to top