DEENESPTFRRUARHIKOZHNL

class 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

User GuideKI-GENERIERT

Dient als spezifische C++-Ausnahme zur Signalisierung von Fehlern aus End-to-End-Schnittstellen samt Fehlercode.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 385c2dd6528b Herkunft Offene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Dient als spezifische C++-Ausnahme zur Signalisierung von Fehlern aus End-to-End-Schnittstellen samt Fehlercode.

Die Klasse ara::com::e2e::ComE2EException dient als standardisierte C++-Ausnahme zur Meldung von Fehlern aus den E2E-APIs des Kommunikationsmanagements ([SWS_CM_12501]). Sie leitet von ara::core::Exception ab und kapselt einen spezifischen ara::core::ErrorCode, der bei der Instanziierung über einen ausnahmesicheren noexcept-Konstruktor übergeben wird ([SWS_CM_12502]). Falls C++-Ausnahmen in der Compiler-Toolchain deaktiviert sind, nimmt die auslösende Funktion laut Spezifikation nicht an der Überladungsauflösung teil, sodass dieser Fehlerpfad eine aktive Ausnahmeunterstützung voraussetzt.

Kontext

Die Klasse ara::com::e2e::ComE2EException dient als standardisierte C++-Ausnahmeklasse, die von den End-to-End-APIs (E2E) im Kommunikationsmanagement ausgelöst wird, um aufgetretene Fehlerbedingungen zu signalisieren ([SWS_CM_12501], AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“). Die Klasse ist als final deklariert und leitet öffentlich von ara::core::Exception ab (AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“). Bereitgestellt wird sie über die Header-Datei ara/com/e2e/e2e_error_domain.h ([SWS_CM_12502]).

Innerhalb der Funktionsarchitektur von AUTOSAR Adaptive fungiert ComE2EException als Kommunikationsbrücke zwischen den E2E-Überwachungsroutinen der Plattform und der aufrufenden Anwendungssoftware. Erkennt eine E2E-Funktion bei der Überprüfung oder Verarbeitung von Daten einen Fehlerzustand, wird dieser Fehler über das Werfen dieser Ausnahme an den übergeordneten Kontrollfluss übermittelt (AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“).

Lebenszyklus

Die Instanziierung eines Objekts von ComE2EException erfolgt explizit durch Übergabe eines Fehlercodes an den Konstruktor explicit ComE2EException(ara::core::ErrorCode errorCode) noexcept ([SWS_CM_12502], AUTOSAR_AP_SWS_CommunicationManagement §8.15.4.1.1.1 „ComE2EException“). Der Konstruktor ist als noexcept und ausnahmesicher (exception safe) spezifiziert ([SWS_CM_12502]). Dadurch wird garantiert, dass bei der Konstruktion der Ausnahme selbst keine weiteren Ausnahmen geworfen werden können, was die Robustheit im Fehlerpfad sicherstellt.

In Bezug auf die Besitzverhältnisse wird die Ausnahme durch die auslösende E2E-Schnittstelle erzeugt und per Wert geworfen (AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“). Anwendungsseitig wird das Objekt typischerweise als konstante Referenz abgefangen. Sobald der entsprechende Behandlungsblock verlassen wird, erfolgt die automatische Zerstörung im Rahmen der regulären C++-Stackabwicklung. Da die Klasse als final definiert ist, sind keine Unterklassen vorgesehen.

Nutzungspfad

Der typische Ablauf bei der Nutzung der Ausnahme gliedert sich in folgende Phasen:

  • Die Anwendungssoftware ruft eine E2E-geschützte Funktion des Kommunikationsmanagements auf.
  • Die E2E-Logik stellt bei der Datenverarbeitung oder -prüfung einen Fehler fest, instanziiert ein Exemplar von ara::com::e2e::ComE2EException mit dem spezifischen errorCode und wirft dieses (AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“).
  • Die Anwendung fängt die Ausnahme in einem try-catch-Block ab. Aufrufer dürften hierbei vermutlich (Interpretation) auf die geerbten Basismethoden von ara::core::Exception zugreifen, um den enthaltenen ara::core::ErrorCode für die Fehlerdiagnose auszuwerten. Frage Q-8dfac2428f223afe (offen)
Ablauf der Ausnahmebehandlung bei E2E-FehlernAnwendungara::com E2E-APIComE2EExceptionE2E-geprüfte Operation aufrufenUse Case: Fehlerfall E2E-PrüfungoptC++ Exceptions aktiviertComE2EException(errorCode) instanziierenthrow ComE2EExceptionException fangen und Fehlercode auswerten

Sequenzdiagramm: Ablauf der Fehlerbehandlung beim Auftreten von E2E-Fehlern über ComE2EException. Quellen: [SWS_CM_12501], [SWS_CM_12502], AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“.

Fehlerszenarien

Für die Verwendung von ComE2EException gilt eine wesentliche Vorbedingung hinsichtlich der Toolchain: Gemäß [SWS_CORE_10304] nimmt die Funktion, welche die Instanz erzeugt und wirft, nicht an der Überladungsauflösung (overload resolution) teil, sofern C++-Ausnahmen im Compiler deaktiviert sind (AUTOSAR_AP_SWS_CommunicationManagement §8.15.4 „Class: ComE2EException“). In Laufzeitumgebungen ohne C++-Exception-Unterstützung existiert dieser Signalweg daher nicht; Fehler dürften in diesem Fall vermutlich (Interpretation) über alternative, nicht-ausnahmebasierte Fehlermechanismen der Plattform übermittelt werden. Frage Q-e1b3f4f1dfc191ef (offen)

Sofern Ausnahmen aktiv sind, transportiert jede ComE2EException verbindlich einen Fehlercode ([SWS_CM_12502]). Als Vorbedingung für die Instanziierung muss ein gültiger ara::core::ErrorCode bereitstehen ([SWS_CM_12502]). Da der Konstruktor als ausnahmesicher deklariert ist ([SWS_CM_12502]), kann die Objekterzeugung selbst im Fehlerfall nicht fehlschlagen.

Dieser Leitfaden basiert auf der AUTOSAR-Spezifikation R25-11 und wurde automatisch kuratiert.

UML-Klassendiagramm

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

Konstruktoren und Destruktor

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

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

Dokumentation der Methoden

function 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#e593e160
Content hash
e593e160
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