DEENESPTFRRUARHIKOZHNL

class apext::tsync::TsyncFvmException

[SWS_TS_14203] Upstream: RS_TS_20072 wording not yet imported

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

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

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

User GuideAI-GENERATED

Used by the Freshness Value Manager to encapsulate and throw error states with an error code.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: abba6e58d551 Provenance Open questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Used by the Freshness Value Manager to encapsulate and throw error states with an error code.

The exception class apext::tsync::TsyncFvmException is used by the Freshness Value Manager in module tsync to report erroneous states during freshness value processing. Upon detection of an error, the exception is explicitly instantiated by passing a specific ara::core::ErrorCode and thrown in the control flow [SWS_TS_14204]. As essential constraints, the constructor is declared as noexcept and the class is designed to be completely thread-safe as well as exception-safe to ensure robust error propagation in concurrent systems [SWS_TS_14204].

Context

The class apext::tsync::TsyncFvmException is a specialized exception class within module tsync of the AUTOSAR Adaptive Platform. According to the module specification, it serves to encapsulate and propagate error states triggered by the Freshness Value Manager. The class is defined as a direct subclass of ara::core::Exception and thus ensures standardized C++ exception handling for errors in the context of freshness value management.

The primary interaction partners include the Freshness Value Manager as the throwing entity, as well as using software components and synchronization services that request freshness checks for secured communication relationships. If an exceptional condition occurs during the verification or calculation of a freshness value, the Freshness Value Manager instantiates this object to notify the caller. The declaration and interface definition take place via header file apext/tsync/fvm_error_domain.h [SWS_TS_14204].

Lifecycle

The lifecycle of an object of type apext::tsync::TsyncFvmException is bound to the lifecycle of regular C++ exceptions. Creation takes place via the explicit constructor TsyncFvmException, which accepts an error code of type ara::core::ErrorCode [SWS_TS_14204]. This constructor is declared with the specification noexcept, which guarantees that object creation itself is exception-safe and throws secondary exceptions under no circumstances [SWS_TS_14204].

The class is explicitly specified as exception safe (exception safe) and thread-safe (thread-safe) [SWS_TS_14204]. This allows the safe creation and propagation of instances even in complex, multithreaded runtime environments without the possibility of data races arising.

Interpretation: In terms of ownership, the exception is typically thrown by value and caught in the call stack by reference to a constant object (const apext::tsync::TsyncFvmException&). Question Q-6e8c4ad080550a52 (open) After construction, the object undergoes no further state changes; its destruction occurs automatically upon exiting the handling catch block.

Usage Path

The regular usage path occurs in the context of a validation or update of freshness values performed by the Freshness Value Manager. If the manager detects a violation of freshness integrity or an internal processing error, it initiates error handling:

  1. Error identification: The Freshness Value Manager detects an error state and creates a corresponding ara::core::ErrorCode object.
  2. Instantiation: The exception object is initialized via the constructor by passing the error code [SWS_TS_14204].
  3. Throwing: The exception is thrown into the calling context using throw.
  4. Evaluation: The calling application or layer catches the exception and accesses the embedded error code in order to initiate adequate remediation or degradation measures.
Sequence of exception handling with apext::tsync::TsyncFvmExceptionApplicationFreshness Value ManagerTsyncFvmExceptionRequest freshness checkInvalid freshness value detectedara::core::ErrorCode instanziierenTsyncFvmException(errorCode)throw TsyncFvmExceptioncatch (const TsyncFvmException&)Fehlercode auswerten

Sequence diagram: Typical error handling flow with apext::tsync::TsyncFvmException from detection in the Freshness Value Manager to catching in the caller. Sources: [SWS_TS_14204]

Error Scenarios

Since apext::tsync::TsyncFvmException itself is designed as an error signaling mechanism, functional error scenarios are primarily rooted in incorrect handling of the exception. The passing of a valid ara::core::ErrorCode to the constructor [SWS_TS_14204] is considered a precondition for creation. However, because the constructor is defined as noexcept, object creation remains stable even with unexpected error values [SWS_TS_14204].

Because the definition header apext/tsync/fvm_error_domain.h is prescribed, the encapsulated errorCode is expected to originate primarily from the specialized error domain of the Freshness Value Manager [SWS_TS_14204]. Question Q-91a4f2d66128bb91 (open) A severe error scenario arises if the thrown exception is not handled by any catch block at system level; according to standard C++ semantics, this inevitably leads to a call of std::terminate and thus to process termination. However, due to the guaranteed thread safety according to [SWS_TS_14204], errors due to concurrent accesses from parallel threads are excluded.

This guide is based exclusively on the specifications of AUTOSAR Release R25-11.

UML class diagram

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

G napext__tsync__TsyncFvmException780 TsyncFvmException + TsyncFvmException() nara__core__Exception792 Exception napext__tsync__TsyncFvmException780->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

Constructors and destructor

Constructs a new apext::tsync::TsyncFvmException object containing an error code.

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

Method documentation

function TsyncFvmException [SWS_TS_14204] Upstream: RS_TS_20072 wording not yet imported

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

Constructs a new apext::tsync::TsyncFvmException object containing an error code.

Header-Datei#include "apext/tsync/fvm_error_domain.h"
Scopeclass apext::tsync::TsyncFvmException
Exception-Sicherheitexception safe
Thread-Sicherheitthread-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_TS_14204
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14204@rel:R25-11#10c9dc5e
Content hash
10c9dc5e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14204
Status: valid/unmigrated Version: rel:R25-11#40142208 Versionshistorie & Revisions (1 transition, 3 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_TS_14204@rel:R25-11#40142208
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#10c9dc5e2026-09-30
  • R24-11rel:R24-11#77c0f00a2026-10-14
  • R25-11rel:R25-11#401422082026-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