Fournit des métadonnées telles que le type MIME et la taille des données pour le transfert de configurations SOVD.
Contexte
La structure ara::diag::SovdConfiguration::SovdConfigurationMetaInfo sert de conteneur de métadonnées standardisé pour le transfert de données de configuration SOVD (Service-Oriented Vehicle Diagnostics) dans l'AUTOSAR Adaptive Platform [SWS_DM_01861]. Elle est déclarée dans l'en-tête ara/diag/sovd_configuration.h et organisationnellement affectée directement à la classe d'interface ara::diag::SovdConfiguration AUTOSAR_AP_SWS_Diagnostics §8.54.2 « Struct: SovdConfigurationMetaInfo ». Sa responsabilité fondamentale consiste à fournir les métadonnées requises pour le transfert de configuration de diagnostic, telles que le type de contenu et le volume des données [SWS_DM_01862], [SWS_DM_01863].
Parmi les partenaires d'interaction primaires figurent d'une part l'application de diagnostic utilisatrice, qui génère, modifie ou traite des données de configuration, et d'autre part le système de gestion de diagnostic d'AUTOSAR Adaptive. La structure fait office d'objet de transfert de données (Data Transfer Object, DTO) qui sert d'intermédiaire entre la logique spécifique à l'application et les services de transfert standardisés de la plateforme de diagnostic. Via les champs fournis, l'émetteur et le récepteur peuvent convenir du format dans lequel les données de configuration sont disponibles et du nombre d'octets attendus dans le canal de transmission.
Cycle de vie
En tant que type de données C++ purement passif (struct), SovdConfigurationMetaInfo n'est soumis à aucune phase de cycle de vie complexe gérée par la plateforme [SWS_DM_01861]. La création s'effectue habituellement directement par l'Adaptive Application sur la pile ou dans le tas, immédiatement avant qu'un transfert de configuration ne soit initié ou qu'un ensemble de métadonnées reçu ne soit évalué. La structure suit la sémantique de valeur régulière de C++ ; le composant propriétaire est responsable de l'instanciation et de la durée de vie.
Concernant l'état interne, la structure ne possède pas de machine d'état ni de modes de fonctionnement discrets. Après l'initialisation des variables publiques, les données restent inchangées en mémoire jusqu'à la destruction de l'instance, à moins qu'elles ne soient explicitement écrasées par l'application propriétaire. La libération de l'instance s'effectue automatiquement selon le patron RAII en quittant la portée, la mémoire allouée dynamiquement de la chaîne contenue étant libérée [SWS_DM_01863].
En ce qui concerne la concurrence, SovdConfigurationMetaInfo n'offre aucune sécurité des threads intégrée. Plusieurs threads peuvent traiter une instance simultanément en lecture, par exemple pour l'inspection des paramètres de configuration. Les accès concurrents en écriture à la même instance nécessitent toutefois des mesures de synchronisation externes, car des modifications concurrentes sur les variables membres entraînent des incohérences de données.
Parcours d'utilisation
Un cas d'application typique consiste en la préparation et la mise à disposition de métadonnées avant le transfert de configuration effectif. L'application instancie d'abord la structure et affecte au champ mimetype une chaîne de caractères qui décrit le type de média du fichier de configuration [SWS_DM_01863], AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.1 « mimetype ». Cela permet au récepteur l'affectation à un analyseur ou à un schéma, par exemple pour des configurations basées sur JSON ou XML.
À l'étape suivante, il est vérifié si la taille de fichier exacte des données utiles peut être déterminée au préalable. Si tel est le cas, l'attribut size est renseigné avec la valeur d'octets entière correspondante [SWS_DM_01862], AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.2 « size ». Si la taille est inconnue avant le début de la transmission, la variable reste non définie. L'objet préparé est ensuite transmis comme argument à la fonction de transfert de la classe ara::diag::SovdConfiguration.
Diagramme de séquence : déroulement typique de l'initialisation et de la transmission de SovdConfigurationMetaInfo dans le cadre du transfert de configuration. Sources : [SWS_DM_01861], [SWS_DM_01862], [SWS_DM_01863], AUTOSAR_AP_SWS_Diagnostics §8.54.2 « Struct: SovdConfigurationMetaInfo ».
Scénarios d'erreur
Puisque SovdConfigurationMetaInfo est conçue comme une pure structure de données sans fonctions membres, elle ne définit pas de valeurs de retour, de codes d'erreur ou d'exceptions propres [SWS_DM_01861]. Les conditions d'erreur possibles proviennent principalement d'affectations de données incomplètes ou incohérentes, qui sont détectées par les services de plateforme effectuant le traitement dans ara::diag::SovdConfiguration.
Interprétation : un premier scénario d'erreur concerne des types MIME non valides. Question (ouverte) Si une chaîne de caractères vide ou un identifiant de format non pris en charge est consigné dans mimetype, le service de transfert appelé devrait refuser le traitement et renvoyer un code d'erreur correspondant à l'application. Un second scénario d'erreur réside dans une divergence de taille des données : si la quantité de données effectivement transmise s'écarte de la valeur d'octets déclarée dans size, l'infrastructure de diagnostic interrompt vraisemblablement le transfert pour cause d'incohérence. De plus, un champ size non défini devrait entraîner des erreurs de transmission dans le cas où le canal de transport choisi présuppose obligatoirement une longueur totale connue à l'avance.
Ce guide est basé sur la spécification AUTOSAR Adaptive Platform Release R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original allemand