Component Requirements
Coverage: 100.0% (39 of 39 items OK)
[OK] TRLC Compreq ConfigDaemon.StorageAccessibility
Files persisted by ConfigDaemon shall be writable by ConfigDaemon only.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:21:22
[OK] TRLC Compreq ConfigDaemon.StorageFailure
In case file system is not accessible for ConfigDaemon application at startup or any other failure leads to parameter data model populated incompletely, ConfigDaemon application shall not offer any services.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:29:22
[OK] TRLC Compreq ConfigDaemon.Lifecycle
{{ConfigDaemon}} shall implement {{Initialize()}} and {{Run()}} functions in order to be managed by {{LifecycleManager}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:36:22
[OK] TRLC Compreq ConfigDaemon.InitializePlugins
The {{ConfigDaemon}} shall setup {{Plugins}} during the execution of {{ConfigDaemon::Initialize()}}. The setup consists of the following steps: * Create {{Plugins}} by using {{PluginCollector}}. * Store created {{Plugins}} in internall collection. * Call the {{Initialize()}} function exactly once for each {{Plugin}} in the collection.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:45:26
[OK] TRLC Compreq ConfigDaemon.InitializeService
The {{ConfigDaemon}} shall create and initialize {{InternalConfigProviderService}} service during the execution of {{ConfigDaemon::Initialize()}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:55:26
[OK] TRLC Compreq ConfigDaemon.RunPlugins
The {{ConfigDaemon}} shall call the {{Run()}} function exactly once for each {{Plugin}} in the collection during the execution of {{ConfigDaemon::Run()}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:62:26
[OK] TRLC Compreq ConfigDaemon.RunService
The {{ConfigDaemon}} shall offer {{InternalConfigProviderService}} service during the execution of {{ConfigDaemon::Run()}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:69:26
[OK] TRLC Compreq ConfigDaemon.RunIdle
Following Run activity finalization, {{ConfigDaemon}} shall remain locked in an idle state until {{stop_token}} is modified.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:76:26
[OK] TRLC Compreq ConfigDaemon.RunShutdown
{{ConfigDaemon}} shall process {{stop_token}} to interrupt any waiting and initiate the application shutdown.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:83:26
[OK] TRLC Compreq ConfigDaemon.ShutdownPlugins
The {{ConfigDaemon}} shall call the {{Deinitialize()}} function exactly once for each {{Plugin}} in the collection during the execution of {{ConfigDaemon}} shutdown.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:90:26
[OK] TRLC Compreq ConfigDaemon.ShutdownService
The {{ConfigDaemon}} shall stop offering {{InternalConfigProviderService}} during the execution of {{ConfigDaemon}} shutdown.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:97:26
[OK] TRLC Compreq ConfigDaemon.ParameterSetServiceOffering
Component shall offer a Parameter Set Service, which allows to query a Parameter Set with its Parameter Set Qualifier from the Data Model.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:121:22
[OK] TRLC Compreq ConfigDaemon.DataModel
DataModel is a collection of Parameter Sets, which can be added by the Plugins.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:133:22
[OK] TRLC Compreq ConfigDaemon.ParameterSets
Parameters are grouped into Parameter Sets, which enables clients to obtain an aggregated state of all values within that set.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:141:22
[OK] TRLC Compreq ConfigDaemon.DefaultDataModelLoading
When {{ConfigDaemon}} is initialized, it shall load the Data Model from {{Default Parameter Set Collection file}} if {{Parameter Set Collection file}} is not available or its integrity is not successfully verified.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:151:26
[OK] TRLC Compreq ConfigDaemon.ActualDataModelLoading
When {{ConfigDaemon}} is initialized, it shall load the Data Model from {{Parameter Set Collection file}} if available and its integrity is verified.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:159:26
[OK] TRLC Compreq ConfigDaemon.FileAccess
Files persisted by {{ConfigDaemon}} shall be readable by {{ConfigDaemon}} and priviledged user applications and writable by {{ConfigDaemon}} only.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:167:26
[OK] TRLC Compreq ConfigDaemon.DataModelChecksum
A checksum shall be calculated for the content of {{Parameter Set Collection file}} stored persistently to protect it from corruption.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:175:26
[OK] TRLC Compreq ConfigDaemon.DataModelVerification
The checksum protecting {{Parameter Set Collection file}} shall be evaluated during startup of {{ConfigDaemon}} prior to loading of {{Parameter Set Collection file}} contents into the {{Data Model}} to ensure that no corruption of data has occurred.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:183:26
[OK] TRLC Compreq ConfigDaemon.StoredQualifier
Every {{Parameter Set Qualifier}} loaded from the {{Parameter Set Collection file}} shall have the value {{QUALIFYING}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:190:26
[OK] TRLC Compreq ConfigDaemon.PrimitiveTypes
Following primitive parameter types shall be supported: * {{bool}} * {{sint8}} * {{sint16}} * {{sint32}} * {{sint64}} * {{uint8}} * {{uint16}} * {{uint32}} * {{uint64}} * {{float32}} * {{float64}}
Note: This only applies to the Daemon Application. Plugins may also only support a subset of the types.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:202:26
[OK] TRLC Compreq ConfigDaemon.ComplexTypes
Following complex parameter types shall be supported: * One dimensional arrays of {{SupportedParameterTypes::PrimitiveTypes}} * Two dimensional arrays of {{SupportedParameterTypes::PrimitiveTypes}}
Note: This only applies to the Daemon Application. Plugins may also only support a subset of the types.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:223:26
[OK] TRLC Compreq ConfigDaemon.ParameterSetQualifier
The ParameterSet qualifier shall be restricted to one of the following states: {{DEFAULT}},{{QUALIFYING}}, {{QUALIFIED}}, {{UNQUALIFIED}} or {{MODIFIED}}. Any other value is invalid.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:237:22
[OK] TRLC Compreq ConfigDaemon.PluginResponsibility
{{Plugin}} components are responsible for populating or modifing the contents of the {{ParameterSetCollection}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:248:22
[OK] TRLC Compreq ConfigDaemon.PluginSingleParametersType
{{Plugin}} shall process parameters of only one kind, e.g. coding or calibration or custom type of parameters.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:255:22
[OK] TRLC Compreq ConfigDaemon.PluginCreation
{{Plugin}} shall register its own {{PluginCreator}} in {{PluginCollector}} in order to be created.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:262:22
[OK] TRLC Compreq ConfigDaemon.PluginInitialization
{{Plugin}} shall implement the {{Initialize()}} function in a non-blocking manner.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:269:22
[OK] TRLC Compreq ConfigDaemon.PluginRun
{{Plugin}} recieves handles to the {{ParameterSetCollection}} and to the {{InternalConfigProviderService}} within {{Run}} method. This handles should be used to update the database and notify clients about parameter and qualifier changes.
Traces to:
Derived from:
Source: requirements/component_requirements/config_daemon/component_requirements.trlc:276:22
[OK] TRLC Compreq ConfigProvider.CallbackTriggeredOnServiceAvailable
{{ConfigProvider}} shall notify the user application once {{InternalConfigProviderService}} is available.
Note: The callback indicates that: * The service has been found * ConfigProvider is ready to access ParameterSets
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:25:30
[OK] TRLC Compreq ConfigProvider.OnChangedParameterSetNotInvokedForSameData
The user application shall be notified not only when the Parameter Set’s value changed but also when its {{ParameterSetQualifier}} changed.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:42:30
[OK] TRLC Compreq ConfigProvider.ParameterSetRetrievalWithTimeout
{{ConfigProvider}} shall support a timeout parameter when retrieving a Parameter Set to limit the maximum waiting time.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:50:30
[OK] TRLC Compreq ConfigProvider.BatchParameterSetRetrieval
{{ConfigProvider}} shall enable retrieval of multiple Parameter Sets in a single request.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:57:30
[OK] TRLC Compreq ConfigProvider.WaitUntilServiceConnected
{{ConfigProvider}} shall provide a mechanism to wait until the service connection is available, with timeout and cancellation support.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:68:30
[OK] TRLC Compreq ConfigProvider.InitialQualifierStateUndefined
{{ConfigProvider}} as part of a user application shall initialize the {{InitialQualifierState}} with value {{UNDEFINED}} at its side, which will remain as long as no update is available from {{ConfigDaemon}} application.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:79:30
[OK] TRLC Compreq ConfigProvider.GetInitialQualifierStateWithTimeout
{{ConfigProvider}} shall provide the {{InitialQualifierState}} with timeout support.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:86:30
[OK] TRLC Compreq ConfigProvider.InitialQualifierStateChangeNotification
The user application shall be notified when the {{InitialQualifierState}} changes.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:93:30
[OK] TRLC Compreq ConfigProvider.OperationErrorReporting
{{ConfigProvider}} operations related to {{InitialQualifierState}} shall indicate success or failure with error information so that the caller can react safely in case of failure.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:104:30
[OK] TRLC Compreq ConfigProvider.ParameterSetGetQualifier
{{ConfigProvider}} shall enable a user application to request a Parameter Set with its {{ParameterSetQualifier}} from the {{InternalConfigProviderService}}.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:118:26
[OK] TRLC Compreq ConfigProvider.GetInitialQualifierState
A qualifier shall be offered to indicate the integrity of coding data for coding parameters which are attributed with ASIL B level.
Note: ConfigDaemon assumes that functions which are using the coding parameters will establish a safe state in case when such qualifier indicates that coding data not in state Qualified.
Traces to:
Derived from:
Source: requirements/component_requirements/config_provider/component_requirements.trlc:132:30