Señaliza errores del Freshness Value Manager de SecOC frente a capas superiores de la Adaptive Platform.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 7ea457bda647ProcedenciaPreguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
Señaliza errores del Freshness Value Manager de SecOC frente a capas superiores de la Adaptive Platform.
La clase apext::com::secoc::ComSecOcFvmException sirve en el módulo com como clase de excepción especializada para la señalización de errores que se producen dentro del Freshness Value Manager de SecOC [SWS_CM_12512]. Hereda de ara::core::Exception y el Freshness Value Manager la instancia y la lanza a fin de transmitir los estados de error de manera estructurada a las capas de comunicación de nivel superior. Su constructor recibe obligatoriamente un ara::core::ErrorCode y está declarado como noexcept, con lo cual se garantiza una generación del objeto de error segura frente a excepciones y sin errores secundarios [SWS_CM_12513].
Contexto
La clase apext::com::secoc::ComSecOcFvmException es una clase de excepción especializada de AUTOSAR Adaptive Platform en el módulo com[SWS_CM_12512]. Sirve primordialmente para señalizar estados de error que se producen dentro del Freshness Value Manager (FVM) de SecOC (AUTOSAR_AP_SWS_CommunicationManagement §C.2.4 «Class: ComSecOcFvmException»). Al derivar de la clase base estándar ara::core::Exception, ComSecOcFvmException se integra en el modelo general de tratamiento de errores de Adaptive Platform y actúa como un portador de información estandarizado para condiciones de excepción durante la protección de la comunicación mediante SecOC.
Como interlocutores de interacción intervienen esencialmente tres componentes: el propio Freshness Value Manager de SecOC, que dispara la excepción en caso de error; la capa de comunicación funcional o aplicación llamadora, que procesa datos protegidos por SecOC; así como el dominio de error de FVM, que se incluye a través del archivo de cabecera apext/com/secoc/fvm_error_domain.h[SWS_CM_12513]. La clase representa, por tanto, el elemento de enlace entre los estados de error internos de la gestión de frescura y las capas de software de nivel superior.
Ciclo de vida
La instanciación de ComSecOcFvmException se realiza bajo demanda exactamente cuando se detecta un error no recuperable durante la determinación o verificación de valores de frescura. Para ello, la clase proporciona un constructor explícito que recibe un ara::core::ErrorCode[SWS_CM_12513].
Este constructor está declarado como noexcept[SWS_CM_12513]. Esto garantiza que la propia creación del objeto no falle bajo ninguna circunstancia ni lance más excepciones, cumpliendo así con la especificación de seguridad ante excepciones (exception safe) [SWS_CM_12513]. En cuanto al ciclo de vida y a las relaciones de propiedad, la excepción se crea y se lanza por valor. En el lado receptor, probablemente se capture como referencia constante (const ComSecOcFvmException& o de forma polimórfica como const ara::core::Exception&). Pregunta Q-d170140b08fe9ca0 (abierta)
En cuanto se procesa el bloque de manejo de excepciones correspondiente (catch), la instancia de la excepción se destruye automáticamente. Con respecto a la concurrencia, es probable que las instancias de la excepción se procesen de forma local al hilo dentro del contexto de excepción del hilo respectivo. Pregunta Q-bd368a082b887d14 (abierta)
Ruta de uso
La ruta de uso típica abarca desde la detección de un error de frescura hasta la reacción específica por parte de la capa de comunicación de nivel superior.
En primer lugar, el módulo de comunicación o la aplicación solicita un valor de frescura al Freshness Value Manager en el marco del procesamiento de SecOC, o bien le entrega uno para su validación. Si esta operación falla (por ejemplo, debido a problemas de sincronización o valores de contador no válidos), el Freshness Value Manager instancia la clase de excepción ComSecOcFvmException pasando el código de error concreto [SWS_CM_12513]. Inmediatamente tras la construcción, se lanza la excepción. El llamador captura la excepción en el manejador adecuado y puede consultar el ara::core::ErrorCode contenido para reaccionar de forma apropiada ante la degradación de la seguridad de la comunicación [SWS_CM_12512].
Escenarios de error
Dado que ComSecOcFvmException representa en sí mismo el medio de transporte para la señalización de errores, los escenarios de error se concentran en los contenidos semánticos del código de error encapsulado. La clase requiere obligatoriamente un ara::core::ErrorCode para su creación [SWS_CM_12513]. La asignación de cabecera a apext/com/secoc/fvm_error_domain.h demuestra que estos códigos de error proceden de un dominio de error dedicado de FVM [SWS_CM_12513].
Como precondición esencial para la creación se establece que el contexto desencadenante proporcione un código de error inicializado. Como poscondición, el objeto resultante contiene la información de error completa del dominio de error respectivo. Un escenario de error crítico consistente en la generación secundaria de excepciones durante la creación de la excepción queda descartado gracias a la garantía noexcept del constructor [SWS_CM_12513]. De este modo se evita de forma fiable una terminación prematura del proceso a través de std::terminate como consecuencia de un fallo en la ruta de manejo de errores.
Esta guía se basa en la especificación AUTOSAR Adaptive R25-11 y resume los requisitos para ComSecOcFvmException.
Diagrama de clases UML
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · Original en alemán