DEENESPTFRRUARHIKOZHNL

class <SI-Namespace>::proxy::methods::<Method>

[SWS_CM_00006] Upstream: RS_CM_00212, RS_CM_00213, RS_AP_00114

class <Method> final {...};

Service proxy method class, one for each ClientServerOperation ( ClientServerOperation.fireAndForget ==FALSE) defined in the ServiceInterface in the role method.

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy.h"
Forwarding-Header#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy/<SiShortname>_proxy_fwd.h"
Scopenamespace <SI-Namespace>::proxy::methods

User GuideAI-GENERATED

Enables the asynchronous invocation of service methods with return value and the verification of the end-to-end status.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 90f1e995b658 Provenance Open questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Enables the asynchronous invocation of service methods with return value and the verification of the end-to-end status.

The proxy method class <SI-Namespace>::proxy::methods::<Method> enables client applications to perform method invocations with return value for client-server operations defined in ServiceInterface [SWS_CM_00196]. The invocation is performed non-blocking via operator(), which immediately returns a ara::core::Future for flexible synchronous or asynchronous result querying [SWS_CM_00196]. In addition, GetE2EStateMachineState() allows reading the protection status of the associated end-to-end state machine [SWS_CM_00148]. Because the operations are specified as exception-safe, transmission and runtime errors are reported via the Future with standardized error codes.

Context

Class <SI-Namespace>::proxy::methods::<Method> represents the client-side interface for synchronous and asynchronous method invocations within AUTOSAR Adaptive Communication Management. For each client-server operation declared in ServiceInterface for which the attribute ClientServerOperation.fireAndForget == FALSE is configured, the communication framework generates exactly one dedicated proxy method class in the role of a method. The class is declared as final and included via header #include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy.h" SWS Communication Management, p. 39. The invoking client application and the network binding, which forwards the method transmission to the remote service instance and receives its response, act as direct interaction partners [SWS_CM_00196]. The proxy method accepts the invocation parameters and encapsulates the asynchronous sequence via a ara::core::Future object, through which the client queries the completion and result of the call.

Lifecycle

Instantiation of <SI-Namespace>::proxy::methods::<Method> occurs jointly with the parent service proxy. Interpretation: The method class is likely instantiated and destroyed together with the generated proxy object as an integral part of it, which is why the user does not allocate the instance separately. Question Q-546c9b1bceedef6b (open) Regarding concurrency, the method call via operator() is designed to be non-blocking; the function initiates transmission and immediately returns to the caller [SWS_CM_00196]. A central state of the instance is protection by end-to-end mechanisms (E2E). Via method GetE2EStateMachineState(), the application can determine the current status of the method-specific state machine (ara::com::e2e::SMState) [SWS_CM_00148]. This state is determined by the internal check function E2E_Check(), which is executed during the processing of the last call to operator() [SWS_CM_00148], SWS Communication Management, p. 55. Interpretation: The state update of the E2E state machine is likely to take effect asynchronously with the arrival and checking of the response message. Question Q-283a9927420e2952 (open)

Usage Path

The typical call sequence comprises initiating the method call, synchronizing on the result, and subsequently verifying integrity:

  1. Trigger call: The client application invokes the function object via operator() with the declared input parameters [SWS_CM_00196], [SWS_CM_00191].
  2. Immediate return: The call does not block the requesting thread, but returns an object of type ara::core::Future<Output> immediately [SWS_CM_00196].
  3. Result query: The caller decides autonomously between synchronous waiting (e.g. via the Future object) or asynchronous monitoring for completion of the call [SWS_CM_00196]. Upon successful completion, the Future provides the Output object with the response values [SWS_CM_00196], [SWS_CM_99333].
  4. Check E2E protection status: After completion of the call, the application can query the state of the E2E state machine via GetE2EStateMachineState() to ensure the validity of the data transmission [SWS_CM_00148].
Sequence of a proxy method callClientmethods::<Method>Future<Output>Server / Bindingoperator()(args)Transmit method callara::core::Future<Output>Antwortdaten bereitstellenE2E_Check() aktualisiert E2E-Statusget() / Ergebnis abfragenOutput or errorGetE2EStateMachineState()ara::com::e2e::SMState

Sequence diagram: Typical sequence of a method call with asynchronous return via future and subsequent E2E status query. Sources: [SWS_CM_00196], [SWS_CM_00148].

Error Scenarios

The operations operator() and GetE2EStateMachineState() are specified as exception-safe (exception safe) and declared with noexcept [SWS_CM_00148], [SWS_CM_00196]. Communication and provision errors are therefore not reported via C++ exceptions, but transported via the resulting ara::core::Future object, which encapsulates a corresponding ara::core::FutureErrc or error codes in the event of an error [SWS_CM_00196]. Specified error causes include:

  • CommunicationFailure: The network binding reports a recoverable communication error or the failure of a secured connection; in the event of communication timeouts, this may lead to an uncertain state on the remote server [SWS_CM_00196].
  • ComErrc::kServiceNotAvailable: The service instance is no longer reachable after previous provision [SWS_CM_00196].
  • ComErrc::kUnknownApplicationError: A remote service reports an unconfigured application error [SWS_CM_00196].
  • ComE2EErrc::kUnspecifiedE2EError: The remote service reports an unspecified end-to-end error [SWS_CM_00196].
  • ComErrc::kMinimumSendIntervalViolationError: The call request occurred faster than permitted by the minimum send interval configured for the interface element minimumSendInterval [SWS_CM_00196].
  • Permission violation (InsufficientPermissionsViolation): If the caller lacks required permissions, execution is rejected by grant enforcement [SWS_CM_00196].

According to the specification, rollback semantics (rollback_semantics) are defined for these application and communication errors [SWS_CM_00196].

This guide is based exclusively on the specification requirements of AUTOSAR Adaptive Release R25-11.

Member map

Operators

1

Embedded types

1

Class diagram

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

G n_SI_Namespace___proxy__methods___Method_320 <Method> + GetE2EStateMachineState() + operator()

Detail view

Select an entry in the outline.

Methods

Returns the state of the specific method class, which was determined by the last run of E2E_Check() function invoked during the last call of operator()

ara::com::e2e::SMState GetE2EStateMachineState () const noexcept;

Operators

operator function

Initiate a method call (ClientServerOperation. fireAndForget ==FALSE). The method call will return immediately. The caller’s selection of a synchronous or asynchronous behavior to get the method output is achieved by the use of the returned ara::core::Future object which is used to query for method completion and result including possible error.

ara::core::Future< Output > operator() ( {<p-method-in-arg-derived-type-0toN>} {<p-method-in-arg-symbol-0toN>}) noexcept;

Embedded types

Output class

Method documentation

function GetE2EStateMachineState [SWS_CM_00148] Upstream: RS_CM_00224, RS_E2E_08534

ara::com::e2e::SMState GetE2EStateMachineState () const noexcept;

Returns the state of the specific method class, which was determined by the last run of E2E_Check() function invoked during the last call of operator()

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy.h"
Scopeclass <SI-Namespace>::proxy::methods::<Method>
Exception-Sicherheitexception safe

Rückgabewert

TypBeschreibung
ara::com::e2e::SMStateState of the specific method class

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

Record
AUTOSAR/AP/record/SWS_CM_00148
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00148@rel:R25-11#6f69a7c8
Content hash
6f69a7c8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00148
Status: valid/unmigrated Version: rel:R25-11#6f69a7c8 Versionshistorie & Revisions (1 transition)
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_00148@rel:R25-11#6f69a7c8
Point-in-Time History:
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 operator [SWS_CM_00196] Upstream: RS_CM_00212, RS_CM_00213, RS_AP_00114, RS_AP_00120, RS_AP_00127, RS_AP_00128, RS_AP_00138

ara::core::Future< Output > operator() ( {<p-method-in-arg-derived-type-0toN>} {<p-method-in-arg-symbol-0toN>}) noexcept;

Initiate a method call (ClientServerOperation. fireAndForget ==FALSE). The method call will return immediately. The caller’s selection of a synchronous or asynchronous behavior to get the method output is achieved by the use of the returned ara::core::Future object which is used to query for method completion and result including possible error.

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy.h"
Scopeclass <SI-Namespace>::proxy::methods::<Method>
Exception-Sicherheitexception safe ComErrc::k no_rollback_semantics
Verletzungen (Violations)InsufficientPer- Refused by Grant Enforcement missionsViolation

Parameter (in)

ParameterBeschreibung
{<p-method-in-arg-symbol-0toN>}As per {<p-method-in-arg-symbol-0toN>} in [SWS_CM_00191]

Rückgabewert

TypBeschreibung
ara::core::Future<Output >• If successful: an ara::core::Future containing a Output object as per [SWS_CM_99333] • If unsuccessful: an ara::core::Future containing a corresponding ara::core::FutureErrc

Fehler

FehlercodeBeschreibung
CommunicationFailureThe network binding reported a recoverable communications error or a secure communication failure. In case of a communication timeout this could lead to an uncertain state on the remote server side.
ComErrc::kUnknownApplicationErrorrollback_semantics A remote service returned an unconfigured application error.
ComErrc::kServiceNotAvailablerollback_semantics Service is not available after being previously offered via Offer Service()
ComE2EErrc::kUnspecifiedE2EErrorrollback_semantics A remote service returned an unspecified E2E error.
ComErrc::kMinimumSendIntervalViolationErrorrollback_semantics Minimum Send Interval violation, because a transmission request for a service instance element (event, field or method call) was issued faster than allowed, i.e., the configured minimum send interval ServiceInterfaceDeploymentElement. minimumSendInterval for the service instance element has not yet expired.

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

Record
AUTOSAR/AP/record/SWS_CM_00196
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00196@rel:R25-11#9ff3657d
Content hash
9ff3657d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00196
Status: valid/unmigrated Version: rel:R25-11#52e964c2 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_CM_00196@rel:R25-11#52e964c2
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#9ff3657d2026-09-30
  • R19-11rel:R19-11#f1ab8f5a2026-10-14
  • R20-11rel:R20-11#371fca132026-10-14
  • R21-11rel:R21-11#3b7e8fe92026-10-14
  • R22-11rel:R22-11#83f6c51d2026-10-14
  • R23-11rel:R23-11#354539802026-10-14
  • R24-11rel:R24-11#666c03b72026-10-14
  • R25-11rel:R25-11#52e964c22026-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