Class EntityCapabilities

Class Documentation

class EntityCapabilities

SOVD Entity Capabilities based on Table 8 and Table 10.

This class encapsulates which resource collections and resources are supported by each entity type according to SOVD specification.

Resource Collections:

  • configurations: SERVER, COMPONENT, APP

  • data: SERVER, COMPONENT, APP, FUNCTION*

  • faults: SERVER, COMPONENT, APP

  • operations: SERVER, COMPONENT, APP, FUNCTION*

  • (others): SERVER, COMPONENT, APP

Resources:

  • docs: all

  • version-info: SERVER only

  • logs: SERVER, COMPONENT, APP

  • hosts: COMPONENT, FUNCTION

  • is-located-on: APP only

  • contains: AREA only

  • belongs-to: SERVER, COMPONENT, APP

  • depends-on: SERVER, COMPONENT, APP, FUNCTION

  • data-categories: SERVER, COMPONENT, APP

  • data-groups: SERVER, COMPONENT, APP

Note: FUNCTION data/operations are aggregated from hosted Apps (read-only).

Public Functions

bool supports_collection(ResourceCollection col) const

Check if entity supports a resource collection.

Parameters:

col – Resource collection to check

Returns:

true if supported

bool supports_resource(const std::string &name) const

Check if entity supports a named resource.

Parameters:

name – Resource name (e.g., “docs”, “hosts”, “is-located-on”)

Returns:

true if supported

std::vector<ResourceCollection> collections() const

Get all supported resource collections.

Returns:

Vector of supported collections

std::vector<std::string> resources() const

Get all supported resource names.

Returns:

Vector of supported resource names

bool is_aggregated(ResourceCollection col) const

Check if collection access is aggregated (from sub-entities)

For FUNCTION type, data and operations are aggregated from hosted Apps. For AREA type with x-medkit extension, operations can be aggregated.

Parameters:

col – Resource collection to check

Returns:

true if access is aggregated

Public Static Functions

static EntityCapabilities for_type(SovdEntityType type)

Get capabilities for an entity type.

Parameters:

type – SOVD entity type

Returns:

EntityCapabilities instance with supported collections/resources