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++ для сигнализации об ошибках интерфейсов сквозной защиты (End-to-End) вместе с кодом ошибки.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 385c2dd6528b Происхождение Открытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Служит специфическим исключением C++ для сигнализации об ошибках интерфейсов сквозной защиты (End-to-End) вместе с кодом ошибки.

Класс ara::com::e2e::ComE2EException служит стандартизированным исключением C++ для передачи сообщений об ошибках из API E2E управления коммуникацией ([SWS_CM_12501]). Он наследует от ara::core::Exception и инкапсулирует специфический ara::core::ErrorCode, который передается при создании экземпляра через безопасный относительно исключений конструктор noexcept ([SWS_CM_12502]). Если исключения C++ отключены в наборе инструментов компилятора, генерирующая функция согласно спецификации не участвует в разрешении перегрузок, поэтому этот путь обработки ошибок предполагает активную поддержку исключений.

Контекст

Класс ara::com::e2e::ComE2EException служит стандартизированным классом исключений C++, который генерируется интерфейсами API сквозной защиты (E2E) в управлении коммуникацией для сигнализации о возникших ошибочных условиях ([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 функцию управления коммуникацией.
  • Логика E2E при обработке или проверке данных выявляет ошибку, создает экземпляр ara::com::e2e::ComE2EException со специфическим errorCode и генерирует его (AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 «Class: ComE2EException»).
  • Приложение перехватывает исключение в блоке try-catch. Вызывающие стороны при этом, вероятно (интерпретация), обращаются к унаследованным базовым методам ara::core::Exception, чтобы проанализировать содержащийся ara::core::ErrorCode для диагностики ошибок. Вопрос Q-8dfac2428f223afe (открытый)
Последовательность обработки исключений при ошибках 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], функция, создающая и генерирующая экземпляр, не участвует в разрешении перегрузки (overload resolution), если в компиляторе отключены исключения C++ (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

Конструкторы и деструктор

ComE2EException функция

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#899e2719
Content hash
899e2719
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