DEENESPTFRRUARHIKOZHNL

类 apext::com::secoc::ComSecOcFvmException

[SWS_CM_12512] Upstream: RS_AP_00122, RS_AP_00127, RS_AP_00130

class ComSecOcFvmException :          public ara::core::Exception {...};

Defines a class for exceptions to be thrown by the SecOc Freshness Value Manager

Header-Datei#include "apext/com/secoc/fvm_error_domain.h"
Forwarding-Header#include "apext/com/com_fwd.h"
Scopenamespace apext::com::secoc
Basisklasse(n)ara::core::Exception

用户指南人工智能生成

向 Adaptive Platform 的上层指示 SecOC Freshness Value Manager 的错误。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 7ea457bda647 来源 未决问题(2)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

向 Adaptive Platform 的上层指示 SecOC Freshness Value Manager 的错误。

类 apext::com::secoc::ComSecOcFvmException 在模块 com 中用作专用异常类,用于指示在 SecOC Freshness Value Manager 内部发生的错误 [SWS_CM_12512]。它继承自 ara::core::Exception,由 Freshness Value Manager 实例化并抛出,以便将错误状态以结构化方式传达给上层通信层。其构造函数强制接收一个 ara::core::ErrorCode 并声明为 noexcept,从而保证了错误对象的异常安全创建且不会引发二次错误 [SWS_CM_12513]。

上下文

类 apext::com::secoc::ComSecOcFvmException 是 AUTOSAR Adaptive Platform 模块 com 中的专用异常类 [SWS_CM_12512]。它主要用于指示在 SecOC Freshness Value Manager(FVM)内部发生的错误状态(AUTOSAR_AP_SWS_CommunicationManagement §C.2.4 “Class: ComSecOcFvmException”)。通过继承自标准基类 ara::core::Exception,ComSecOcFvmException 融入了 Adaptive Platform 的通用错误处理模型,并充当使用 SecOC 保障通信安全时异常情况的标准化信息载体。

作为交互伙伴,主要存在三个组件:SecOC Freshness Value Manager 本身(在发生错误时触发异常)、调用该模块以处理 SecOC 保护数据的功能通信层或应用程序,以及通过头文件 apext/com/secoc/fvm_error_domain.h 包含的 FVM 错误域 [SWS_CM_12513]。因此,该类构成了新鲜度管理的内部错误状态与上层软件层之间的纽带。

生命周期

ComSecOcFvmException 的实例化是按需进行的,恰好在确定或检查新鲜度值期间检测到不可恢复错误时发生。为此,该类提供了一个显式构造函数,用于接收 ara::core::ErrorCode [SWS_CM_12513]。

该构造函数声明为 noexcept [SWS_CM_12513]。这保证了对象创建本身在任何情况下都不会失败或抛出进一步的异常,从而满足了异常安全(exception safe)规范 [SWS_CM_12513]。关于生命周期和所有权,异常按值创建并抛出。在接收端,它大概率作为常量引用(const ComSecOcFvmException& 或多态地作为 const ara::core::Exception&)被捕获。 问题 Q-d170140b08fe9ca0 (未决)

一旦相应的异常处理块(catch)处理完毕,该异常实例就会被自动销毁。关于并发性,异常实例大概率在相应线程的异常上下文中作为线程局部对象进行处理。 问题 Q-bd368a082b887d14 (未决)

使用路径

典型的使用路径涵盖从检测到新鲜度错误到上层通信层进行针对性响应的整个过程。

FVM 错误时的异常处理流程调用方SecOcFvmComSecOcFvmExceptionAnforderung Freshness Value确定/验证时出错ComSecOcFvmException(errorCode)使用 ara::core::ErrorCode 进行 noexcept 构造throw ComSecOcFvmExceptioncatch 与错误处理

时序图:Freshness Value Manager 使用 ComSecOcFvmException 进行异常处理的流程。来源:[SWS_CM_12512]、[SWS_CM_12513]、AUTOSAR_AP_SWS_CommunicationManagement §C.2.4

首先,通信模块或应用程序在 SecOC 处理过程中向 Freshness Value Manager 请求新鲜度值,或者传递该值以进行验证。如果此操作失败(例如由于同步问题或计数器值无效),Freshness Value Manager 将通过传递具体错误代码 [SWS_CM_12513] 来实例化异常类 ComSecOcFvmException。构造完成后立即抛出异常。调用方在相应的处理程序中捕获该异常,并可以查询所包含的 ara::core::ErrorCode,以便对通信安全受到的影响做出适当的反应 [SWS_CM_12512]。

错误场景

由于 ComSecOcFvmException 本身代表错误指示的传输介质,因此错误场景集中在封装错误代码的语义内容上。该类在创建时强制接收一个 ara::core::ErrorCode [SWS_CM_12513]。头文件归属到 apext/com/secoc/fvm_error_domain.h 证明这些错误代码来自专用的 FVM 错误域 [SWS_CM_12513]。

创建的基本前提条件是触发上下文提供已初始化的错误代码。作为后置条件,生成的对象包含相应错误域的完整错误信息。构造函数的 noexcept 保证排除了在异常创建期间产生二次异常的关键错误场景 [SWS_CM_12513]。这可靠地防止了由于错误处理路径中的失败而导致进程通过 std::terminate 提前中止。

本指南基于 AUTOSAR Adaptive R25-11 规范,总结了对 ComSecOcFvmException 的要求。

UML 类图

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G napext__com__secoc__ComSecOcFvmException158 ComSecOcFvmException + ComSecOcFvmException() nara__core__Exception792 Exception napext__com__secoc__ComSecOcFvmException158->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

构造函数和析构函数

Constructs a new apext::com::secoc::ComSecOcFvmException object containing an error code

explicit ComSecOcFvmException (ara::core::ErrorCode errorCode) noexcept;

方法文档

函数 ComSecOcFvmException [SWS_CM_12513] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

explicit ComSecOcFvmException (ara::core::ErrorCode errorCode) noexcept;

Constructs a new apext::com::secoc::ComSecOcFvmException object containing an error code

Header-Datei#include "apext/com/secoc/fvm_error_domain.h"
Scopeclass apext::com::secoc::ComSecOcFvmException
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code.

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

Record
AUTOSAR/AP/record/SWS_CM_12513
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_12513@rel:R25-11#f4f0b7ad
Content hash
f4f0b7ad
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_12513
Status: valid/unmigrated Version: rel:R25-11#e59898a6 Versionshistorie & Revisions (1 transition, 5 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_12513@rel:R25-11#e59898a6
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#3013409b2026-09-30
  • R22-11rel:R22-11#0c9595f62026-10-14
  • R23-11rel:R23-11#d6942d1b2026-10-14
  • R24-11rel:R24-11#47192c232026-10-14
  • R25-11rel:R25-11#e59898a62026-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