DEENESPTFRRUARHIKOZHNL

类 ara::com::e2e::ComE2EException

[SWS_CM_12501] Upstream: RS_AP_00122, RS_AP_00127, RS_AP_00130

class ComE2EException final :            public ara::core::Exception {...};

Defines a class for exceptions to be thrown by the E2E APIs

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

用户指南人工智能生成

用作用于发出端到端接口错误信号的特定 C++ 异常,附带错误码。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 385c2dd6528b 来源 未决问题(2)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

用作用于发出端到端接口错误信号的特定 C++ 异常,附带错误码。

类 ara::com::e2e::ComE2EException 用作标准化 C++ 异常,用于报告来自通信管理([SWS_CM_12501])E2E API 的错误。它继承自 ara::core::Exception 并封装了一个特定的 ara::core::ErrorCode,该错误码在实例化时通过异常安全的 noexcept 构造函数传入([SWS_CM_12502])。如果编译器工具链中禁用了 C++ 异常,根据规范,触发函数将不参与重载解析,因此该错误路径以活动的异常支持为前提。

上下文

类 ara::com::e2e::ComE2EException 用作标准化 C++ 异常类,由通信管理中的端到端(E2E)API 触发,以发出发生错误条件的信号([SWS_CM_12501],AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 “Class: ComE2EException”)。该类声明为 final 并公有继承自 ara::core::Exception(AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 “Class: ComE2EException”)。它通过头文件 ara/com/e2e/e2e_error_domain.h 提供([SWS_CM_12502])。

在 AUTOSAR Adaptive 的功能架构内,ComE2EException 充当平台的 E2E 监控例程与调用应用软件之间的通信桥梁。如果 E2E 函数在检查或处理数据时检测到错误状态,该错误将通过抛出此异常传递给上层控制流(AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 “Class: ComE2EException”)。

生命周期

ComE2EException 对象的实例化通过将错误码显式传递给构造函数 explicit ComE2EException(ara::core::ErrorCode errorCode) noexcept 进行([SWS_CM_12502],AUTOSAR_AP_SWS_CommunicationManagement §8.15.4.1.1.1 “ComE2EException”)。构造函数被指定为 noexcept 且异常安全(exception safe)([SWS_CM_12502])。这保证了在构造异常本身时不会抛出其他异常,从而确保了错误路径中的鲁棒性。

在所有权关系方面,异常由触发的 E2E 接口创建并通过值抛出(AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 “Class: ComE2EException”)。应用端通常将其作为常量引用捕获。一旦离开相应的处理块,就会在常规 C++ 栈展开过程中自动销毁。由于该类被定义为 final,因此未设计子类。

使用路径

使用该异常的典型流程分为以下阶段:

E2E 错误时的异常处理流程应用ara::com E2E-APIComE2EException调用经过 E2E 校验的操作Use Case: E2E 校验错误情况optC++ Exceptions aktiviertComE2EException(errorCode) instanziierenthrow ComE2EException捕获异常并求值错误代码

时序图:发生 E2E 错误时通过 ComE2EException 进行错误处理的流程。来源:[SWS_CM_12501],[SWS_CM_12502],AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 “Class: ComE2EException”。

错误场景

对于 ComE2EException 的使用,在工具链方面存在一项重要前提条件:根据 [SWS_CORE_10304],若编译器中禁用了 C++ 异常,则创建并抛出该实例的函数不参与重载解析(overload resolution)(AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 “Class: ComE2EException”)。因此,在没有 C++ 异常支持的运行时环境中,该信号路径不存在;在此情况下,错误推测(解读)通过平台的备选非异常错误机制进行传递。 问题 Q-e1b3f4f1dfc191ef (未决)

只要启用了异常,每个 ComE2EException 都必须强制携带一个错误码([SWS_CM_12502])。作为实例化的前提条件,必须有有效的 ara::core::ErrorCode 可用([SWS_CM_12502])。由于构造函数声明为异常安全([SWS_CM_12502]),因此即使在错误情况下,对象创建本身也不会失败。

本指南基于 AUTOSAR R25-11 规范自动策展而成。

UML 类图

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

G nara__com__e2e__ComE2EException703 ComE2EException + ComE2EException() nara__core__Exception792 Exception nara__com__e2e__ComE2EException703->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

构造函数和析构函数

Constructs a new ara::com::e2e::ComE2EException object containing an error code

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

方法文档

函数 ComE2EException [SWS_CM_12502] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

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

Constructs a new ara::com::e2e::ComE2EException object containing an error code

Header-Datei#include "ara/com/e2e/e2e_error_domain.h"
Scopeclass ara::com::e2e::ComE2EException
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_12502
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_12502@rel:R25-11#91322c33
Content hash
91322c33
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_12502
Status: valid/unmigrated Version: rel:R25-11#f55f1c7d 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_12502@rel:R25-11#f55f1c7d
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#e593e1602026-09-30
  • R22-11rel:R22-11#803783f82026-10-14
  • R23-11rel:R23-11#0ff65df22026-10-14
  • R24-11rel:R24-11#eaa1533d2026-10-14
  • R25-11rel:R25-11#f55f1c7d2026-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