struct ara::diag::SovdOperationExecution::GetStatusResponse
struct GetStatusResponse {...};
Get Status response .
| Header-Datei | #include "ara/diag/generic_diagnostic_sovd_operation.h" |
|---|---|
| Forwarding-Header | #include "ara/diag/diag_fwd.h" |
| Scope | class ara::diag::SovdOperationExecution |
User GuideAI-GENERATED
Serves as a return structure for the asynchronous status query of SOVD operations to Diagnostic Management.
Serves as a return structure for the asynchronous status query of SOVD operations to Diagnostic Management.
Data structure GetStatusResponse serves as a return container for the asynchronous status query of SOVD operations ([SWS_DM_02200]). It is passed from a SovdOperationExecution instance via a ara::core::Future to Diagnostic Management, which derives from it attributes status and parameters for the ASAM SOVD response ([SWS_DM_02181]). A prerequisite for provisioning is a successful proximity validation as well as error-free asynchronous execution of the call.
Context
Structure ara::diag::SovdOperationExecution::GetStatusResponse is a response data structure of the Adaptive Platform ([SWS_DM_02200]) used as a standardized return container when querying the status of SOVD operations (Service-Oriented Vehicle Diagnostics) (AUTOSAR_AP_SWS_Diagnostics §8.62.6 “Struct: GetStatusResponse”). Within module diag, the structure functions as an interface element between the diagnostic daemon Diagnostic Management (DM) and application-specific diagnostic services that implement interface SovdOperationExecution. If an external SOVD call to query operation status is received by Diagnostic Management (“Read the Status of an operation”), the DM forwards this request to the responsible instance ([SWS_DM_02180]). GetStatusResponse encapsulates the determined status and result data and enables the DM to construct the standard-compliant response according to ASAM SOVD ([SWS_DM_02181]).
Lifecycle
As a data structure (struct GetStatusResponse), an instance is typically instantiated in the context of the service application as soon as the virtual method SovdOperationExecution::GetStatus is called for processing. The object is embedded as a value in a ara::core::Future<GetStatusResponse>, which prescribes the asynchronous method signature as a return type (AUTOSAR_AP_SWS_Diagnostics §8.62 “GetStatus”). Interpretation: GetStatusResponse is likely designed as a pure value transfer object whose lifecycle is tightly coupled to the associated Future and Promise pair. Question Q-e5e2b31a97df0af4 (open) As soon as the application-specific determination is completed and the Future is fulfilled, data access transfers to the calling Diagnostic Management. After reading the attributes to assemble the SOVD response ([SWS_DM_02181]), the lifetime of the structure ends, and it is destroyed regularly.
Usage Path
The regular sequence when querying operation status comprises the interaction of several components:
- An external SOVD client sends the method “Read the Status of an operation” with a specific
execution-idto the DM ([SWS_DM_02180]). - The DM checks the request and, if necessary, validates the proximity challenge ([SWS_DM_02173]).
- After successful verification, the DM uses
execution-idto address the correspondingSovdOperationExecutioninstance ([SWS_DM_02177]) and calls its methodGetStatus(meta_info, cancellation_handler)([SWS_DM_02180], AUTOSAR_AP_SWS_Diagnostics §8.62 “GetStatus”). - The application determines the execution state, populates
GetStatusResponsewith the status value (status) as well as the output parameters (ParametersfromDiagnosticSovdContentData), and provides the object via theara::core::Future([SWS_DM_02181]). - The DM extracts the data from the provided
GetStatusResponse, sets fieldcapabilitytoexecute, and sends the response body back to the client according to ASAM SOVD ([SWS_DM_02181]).
Sequence diagram: interaction when querying operation status via GetStatusResponse. Sources: [SWS_DM_02180], [SWS_DM_02181], AUTOSAR_AP_SWS_Diagnostics §8.62 “GetStatus”, [SWS_DM_02173]
Error Scenarios
Processing and successful exchange of GetStatusResponse depend on several preconditions and error paths:
- If a required proximity challenge fails ([SWS_DM_02173]), the DM does not call method
GetStatusin the first place ([SWS_DM_02180]); instantiation or evaluation ofGetStatusResponseis omitted entirely in this case. - The method
SovdOperationExecution::GetStatusis declared asnoexcept(AUTOSAR_AP_SWS_Diagnostics §8.62 “GetStatus”). Consequently, errors during status determination must not be propagated via C++ exceptions, but must be signaled asynchronously via the error path of theara::core::Future. - If the execution of the method fails ("succeeded" condition not met), regular assembly of the SOVD success response is omitted ([SWS_DM_02181]).
- Via the passed object
ara::diag::CancellationHandler, the ongoing operation can be informed of a cancellation request (AUTOSAR_AP_SWS_Diagnostics §8.62 “GetStatus”).
This guide was generated by an AI and is based on the AUTOSAR specification R25-11.
gemini-3.8-flash-low· 2026-10-13 · German original