DEENESPTFRRUARHIKOZHNL

class ara::exec::ExecErrorDomain

[SWS_EM_02284] Upstream: RS_AP_00130, RS_AP_00122, RS_AP_00127, RS_AP_00154, RS_AP_00150

class ExecErrorDomain final :             public ara::core::ErrorDomain {...};

Defines a class representing the Execution Management error domain.

Header-Datei#include "ara/exec/exec_error_domain.h"
Forwarding-Header#include "ara/exec/exec_fwd.h"
Scopenamespace ara::exec
Basisklasse(n)ara::core::ErrorDomain
Unique IDAs per ara::exec::ExecErrorDomain in [SWS_CORE_90023]

User GuideAI-GENERATED

Serves to identify Execution Management errors and map them to message texts and exception objects.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: ef35ce1740d7 Provenance Open questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Serves to identify Execution Management errors and map them to message texts and exception objects.

Class ara::exec::ExecErrorDomain defines the error domain for Execution Management and maps numeric error codes to descriptive messages ([SWS_EM_02288]). It is default-constructed ([SWS_EM_02286]) and allows type-safe ExecException exceptions to be thrown ([SWS_EM_02289]). When C++ exceptions are disabled, function ThrowAsException() is disabled at compile time according to [SWS_CORE_10304] ([SWS_EM_02289]).

Context

Class ara::exec::ExecErrorDomain defines the specific error domain for the Execution Management functional cluster within the AUTOSAR Adaptive Platform. As a final specialization of base class ara::core::ErrorDomain, it encapsulates the mapping of domain-specific error causes and bridges numeric error codes and semantic error descriptions. In addition to base type ara::core::ErrorDomain, the class interacts closely with ara::core::ErrorCode and, in the event of an error, instantiates specific exception objects of type ExecException ([SWS_EM_02289]). Via method Name(), the class provides a textual identifier of the domain that corresponds to specification ara::exec::ExecErrorDomain in [SWS_CORE_90023] ([SWS_EM_02287]).

ExecErrorDomainContext ara::core::ErrorDomain ara::core::ErrorDomain ara::exec::ExecErrorDomain ara::exec::ExecErrorDomain ara::core::ErrorDomain->ara::exec::ExecErrorDomain vererbt an ExecException ExecException ara::exec::ExecErrorDomain->ExecException erzeugt ara::core::ErrorCode ara::core::ErrorCode ara::core::ErrorCode->ara::exec::ExecErrorDomain referenziert

Context diagram: Classification of ExecErrorDomain and its interaction partners in the error system. Sources: [SWS_EM_02287], [SWS_EM_02289], [SWS_CORE_90023]

Lifecycle

Objects of ara::exec::ExecErrorDomain are created via the default constructor ([SWS_EM_02286]). Construction is declared as noexcept and guarantees complete exception safety as well as thread safety ([SWS_EM_02286]). Because the class exposes no mutable state and is declared as final, all read operations operate without side effects. In real applications, a global or static instance of the error domain is presumably typically used (interpretation: in accordance with the general error model of Adaptive AUTOSAR), although direct instantiation via the constructor is possible at any time. Question Q-b70cae50db2eec09 (open)

With regard to concurrency, all member functions—namely querying the name via Name() ([SWS_EM_02287]), resolving error messages via Message() ([SWS_EM_02288]), and throwing exceptions using ThrowAsException() ([SWS_EM_02289])—are explicitly specified as thread-safe. Multiple threads of execution can thus query the same instance concurrently and without external synchronization.

Usage Path

In the regular execution path, the domain serves to translate error numbers into comprehensible diagnostic messages and to convert error codes into exception objects. If an error occurs within an Execution Management operation, it is usually represented as ara::core::ErrorCode, which internally references the instance of ara::exec::ExecErrorDomain. For text output, the caller passes the numeric error identifier to Message() ([SWS_EM_02288]) and receives a pointer to an immutable string (const char*) that describes the cause.

If a calling component chooses exception-based error handling, method ThrowAsException() is used ([SWS_EM_02289]). The function accepts the reference to an ara::core::ErrorCode, creates a new instance of ExecException from it, and throws it directly as a C++ exception into the call context ([SWS_EM_02289]).

Exception handling via ExecErrorDomainApplicationExecErrorDomainExecExceptionThrowAsException(errorCode)Evaluates errorCodeCreate instance with errorCodewirft ExecException

Sequence diagram: Flow when throwing a C++ exception via ThrowAsException. Sources: [SWS_EM_02289], [SWS_CORE_10304]

Error Scenarios

The information-querying methods are characterized by strict guarantees: neither construction ([SWS_EM_02286]), nor name retrieval via Name() ([SWS_EM_02287]), nor message retrieval via Message() ([SWS_EM_02288]) throws exceptions (noexcept), and all three are classified as exception-safe. For unknown error codes, Message() is likely to return a generic placeholder text or empty string (interpretation: the payload defines no separate error behavior for invalid CodeType values). Question Q-00938e624e81e82a (open)

A separate behavior applies to ThrowAsException(): this function is specified as noexcept(false) and explicitly as not exception safe, since its actual purpose consists in throwing an ExecException ([SWS_EM_02289]). In addition, an essential toolchain condition takes effect: according to [SWS_CORE_10304], ThrowAsException() does not participate in overload resolution when C++ exceptions are disabled in the compiler ([SWS_EM_02289]). In system environments without exception support, this path is therefore not available at compile time, so errors must strictly be evaluated via return values.

This documentation was generated by an artificial intelligence based on AUTOSAR specification R25-11.

Member map

Constructors and destructor

1

Class diagram

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

G nara__exec__ExecErrorDomain631 ExecErrorDomain + ExecErrorDomain() + Message() + Name() + ThrowAsException() nara__core__ErrorDomain335 ErrorDomain nara__exec__ExecErrorDomain631->nara__core__ErrorDomain335

Detail view

Select an entry in the outline.

Constructors and destructor

Constructs a new ExecErrorDomain object.

ExecErrorDomain () noexcept;

Methods

Message function

Returns the message associated with errorCode.

const char * Message (CodeType errorCode) const noexcept override;
Name function

Returns a string constant associated with ExecErrorDomain.

const char * Name () const noexcept override;

Creates a new instance of ExecException from errorCode and throws it as a C++ exception. As per [SWS_CORE_10304], this function does not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain.

void ThrowAsException (const ara::core::ErrorCode &errorCode) const noexcept(false) override;

Method documentation

function ExecErrorDomain [SWS_EM_02286] Upstream: RS_AP_00120, RS_AP_00130, RS_AP_00159

ExecErrorDomain () noexcept;

Constructs a new ExecErrorDomain object.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 3a2eab97ed54 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The default constructor ExecErrorDomain() initializes a new instance of the error domain ara::exec::ExecErrorDomain according to [SWS_EM_02286]. The call is synchronous, takes no parameters, and has no return value. The declaration is included via header ara/exec/exec_error_domain.h.

Regarding robustness and concurrency, the constructor is declared as noexcept, is considered exception safe (exception safe), and is specified as unconditionally thread-safe (thread-safe) [SWS_EM_02286]. Error handling during object creation is not required because the operation executes without error and raises no error codes or exceptions.

In the overall system, the created object serves to represent and describe module-specific errors of Execution Management. Via the instance, the domain name can be queried [SWS_EM_02287], textual messages for error codes can be determined [SWS_EM_02288], or errors can be thrown as a C++ exception [SWS_EM_02289]. Explicit instantiation via this constructor is likely rarely necessary in application modules, as a global reference to the instance is already provided via the free function GetExecErrorDomain() [SWS_EM_02290]. Question Q-df8efc87e6547216 (open)

This text was created by an AI and is based on AUTOSAR R25-11.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/exec/exec_error_domain.h"
Scopeclass ara::exec::ExecErrorDomain
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

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

Record
AUTOSAR/AP/record/SWS_EM_02286
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_EM_02286@rel:R25-11#06e26ef9
Content hash
06e26ef9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_ExecutionManagement.pdf#nameddest=SWS_EM_02286
Status: valid/unmigrated Version: rel:R25-11#a6321b98 Versionshistorie & Revisions (1 transition, 8 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_EM_02286@rel:R25-11#a6321b98
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#06e26ef92026-09-30
  • R19-11rel:R19-11#c9fefe412026-10-14
  • R20-11rel:R20-11#5b98d2302026-10-14
  • R21-11rel:R21-11#751166162026-10-14
  • R22-11rel:R22-11#5827680d2026-10-14
  • R23-11rel:R23-11#8bbc01962026-10-14
  • R24-11rel:R24-11#934e78e52026-10-14
  • R25-11rel:R25-11#a6321b982026-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

function Message [SWS_EM_02288] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130, RS_AP_00159

const char * Message (CodeType errorCode) const noexcept override;

Returns the message associated with errorCode.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 560b8f07710b Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method Message is a virtual member function of class ara::exec::ExecErrorDomain within the Execution Management functional cluster [SWS_EM_02288]. It is included via the header file ara/exec/exec_error_domain.h and overrides the corresponding interface for determining textual error messages [SWS_EM_02288].

The usage is as follows:

  • Call and semantics: The call is synchronous and is designed as a read-only operation (const) [SWS_EM_02288].
  • Parameters: Passed as input parameter is errorCode of type CodeType, which represents the numeric identifier of the error [SWS_EM_02288].
  • Return value: The function returns a pointer of type const char * to the error message associated with the error code [SWS_EM_02288]. Interpretation: It can be assumed that this pointer refers to a static string, so that no memory deallocation is required for the caller. Question Q-3e254e008a07294e (open)

Regarding error handling, the function is declared as noexcept and specified as exception safe [SWS_EM_02288]. The function itself does not throw C++ exceptions. Dedicated error codes or reporting channels for faulty calls are not provided in the specification [SWS_EM_02288].

Regarding concurrency, the method is classified as thread-safe [SWS_EM_02288]. Since it does not modify the state of the error domain, it can safely be called in parallel by multiple threads without external synchronization mechanisms [SWS_EM_02288].

This usage note is based on the specification AUTOSAR Adaptive R25-11 and was generated automatically.

Header-Datei#include "ara/exec/exec_error_domain.h"
Scopeclass ara::exec::ExecErrorDomain
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code number.

Rückgabewert

TypBeschreibung
const char *The message associated with the error code.

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

Record
AUTOSAR/AP/record/SWS_EM_02288
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_EM_02288@rel:R25-11#5def3e1a
Content hash
5def3e1a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_ExecutionManagement.pdf#nameddest=SWS_EM_02288
Status: valid/unmigrated Version: rel:R25-11#b9df5281 Versionshistorie & Revisions (1 transition, 8 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_EM_02288@rel:R25-11#b9df5281
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#5def3e1a2026-09-30
  • R19-11rel:R19-11#d31cbdd02026-10-14
  • R20-11rel:R20-11#679ee02b2026-10-14
  • R21-11rel:R21-11#679ee02b2026-10-14
  • R22-11rel:R22-11#e4baf8fd2026-10-14
  • R23-11rel:R23-11#7ed2ece62026-10-14
  • R24-11rel:R24-11#03e1c5982026-10-14
  • R25-11rel:R25-11#b9df52812026-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

function Name [SWS_EM_02287] Upstream: RS_AP_00120, RS_AP_00130, RS_AP_00159

const char * Name () const noexcept override;

Returns a string constant associated with ExecErrorDomain.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 20cf7a986d6c Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The member function Name of class ara::exec::ExecErrorDomain synchronously returns a pointer to a character-based constant (const char *) identifying the error domain [SWS_EM_02287]. The return conforms to the definition for ara::exec::ExecErrorDomain from [SWS_CORE_90023]. The method is included via header ara/exec/exec_error_domain.h, expects no input parameters, and operates as a const member function on instances of the error domain [SWS_EM_02287].

Error Handling and Concurrency

The interface is declared as noexcept and is thus classified as completely exception safe (exception safe) [SWS_EM_02287]. Neither error codes are returned nor exceptions thrown. Regarding concurrent access, the function is specified as thread-safe (thread-safe) [SWS_EM_02287]. Calls can consequently be executed in parallel from different threads without additional synchronization measures.

Interaction

By being declared as override, the function implements the general interface for querying the domain name within the scope of [SWS_CORE_90023]. The returned string presumably serves to uniquely identify the error domain in a human-readable form in log or diagnostic outputs [SWS_EM_02287]. Question Q-ae1f9de8510d7ff9 (open)

This usage note was generated automatically based on the AUTOSAR R25-11 specification.

Header-Datei#include "ara/exec/exec_error_domain.h"
Scopeclass ara::exec::ExecErrorDomain
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
const char *As per ara::exec::ExecErrorDomain in [SWS_CORE_90023]

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

Record
AUTOSAR/AP/record/SWS_EM_02287
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_EM_02287@rel:R25-11#b151e552
Content hash
b151e552
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_ExecutionManagement.pdf#nameddest=SWS_EM_02287
Status: valid/unmigrated Version: rel:R25-11#d23f457d Versionshistorie & Revisions (1 transition, 8 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_EM_02287@rel:R25-11#d23f457d
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#b151e5522026-09-30
  • R19-11rel:R19-11#dd6b66162026-10-14
  • R20-11rel:R20-11#e0b063ee2026-10-14
  • R21-11rel:R21-11#e0b063ee2026-10-14
  • R22-11rel:R22-11#06e546312026-10-14
  • R23-11rel:R23-11#20b3f0a42026-10-14
  • R24-11rel:R24-11#27688c332026-10-14
  • R25-11rel:R25-11#d23f457d2026-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

function ThrowAsException [SWS_EM_02289] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130, RS_AP_00159

void ThrowAsException (const ara::core::ErrorCode &errorCode) const noexcept(false) override;

Creates a new instance of ExecException from errorCode and throws it as a C++ exception. As per [SWS_CORE_10304], this function does not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 0befaaedb4b9 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method ThrowAsException of the error domain ara::exec::ExecErrorDomain serves to synchronously throw a C++ exception based on an occurred error code [SWS_EM_02289]. It accepts a reference to errorCode (type const ara::core::ErrorCode &) as an input parameter, instantiates an exception object of type ExecException from it, and throws it immediately as a C++ exception [SWS_EM_02289]. The function returns no value.

With regard to error and runtime behavior, the following aspects must be observed:

  • Exception safety: Since the intended behavior of the function consists in throwing an exception, it is annotated with noexcept(false) and formally classified as not exception safe (not exception safe) [SWS_EM_02289]. Callers must therefore be prepared to catch or handle ExecException.
  • Concurrency: The specification designates the member function as thread-safe (thread-safe) [SWS_EM_02289]. It can therefore safely be called from concurrent threads.
  • Toolchain restrictions: According to [SWS_CORE_10304], ThrowAsException does not participate in overload resolution if C++ exceptions are disabled in the compiler toolchain [SWS_EM_02289]. In environments without exception support, this call is consequently not available.

This text was generated by an AI based on the AUTOSAR Adaptive Release R25-11 specification.

Header-Datei#include "ara/exec/exec_error_domain.h"
Scopeclass ara::exec::ExecErrorDomain
Exception-Sicherheitnot exception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error to throw.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_EM_02289
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_EM_02289@rel:R25-11#ff00346b
Content hash
ff00346b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_ExecutionManagement.pdf#nameddest=SWS_EM_02289
Status: valid/unmigrated Version: rel:R25-11#47f06ef7 Versionshistorie & Revisions (1 transition, 8 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_EM_02289@rel:R25-11#47f06ef7
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ff00346b2026-09-30
  • R19-11rel:R19-11#ddd84bb82026-10-14
  • R20-11rel:R20-11#e526d9662026-10-14
  • R21-11rel:R21-11#e526d9662026-10-14
  • R22-11rel:R22-11#bee94e392026-10-14
  • R23-11rel:R23-11#82b994f12026-10-14
  • R24-11rel:R24-11#f7406c9e2026-10-14
  • R25-11rel:R25-11#47f06ef72026-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