DEENESPTFRRUARHIKOZHNL

namespace ara::com::runtime

Guide utilisateurGÉNÉRÉ PAR IA

Résout au moment de l'exécution des spécificateurs d'instance abstraits en identifiants concrets pour la communication de service.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 4a9d404013ef Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Résout au moment de l'exécution des spécificateurs d'instance abstraits en identifiants concrets pour la communication de service.

L'espace de noms ara::com::runtime fournit des services d'exécution centraux pour la résolution de points de terminaison de communication dans la gestion de la communication AUTOSAR_AP_SWS_CommunicationManagement p. 39. Sa fonction principale ResolveInstanceIDs traduit des identifiants de modèle abstraits de type ara::core::InstanceSpecifier en ara::com::InstanceIdentifierContainer concrets et utilisables pour les proxys et les squelettes [SWS_CM_00118]. Si l'association d'un identifiant formellement valide échoue lors du déploiement, la fonction sans exception renvoie le code d'erreur ComErrc::kInstanceIDNotResolvable au sein d'un ara::core::Result. Les appelants doivent donc évaluer l'objet de résultat avant l'instanciation du service.

Contexte

L'espace de noms ara::com::runtime fournit des fonctionnalités d'exécution centrales pour la gestion de la communication (ara::com) de l'AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_CommunicationManagement p. 39. Sa responsabilité fonctionnelle principale réside dans le découplage de l'architecture logicielle abstraite vis-à-vis de l'infrastructure de communication concrète au moment de l'exécution. Alors que les applications et les composants logiciels sont liés à des ports dans leurs interfaces via des identifiants de modèle abstraits (ara::core::InstanceSpecifier), le middleware de communication nécessite des données concrètes d'adressage et d'instanciation sous la forme d'objets ara::com::InstanceIdentifier pour l'établissement de connexions [SWS_CM_00118].

La fonction ResolveInstanceIDs déclarée dans l'en-tête ara/com/runtime.h constitue la passerelle entre ces deux niveaux d'abstraction [SWS_CM_00118]. Elle reçoit un ara::core::InstanceSpecifier et le transforme en un ara::com::InstanceIdentifierContainer AUTOSAR_AP_SWS_CommunicationManagement p. 40. Interprétation : l'association concrète devrait reposer en interne sur les configurations de manifeste et de déploiement enregistrées dans le contexte d'exécution, garantissant ainsi que le code applicatif reste portable et exempt d'adresses réseau ou de protocole codées en dur. Question Q-8fab6de1c39a065a (ouverte)

context app Applikation (Port) spec ara::core::InstanceSpecifier app->spec referenziert runtime ara::com::runtime::ResolveInstanceIDs spec->runtime Eingabeparameter container ara::com::InstanceIdentifierContainer runtime->container erzeugt Result instances ara::com::InstanceIdentifier container->instances beinhaltet n Matches instances->app Bindung Proxy/Skeleton

Diagramme de contexte : intégration de ara::com::runtime entre l'architecture applicative et le déploiement de communication. Sources : [SWS_CM_00118], AUTOSAR_AP_SWS_CommunicationManagement p. 39.

Parcours d'utilisation

L'utilisation typique de l'espace de noms ara::com::runtime s'effectue pendant la phase d'initialisation et de démarrage d'une application adaptative, avant que des relations de communication ne soient établies via des proxys de service ou des squelettes de service AUTOSAR_AP_SWS_CommunicationManagement p. 41. Un consommateur ou fournisseur de service suit alors un chemin de résolution déterministe :

  • Déterminer le spécificateur : l'application instancie ou référence l'identifiant de type ara::core::InstanceSpecifier défini pour le port de communication respectif.
  • Résoudre les instances : l'identifiant est transmis à la fonction ara::com::runtime::ResolveInstanceIDs [SWS_CM_00118].
  • Vérifier le résultat : l'appel renvoie un objet de type ara::core::Result<ara::com::InstanceIdentifierContainer>, dont l'exécution réussie ou les états d'erreur sont vérifiés [SWS_CM_00118].
  • Traiter le conteneur : en cas de succès, le ara::com::InstanceIdentifierContainer contient un nombre d'identifiants d'instance qui est proportionnel au nombre de correspondances trouvées dans le déploiement [SWS_CM_00118]. L'application peut sélectionner de manière ciblée une instance ou itérer sur toutes les instances disponibles.
  • Instancier le proxy ou le squelette : les objets ara::com::InstanceIdentifier résolus sont ensuite utilisés pour créer des instances concrètes de proxy ou de squelette AUTOSAR_AP_SWS_CommunicationManagement p. 42.
Résolution d’instance via ara::com::runtime::ResolveInstanceIDsApplikationara::com::runtimeDeployment-RegistryResolveInstanceIDs(instanceSpecifier)Instanzzuordnung abfragenKonfigurierte InstanceIdentifiersaltTreffer gefundenRemplir InstanceIdentifierContainerResult(InstanceIdentifierContainer)Aucune association disponibleResult::FromError(ComErrc::kInstanceIDNotResolvable)

Diagramme de séquence : déroulement d'appel et de traitement de la résolution d'instances via ResolveInstanceIDs. Sources : [SWS_CM_00118], AUTOSAR_AP_SWS_CommunicationManagement p. 41.

Scénarios d'erreur

Les interfaces de l'espace de noms ara::com::runtime suivent le paradigme appliqué à l'échelle de la plateforme d'un traitement d'erreurs robuste et sans exception. Conformément à la spécification, ResolveInstanceIDs est déclaré comme noexcept et possède le niveau de sécurité vis-à-vis des exceptions exception safe [SWS_CM_00118]. Les erreurs ne sont donc jamais signalées par des exceptions C++, mais transportées intégralement via la monade d'erreur ara::core::Result AUTOSAR_AP_SWS_CommunicationManagement p. 47.

Le scénario d'erreur spécifié central concerne le code d'erreur ComErrc::kInstanceIDNotResolvable [SWS_CM_00118]. Cette erreur survient lorsque le ara::core::InstanceSpecifier transmis est formellement valide, mais ne peut être associé à aucun ara::com::InstanceIdentifier existant dans la configuration système actuelle ou dans le manifeste [SWS_CM_00118]. En pratique, cela indique des divergences entre la modélisation et le déploiement, par exemple si un fournisseur de service n'a pas été déployé sur une autre machine ou si le binding manque dans le manifeste. Pour cette erreur, la sémantique de rollback (rollback_semantics) s'applique : aucun état partiel n'est généré ni aucune ressource n'est liée, de sorte que l'appelant peut vérifier la configuration ou basculer vers un état d'erreur défini [SWS_CM_00118].

Ce guide est basé sur les spécifications de l'AUTOSAR Adaptive Platform Release R25-11.

Fonctions

Translates an ara::core::InstanceSpecifier to a ara::com:: InstanceIdentifierContainer. The length/size of the ara::com:: InstanceIdentifierContainer is relative to the number of matches.

ara::core::Result< ara::com::InstanceIdentifierContainer > Resolve InstanceIDs (ara::core::InstanceSpecifier metaModelIdentifier) noexcept;

Documentation des fonctions libres

fonction ResolveInstanceIDs [SWS_CM_00118] Upstream: RS_CM_00200, RS_AP_00114, RS_AP_00115, RS_AP_00120, RS_AP_00121, RS_AP_00119, RS_AP_00127, RS_AP_00137

ara::core::Result< ara::com::InstanceIdentifierContainer > Resolve InstanceIDs (ara::core::InstanceSpecifier metaModelIdentifier) noexcept;

Translates an ara::core::InstanceSpecifier to a ara::com:: InstanceIdentifierContainer. The length/size of the ara::com:: InstanceIdentifierContainer is relative to the number of matches.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 6e1dc546a5e1 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction synchrone ResolveInstanceIDs dans l'espace de noms ara::com::runtime ([SWS_CM_00118]) résout un identifiant basé sur le modèle de type ara::core::InstanceSpecifier en instances techniques concrètes. En résultat, elle fournit un ara::core::Result<ara::com::InstanceIdentifierContainer> qui contient les ara::com::InstanceIdentifier attribués (EXP ARAComAPI §4 « InstanceSpecifier Resolution »).

Le conteneur reproduit ici le déploiement configuré :

En cas d'erreur, le ara::core::Result fournit le code d'erreur ComErrc::kInstanceIDNotResolvable si le InstanceSpecifier est formellement valide, mais n'a pu être associé à aucun InstanceIdentifier existant ([SWS_CM_00118]). La fonction est déclarée comme noexcept et sûre vis-à-vis des exceptions.

Dans les scénarios d'application typiques, l'appel direct n'est pas nécessaire, car les API de proxy et de squelette fournissent des surcharges acceptant directement InstanceSpecifier (EXP ARAComAPI §4 « InstanceSpecifier Resolution »). La résolution manuelle sert principalement pour les scénarios avancés dans lesquels des InstanceIdentifier spécifiques à une technologie sont échangés entre processus ou des liaisons sont sélectionnées de manière ciblée (EXP ARAComAPI §4 « InstanceSpecifier Resolution »).

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR.

Guide de l'implémenteur à venir (complexité I2)

Header-Datei#include "ara/com/runtime.h"
Scopenamespace ara::com::runtime
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
metaModelIdentifierThe ara::core::InstanceSpecifier to be translated.

Rückgabewert

TypBeschreibung
ara::core::Result<ara::com::InstanceIdentifierContainer >An ara::com::InstanceIdentifierContainer if successful, otherwise an error code indicating the error

Fehler

FehlercodeBeschreibung
ComErrc::kInstanceIDNotResolvablerollback_semantics The ara::core::InstanceSpecifier is valid but could not be resolved/mapped to an existing ara::com:: InstanceIdentifier
Siehe auch: [SWS_CORE_08001]

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CM_00118
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00118@rel:R25-11#317e7d7c
Content hash
317e7d7c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00118
Status: valid/unmigrated Version: rel:R25-11#7fda17bf Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CM_00118@rel:R25-11#7fda17bf
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0f70035f2026-09-30
  • R19-11rel:R19-11#f7400f912026-10-14
  • R20-11rel:R20-11#41c24bfc2026-10-14
  • R21-11rel:R21-11#29fd954c2026-10-14
  • R22-11rel:R22-11#e6a302622026-10-14
  • R23-11rel:R23-11#2a18d23a2026-10-14
  • R24-11rel:R24-11#09c394e82026-10-14
  • R25-11rel:R25-11#7fda17bf2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill