DEENESPTFRRUARHIKOZHNL

namespace ara::com::runtime

Guía del usuarioGENERADO POR IA

Resuelve especificadores de instancia abstractos en tiempo de ejecución a identificadores concretos para la comunicación de servicios.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 4a9d404013ef Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Resuelve especificadores de instancia abstractos en tiempo de ejecución a identificadores concretos para la comunicación de servicios.

El espacio de nombres ara::com::runtime proporciona servicios centrales de tiempo de ejecución para la resolución de extremos de comunicación en la gestión de comunicación AUTOSAR_AP_SWS_CommunicationManagement p. 39. Su función central ResolveInstanceIDs traduce identificadores de modelo abstractos de tipo ara::core::InstanceSpecifier en ara::com::InstanceIdentifierContainer concretos y utilizables para proxies y skeletons [SWS_CM_00118]. Si falla la asignación en el despliegue de un identificador formalmente válido, la función segura contra excepciones devuelve el código de error ComErrc::kInstanceIDNotResolvable dentro de un ara::core::Result. Por lo tanto, los llamadores deben evaluar el objeto Result antes de la instanciación del servicio.

Contexto

El espacio de nombres ara::com::runtime proporciona funcionalidades centrales de tiempo de ejecución para la gestión de comunicación (ara::com) de AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_CommunicationManagement p. 39. Su responsabilidad funcional primaria consiste en desacoplar la arquitectura de software abstracta de la infraestructura de comunicación concreta en tiempo de ejecución. Mientras que las aplicaciones y los componentes de software están vinculados a puertos en sus interfaces mediante identificadores de modelo abstractos (ara::core::InstanceSpecifier), el middleware de comunicación necesita, para el establecimiento de conexiones, datos concretos de direccionamiento e instanciación en forma de objetos ara::com::InstanceIdentifier [SWS_CM_00118].

La función ResolveInstanceIDs declarada en el encabezado ara/com/runtime.h forma el puente entre estos dos niveles de abstracción [SWS_CM_00118]. Acepta un ara::core::InstanceSpecifier y lo transforma en un ara::com::InstanceIdentifierContainer AUTOSAR_AP_SWS_CommunicationManagement p. 40. Interpretación: Es de suponer que la asignación concreta se base internamente en las configuraciones de manifiesto y de despliegue depositadas en el contexto de ejecución, con lo cual el código de aplicación permanece portable y libre de direcciones de red o de protocolo fijas. Pregunta Q-8fab6de1c39a065a (abierta)

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

Diagrama de contexto: clasificación de ara::com::runtime entre la arquitectura de la aplicación y el despliegue de comunicación. Fuentes: [SWS_CM_00118], AUTOSAR_AP_SWS_CommunicationManagement p. 39.

Ruta de uso

El uso típico del espacio de nombres ara::com::runtime tiene lugar durante la fase de inicialización y arranque de una aplicación adaptativa, antes de que se establezcan relaciones de comunicación a través de service proxies o service skeletons AUTOSAR_AP_SWS_CommunicationManagement p. 41. Durante este proceso, un service consumer o provider recorre una ruta de resolución determinista:

  • Determinar el especificador: la aplicación instancia o referencia el identificador de tipo ara::core::InstanceSpecifier definido para el respectivo puerto de comunicación.
  • Resolver instancias: el identificador se transfiere a la función ara::com::runtime::ResolveInstanceIDs [SWS_CM_00118].
  • Comprobar el resultado: la llamada devuelve un objeto del tipo ara::core::Result<ara::com::InstanceIdentifierContainer>, el cual se comprueba en cuanto a ejecución correcta o estados de error [SWS_CM_00118].
  • Procesar el contenedor: en caso de éxito, el ara::com::InstanceIdentifierContainer contiene una cantidad de identificadores de instancia que es proporcional al número de coincidencias encontradas en el despliegue [SWS_CM_00118]. La aplicación puede seleccionar específicamente una instancia o iterar sobre todas las instancias disponibles.
  • Instanciar proxy o skeleton: los objetos ara::com::InstanceIdentifier resueltos se utilizan a continuación para la creación de instancias concretas de proxy o skeleton AUTOSAR_AP_SWS_CommunicationManagement p. 42.
Resolución de instancias mediante ara::com::runtime::ResolveInstanceIDsApplikationara::com::runtimeDeployment-RegistryResolveInstanceIDs(instanceSpecifier)Instanzzuordnung abfragenKonfigurierte InstanceIdentifiersaltTreffer gefundenRellenar InstanceIdentifierContainerResult(InstanceIdentifierContainer)No existe asignaciónResult::FromError(ComErrc::kInstanceIDNotResolvable)

Diagrama de secuencia: flujo de llamada y procesamiento de la resolución de instancias a través de ResolveInstanceIDs. Fuentes: [SWS_CM_00118], AUTOSAR_AP_SWS_CommunicationManagement p. 41.

Escenarios de error

Las interfaces en el espacio de nombres ara::com::runtime siguen el paradigma de gestión de errores robusta y libre de excepciones aplicado a toda la plataforma. De acuerdo con la especificación, ResolveInstanceIDs está declarada como noexcept y posee el nivel de seguridad frente a excepciones exception safe [SWS_CM_00118]. Por lo tanto, los errores nunca se señalan mediante excepciones de C++, sino que se transportan íntegramente a través de la mónada de error ara::core::Result AUTOSAR_AP_SWS_CommunicationManagement p. 47.

El escenario central de error especificado atañe al código de error ComErrc::kInstanceIDNotResolvable [SWS_CM_00118]. Este error ocurre cuando el ara::core::InstanceSpecifier transferido es formalmente válido, pero no puede asignarse a ningún ara::com::InstanceIdentifier existente en la configuración actual del sistema o en el manifiesto [SWS_CM_00118]. En la práctica, esto apunta a discrepancias entre el modelado y el despliegue, por ejemplo si un service provider no se ha desplegado en otra máquina o si falta el enlace en el manifiesto. Para este error rige la semántica de reversión (rollback_semantics): no se generan estados parciales ni se vinculan recursos, de modo que el llamador puede comprobar la configuración o pasar a un estado de error definido [SWS_CM_00118].

Esta guía se basa en las especificaciones de AUTOSAR Adaptive Platform Release R25-11.

Funciones

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;

Documentación de las funciones libres

función 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.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 6e1dc546a5e1 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función síncrona ResolveInstanceIDs en el espacio de nombres ara::com::runtime ([SWS_CM_00118]) resuelve un identificador basado en modelo de tipo ara::core::InstanceSpecifier en instancias técnicas concretas. Como resultado, devuelve un ara::core::Result<ara::com::InstanceIdentifierContainer> que contiene las ara::com::InstanceIdentifier asignadas (EXP ARAComAPI §4 «InstanceSpecifier Resolution»).

El contenedor reproduce para ello el despliegue configurado:

  • Un único elemento representa el caso estándar de una vinculación técnica inequívoca.
  • Aparecen varios elementos cuando el integrador ha configurado multi-binding, por ejemplo para vinculaciones alternativas en el lado del servidor o conceptos de conmutación por error en el lado del cliente (EXP ARAComAPI §4 «InstanceSpecifier Resolution»).
  • Un contenedor vacío indica un mapeo faltante y, por tanto, un error de configuración del integrador (EXP ARAComAPI §4 «InstanceSpecifier Resolution»).

En caso de error, el ara::core::Result devuelve el código de error ComErrc::kInstanceIDNotResolvable si el InstanceSpecifier es formalmente válido, pero no se pudo asignar a ningún InstanceIdentifier existente ([SWS_CM_00118]). La función está declarada como noexcept y segura frente a excepciones.

En escenarios de aplicación típicos, la llamada directa no es necesaria, ya que las API de proxy y skeleton proporcionan sobrecargas que aceptan directamente InstanceSpecifier (EXP ARAComAPI §4 «InstanceSpecifier Resolution»). La resolución manual sirve principalmente para escenarios avanzados en los que se intercambian InstanceIdentifier específicos de la tecnología entre procesos o se seleccionan enlaces de manera dirigida (EXP ARAComAPI §4 «InstanceSpecifier Resolution»).

Este texto ha sido generado por una IA a partir de la especificación de AUTOSAR.

Guía del implementador pendiente (complejidad 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#dcebc70b
Content hash
dcebc70b
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