Requirements

ConfigProvider_Component_Requirements

config_provider

Notification

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

ParameterSet_Access

ConfigProvider.OnChangedParameterSetNotInvokedForSameData

The user application shall be notified not only when the Parameter Set’s value changed but also when its {{ParameterSetQualifier}} changed.

ConfigProvider.ParameterSetRetrievalWithTimeout

{{ConfigProvider}} shall support a timeout parameter when retrieving a Parameter Set to limit the maximum waiting time.

ConfigProvider.BatchParameterSetRetrieval

{{ConfigProvider}} shall enable retrieval of multiple Parameter Sets in a single request.

Connection_Management

ConfigProvider.WaitUntilServiceConnected

{{ConfigProvider}} shall provide a mechanism to wait until the service connection is available, with timeout and cancellation support.

InitialQualifierState_Management

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.

ConfigProvider.GetInitialQualifierStateWithTimeout

{{ConfigProvider}} shall provide the {{InitialQualifierState}} with timeout support.

ConfigProvider.InitialQualifierStateChangeNotification

The user application shall be notified when the {{InitialQualifierState}} changes.

Error_Handling

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.

parameter_set

ConfigProvider.ParameterSetGetQualifier

{{ConfigProvider}} shall enable a user application to request a Parameter Set with its {{ParameterSetQualifier}} from the {{InternalConfigProviderService}}.

proxies

InternalConfigProvider

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.

ConfigProvider.DefinitionMaxArgument

User specific maximal parameter set name length to be used as method argument shall be determined according to the parameter set list provided by user application. A parameter set name shall only be considered if it’s contained in the buffer needs configuration buffer_size_needs.json. If there is no valid input for parameter set list provided, maximal length shall be the one of the overall longest parameter set name from the buffer needs configuration.

ConfigProvider.DefinitionUserSpecificMaxRetValue

User specific largest parameter set payload to be used as maximal method return value shall be determined according to the parameter set list provided by user application. A parameter set name shall only be considered if it’s contained in the buffer needs configuration buffer_size_needs.json. If there is no valid input for parameter set list provided, largest parameter set payload size shall be the one of the overall largest parameter set payload from the buffer needs configuration.

ConfigProvider.AdditionalProxyNeedsRegistration

Memory buffer needs shall be passed as additional_shm_size argument to proxy construction method. The needs are equal to the sum of: * User specific maximal parameter set name length, and * User specific largest parameter set payload size.

ConfigProvider.ReservePsNameArgumentBuffer

User specific maximal parameter set name length shall be reserved exactly once as memory buffer for the parameter set name method’s argument.

ConfigProvider.GuardPsNameArgumentBuffer

Parameter set name shall only be passed as argument if it’s smaller or equal to the user specific maximal parameter set name length. Otherwise, no method calls with this parameter set name shall take place and an error shall be raised.

ConfigProvider.PassMaxPayloadSizeArg

Client shall pass the user specific largest parameter set payload size to server as argument of GetParameterSet() method of InternalConfigProvider service.