Sinaliza erros do SecOC Freshness Value Manager para camadas superiores da Adaptive Platform.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 7ea457bda647ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Sinaliza erros do SecOC Freshness Value Manager para camadas superiores da Adaptive Platform.
A classe apext::com::secoc::ComSecOcFvmException serve no módulo com como classe de exceção especializada para sinalizar erros que ocorrem dentro do SecOC Freshness Value Manager [SWS_CM_12512]. Ela herda de ara::core::Exception e é instanciada e lançada pelo Freshness Value Manager para transmitir estados de erro de forma estruturada para camadas de comunicação superiores. Seu construtor recebe obrigatoriamente um ara::core::ErrorCode e é declarado como noexcept, o que garante a criação segura contra exceções do objeto de erro sem erros secundários [SWS_CM_12513].
Contexto
A classe apext::com::secoc::ComSecOcFvmException é uma classe de exceção especializada da AUTOSAR Adaptive Platform no módulo com[SWS_CM_12512]. Ela serve primariamente para sinalizar estados de erro que ocorrem dentro do SecOC Freshness Value Manager (FVM) (AUTOSAR_AP_SWS_CommunicationManagement §C.2.4 «Class: ComSecOcFvmException»). Por meio da derivação a partir da classe base padrão ara::core::Exception, ComSecOcFvmException integra-se ao modelo geral de tratamento de erros da Adaptive Platform e atua como portadora padronizada de informações para condições de exceção na proteção da comunicação por meio de SecOC.
Como parceiros de interação atuam essencialmente três componentes: o próprio SecOC Freshness Value Manager, que dispara a exceção em caso de erro; a camada funcional de comunicação ou aplicação chamadora, que processa dados protegidos por SecOC; e o domínio de erro do FVM, incluído por meio do arquivo de cabeçalho apext/com/secoc/fvm_error_domain.h[SWS_CM_12513]. A classe representa, assim, o elo de ligação entre os estados de erro internos do gerenciamento de frescor e as camadas de software superiores.
Ciclo de vida
A instanciação de ComSecOcFvmException ocorre sob demanda, exatamente quando um erro irrecuperável é detectado durante a determinação ou verificação de valores de frescor. Para isso, a classe disponibiliza um construtor explícito que recebe um ara::core::ErrorCode[SWS_CM_12513].
Esse construtor é declarado como noexcept[SWS_CM_12513]. Isso garante que a própria criação do objeto não falhe sob nenhuma circunstância nem lance novas exceções, cumprindo assim a especificação de segurança contra exceções (exception safe) [SWS_CM_12513]. Em relação ao ciclo de vida e às relações de posse, a exceção é criada e lançada por valor. Do lado receptor, presume-se que ela seja capturada como referência constante (const ComSecOcFvmException& ou polimorficamente como const ara::core::Exception&). Pergunta Q-d170140b08fe9ca0 (aberta)
Assim que o respectivo bloco de tratamento de exceções (catch) for processado, a instância da exceção é destruída automaticamente. No que diz respeito à concorrência, espera-se que instâncias da exceção sejam processadas de forma thread-local no contexto de exceção da respectiva thread. Pergunta Q-bd368a082b887d14 (aberta)
Caminho de utilização
O fluxo de utilização típico estende-se desde a detecção de um erro de frescor até a reação direcionada por parte da camada de comunicação superior.
Primeiramente, o módulo de comunicação ou a aplicação solicita, no âmbito do processamento de SecOC, um valor de frescor ao Freshness Value Manager ou fornece um valor para validação. Se essa operação falhar — por exemplo, devido a problemas de sincronização ou contadores inválidos —, o Freshness Value Manager instancia a classe de exceção ComSecOcFvmException, passando o código de erro concreto [SWS_CM_12513]. Imediatamente após a construção, a exceção é lançada. O chamador captura a exceção no tratador correspondente e pode consultar o ara::core::ErrorCode contido para reagir adequadamente ao comprometimento da segurança da comunicação [SWS_CM_12512].
Cenários de erro
Como ComSecOcFvmException representa em si o meio de transporte para sinalizações de erro, os cenários de erro concentram-se no conteúdo semântico do código de erro encapsulado. A classe recebe obrigatoriamente um ara::core::ErrorCode para sua criação [SWS_CM_12513]. A associação do cabeçalho a apext/com/secoc/fvm_error_domain.h comprova que esses códigos de erro são provenientes de um domínio de erro dedicado do FVM [SWS_CM_12513].
Como pré-condição essencial para a criação, tem-se que o contexto disparador deve fornecer um código de erro inicializado. Como pós-condição, o objeto resultante contém as informações completas de erro do respectivo domínio de erro. Um cenário de erro crítico de ocorrência de exceção secundária durante a instanciação da exceção é excluído pela garantia noexcept do construtor [SWS_CM_12513]. Isso evita de forma confiável que ocorra uma interrupção prematura do processo via std::terminate em decorrência de uma falha no caminho de tratamento de erros.
Este guia baseia-se na especificação AUTOSAR Adaptive R25-11 e resume os requisitos da ComSecOcFvmException.
Diagrama de classes UML
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão