DEENESPTFRRUARHIKOZHNL

класс ara::diag::SovdOperationExecution

[SWS_DM_02197] Upstream: RS_Diag_04262

class SovdOperationExecution {...};

Interface to handle the SOVD Operation Execution .

Header-Datei#include "ara/diag/generic_diagnostic_sovd_operation.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

Руководство пользователяСОЗДАНО ИИ

Служит интерфейсом для управления, запроса статуса и контролируемого завершения текущих выполнений операций SOVD.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 45e435c1ec1c Происхождение Открытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Служит интерфейсом для управления, запроса статуса и контролируемого завершения текущих выполнений операций SOVD.

Интерфейс служит для управления и мониторинга текущей операции SOVD на уровне приложения в Diagnostic Management [SWS_DM_02197]. Через защищенные методы он обрабатывает запросы статуса, а также требования по выполнению специальных возможностей или отмене операции. Все возвраты осуществляются асинхронно через futures, при этом ошибки в обязательном порядке передаются в виде стандартизированных кодов ошибок SOVD согласно ISO 17978-3 [SWS_DM_02384]. Кроме того, реализации должны быть потокобезопасными и строго привязывать переданные обработчики отмены (cancellation handlers) к времени жизни операции.

Контекст

Класс ara::diag::SovdOperationExecution определяет программный интерфейс для управления и мониторинга текущих выполнений операций SOVD (Service-Oriented Vehicle Diagnostics) внутри модуля diag AUTOSAR Adaptive Platform [SWS_DM_02197], SWS Diagnostics §8.62.5 «Class: SovdOperationExecution». Он выступает в качестве связующего звена между Diagnostic Management (DM) и выполняющей логикой приложения для связанных с диагностикой рутин согласно ASAM SOVD и ISO 17978-3.

Когда внешний SOVD-клиент инициирует запуск операции [SWS_DM_01396] и опциональная валидация Proximity Challenge успешно пройдена [SWS_DM_02174], DM инстанцирует или привязывает выполнение к уникальному идентификатору (execution-id) [SWS_DM_02177]. Все последующие вызовы методов для этой текущей операции — в частности, запросы статуса и команды отмены — DM перенаправляет тому экземпляру ara::diag::SovdOperationExecution, который назначен этому идентификатору [SWS_DM_02180].

SovdOperationExecutionContext client SOVD-Client dm Diagnostic Management (DM) client->dm SOVD-Methodenaufrufe (Start, Status, Terminate) dm->client SOVD-Antworten (JSON-Payload) execution ara::diag::SovdOperationExecution (Anwendungsimplementierung) dm->execution ExecuteCapability() / GetStatus() / Terminate() execution->dm ara::core::Future

Контекстная диаграмма: интеграция SovdOperationExecution между SOVD-клиентом, Diagnostic Management и логикой операций приложения. Источники: [SWS_DM_01396], [SWS_DM_02180], [SWS_DM_02197].

Жизненный цикл

Класс имеет конструктор по умолчанию, объявленный как noexcept=default [SWS_DM_02198], а также виртуальный деструктор, который также определен как noexcept=default [SWS_DM_02199]. Поскольку все прикладные методы — ExecuteCapability [SWS_DM_02384], GetStatus [SWS_DM_02201] и Terminate [SWS_DM_02202] — являются чисто виртуальными (= 0) и защищенными (protected), класс не может быть инстанцирован напрямую. Интерпретация: разработчики приложений создают производные классы от SovdOperationExecution для реализации специализированных рутин приложения. Вопрос Q-c1d622c7aa17382d (открытый)

Каждое активное выполнение операции сопоставляется в DM с execution-id [SWS_DM_02177], [SWS_DM_02180]. В спецификации подчеркивается, что операции во многих случаях допускают только один одновременный экземпляр SWS Diagnostics §7.3.3.5.5.6 «Operations – Terminate execution of an operation». Все интерфейсные методы специфицированы как потокобезопасные (thread-safe) и безопасные относительно исключений (exception safe) [SWS_DM_02384], [SWS_DM_02201], [SWS_DM_02202].

В отношении управления памятью и временем жизни действуют строгие предписания: параметр sovd_content_data остается действительным до тех пор, пока соответствующий promise не будет выполнен или обработка не будет отменена через cancellation_handler [SWS_DM_02384]. Сам объект cancellation_handler ни при каких обстоятельствах не должен сохраняться или вызываться дольше времени жизни соответствующей операции [SWS_DM_02384], [SWS_DM_02201], [SWS_DM_02202].

Путь использования

Типичный процесс сопровождения операции SOVD подразделяется на следующие шаги:

  • Запрос возможностей: DM может запрашивать для текущей операции через метод ExecuteCapability такие действия, как выполнение, заморозка или сброс [SWS_DM_02384].
  • Запрос статуса: если DM получает вызов SOVD «Read the Status of an operation» и требуемая валидация близости (Proximity) проходит успешно [SWS_DM_02173], он вызывает GetStatus назначенного экземпляра SovdOperationExecution [SWS_DM_02180], [SWS_DM_02201]. После успешного возврата DM отвечает клиенту атрибутами status (из GetStatusResponse.status), capability (значение execute) и parameters (производное от GetStatusResponse.Parameters) [SWS_DM_02181].
  • Завершение операции: если на Diagnostic Server поступает вызов метода SOVD «Terminate execution of an Operation» [SWS_DM_01392], то после валидации ответа Proximity [SWS_DM_01391] у экземпляра вызывается метод Terminate с указанием причины (TerminateOperationExecutionReason) [SWS_DM_02179], [SWS_DM_02202].
Мониторинг статуса и прекращение операции SOVDSOVD-ClientDiagnostic Management (DM)SovdOperationExecutionUse Case: Запрос статуса выполняемой операцииRead the Status of an operation (execution-id)GetStatus(meta_info, cancellation_handler)Future<GetStatusResponse>SOVD Response (status, parameters)Use Case: Прекращение выполняемой операцииTerminate execution of an operationTerminate(reason, meta_info, cancellation_handler)Future<void>SOVD Terminate Response

Диаграмма последовательности: последовательность взаимодействия между Diagnostic Management и SovdOperationExecution при запросах статуса и контролируемом завершении. Источники: [SWS_DM_02180], [SWS_DM_02181], [SWS_DM_02179], [SWS_DM_02202].

Сценарии ошибок

Все выполняемые методы (ExecuteCapability, GetStatus, Terminate) работают асинхронно и возвращают ara::core::Future [SWS_DM_02384], [SWS_DM_02201], [SWS_DM_02202]. Если обработка внутри приложения завершается неудачей, future должен быть выполнен с применимым кодом ошибки SOVD согласно ISO 17978-3 или ASAM SOVD 1.1 [SWS_DM_02384], [SWS_DM_02201], [SWS_DM_02202].

Если текущий запрос отменяется со стороны диагностического фреймворка, DM сигнализирует об этом через переданный объект ara::diag::CancellationHandler [SWS_DM_02384]. Реализация должна учитывать состояние отмены этого обработчика и незамедлительно завершать обработку во избежание блокирующих состояний.

Данное руководство по классу сгенерировано на основе спецификации AUTOSAR Adaptive Platform Release R25-11.

Карта членов

Конструкторы и деструктор

2

Вложенные типы

1

Диаграмма классов

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

G nara__diag__SovdOperationExecution800 SovdOperationExecution + SovdOperationExecution() + ~SovdOperationExecution() + ExecuteCapability() + GetStatus() + Terminate()

Подробный вид

Выберите элемент в оглавлении.

Конструкторы и деструктор

SovdOperationExecution функция

Constructor of SovdOperationExecution (inherited) -.

SovdOperationExecution () noexcept=default;

Destructor of SovdOperationExecution -.

virtual ~SovdOperationExecution () noexcept=default;

Методы

ExecuteCapability функция

Called for " Support for execute / freeze / reset" for the specified SOVD Operation.

virtual ara::core::Future< OperationExecutionStatus > Execute Capability (OperationExecutionCapability capability, DiagnosticSovd ContentData const &sovd_content_data, ara::diag::MetaInfo const &meta_ info, ara::diag::CancellationHandler cancellation_handler) noexcept=0;
GetStatus функция

Called for "Get status execution of an operation" for the current execution.

virtual ara::core::Future< GetStatusResponse > GetStatus (ara::diag::MetaInfo const &meta_info, ara::diag::CancellationHandler cancellation_handler) noexcept=0;
Terminate функция

Called for "Terminate execution of an operation" for the current execution.

virtual ara::core::Future< void > Terminate (TerminateOperation ExecutionReason reason, ara::diag::MetaInfo const &meta_info, ara::diag::CancellationHandler cancellation_handler) noexcept=0;

Вложенные типы

Документация методов

функция ExecuteCapability [SWS_DM_02384] Upstream: RS_Diag_04262

virtual ara::core::Future< OperationExecutionStatus > Execute Capability (OperationExecutionCapability capability, DiagnosticSovd ContentData const &sovd_content_data, ara::diag::MetaInfo const &meta_ info, ara::diag::CancellationHandler cancellation_handler) noexcept=0;

Called for " Support for execute / freeze / reset" for the specified SOVD Operation.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: aa676a4edac8 Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Чисто виртуальный метод ExecuteCapability из ara::diag::SovdOperationExecution служит для выполнения, замораживания или сброса указанной операции SOVD согласно [SWS_DM_02384] (SWS Diagnostics §8.62.5.2.1.1 «ExecuteCapability»). Поскольку функция определена как protected и чисто виртуальная, она, вероятно, типично переопределяется подклассами приложения и вызывается демоном диагностики. Вопрос Q-66c5defcf6d00f57 (открытый)

Вызов выполняется асинхронно и возвращает ara::core::Future<OperationExecutionStatus> [SWS_DM_02384]. При вызове передаются выполняемая возможность (capability), дополнительная метаинформация (meta_info), cancellation_handler, а также полезные данные (sovd_content_data). Данные в sovd_content_data остаются действительными до тех пор, пока соответствующий Promise не будет выполнен или обработка не будет отменена через cancellation_handler [SWS_DM_02384].

Для параллелизма и времени жизни действуют четкие требования: операция специфицирована как потокобезопасная и исключительной безопасности (exception safe и noexcept соответственно). Переданный объект cancellation_handler информирует об отмене текущего запроса; его ни в коем случае нельзя сохранять или использовать в качестве ссылки за пределами времени жизни этой операции [SWS_DM_02384].

В случае успеха Future возвращает статус выполнения OperationExecutionStatus. Если обработка завершается неудачно, через Future должен быть возвращен подходящий код ошибки SOVD согласно ISO 17978-3 или ASAM SOVD 1.1 [SWS_DM_02384].

Это указание по использованию было автоматически сгенерировано на основе спецификации AUTOSAR R25-11.

Руководство разработчика реализации в подготовке (сложность I1)

Header-Datei#include "ara/diag/generic_diagnostic_sovd_operation.h"
Scopeclass ara::diag::SovdOperationExecution
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Sichtbarkeitprotected

Parameter (in)

ParameterBeschreibung
capabilityThe SOVD operation execution capability
sovd_content_dataThe SOVD content data. Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler
meta_infocontains additional meta information
cancellation_handlerInforms if the current request is cancelled. This object shall not be stored or accessed beyond the lifetime of this operation.

Rückgabewert

TypBeschreibung
ara::core::Future<OperationExecutionStatus >A future with either execution status (for a positive response message) or a SOVD Error (for an negative response message)

Fehler

FehlercodeBeschreibung
Please use an applicable SOVD error code, as defined in ISO 17978-3 / ASAM SOVD 1.1.

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

Record
AUTOSAR/AP/record/SWS_DM_02384
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02384@rel:R25-11#12312418
Content hash
12312418
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02384
Status: valid/unmigrated Version: rel:R25-11#38d7bf66 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_DM_02384@rel:R25-11#38d7bf66
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

функция GetStatus [SWS_DM_02201] Upstream: RS_Diag_04262

virtual ara::core::Future< GetStatusResponse > GetStatus (ara::diag::MetaInfo const &meta_info, ara::diag::CancellationHandler cancellation_handler) noexcept=0;

Called for "Get status execution of an operation" for the current execution.

Header-Datei#include "ara/diag/generic_diagnostic_sovd_operation.h"
Scopeclass ara::diag::SovdOperationExecution
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Sichtbarkeitprotected

Parameter (in)

ParameterBeschreibung
meta_infocontains additional meta information
cancellation_handlerInforms if the current request is cancelled. This object shall not be stored or accessed beyond the lifetime of this operation.

Rückgabewert

TypBeschreibung
ara::core::Future< GetStatusResponse >A future with either GetStatusResponse (for a positive response message) or a SOVD Error (for an negative response message)

Fehler

FehlercodeBeschreibung
Please use an applicable SOVD error code, as defined in ISO 17978-3 / ASAM SOVD 1.1.

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

Record
AUTOSAR/AP/record/SWS_DM_02201
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02201@rel:R25-11#b62c99b0
Content hash
b62c99b0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02201
Status: valid/unmigrated Version: rel:R25-11#8e5630e2 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_DM_02201@rel:R25-11#8e5630e2
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

функция SovdOperationExecution [SWS_DM_02198] Upstream: RS_Diag_04262

SovdOperationExecution () noexcept=default;

Constructor of SovdOperationExecution (inherited) -.

Header-Datei#include "ara/diag/generic_diagnostic_sovd_operation.h"
Scopeclass ara::diag::SovdOperationExecution
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_DM_02198
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02198@rel:R25-11#e4488c36
Content hash
e4488c36
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02198
Status: valid/unmigrated Version: rel:R25-11#98ffcedf 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_DM_02198@rel:R25-11#98ffcedf
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

функция Terminate [SWS_DM_02202] Upstream: RS_Diag_04262

virtual ara::core::Future< void > Terminate (TerminateOperation ExecutionReason reason, ara::diag::MetaInfo const &meta_info, ara::diag::CancellationHandler cancellation_handler) noexcept=0;

Called for "Terminate execution of an operation" for the current execution.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: a1b92d94aba2 Происхождение
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Чисто виртуальный метод Terminate вызывается модулем Diagnostic Management (DM), как только поступает требование SOVD на прекращение текущей операции и возможная необходимая валидация Proximity Challenge прошла успешно [SWS_DM_02179]. Он служит для контролируемого прерывания выполнения операции, идентифицируемого соответствующим execution-id AUTOSAR_AP_SWS_Diagnostics §7.3.3.5.5.6 «Operations – Terminate execution of an operation».

При вызове передаются причина отмены через reason типа TerminateOperationExecutionReason ([SWS_DM_02196]), дополнительные метаданные (meta_info), а также cancellation_handler [SWS_DM_02202]. В качестве причин отмены специфицированы явное требование клиента (kClientRequest), истечение времени (kTimeout) или изменение состояния, такое как смена статуса сервера (kStateChange) [SWS_DM_02196]. Метод возвращает ara::core::Future<void>, который сообщает об асинхронном завершении модулю DM [SWS_DM_02202].

Обработка ошибок и граничные условия

В случае успеха Future разрешается с void, тогда как при ошибках должен возвращаться подходящий код ошибки SOVD согласно ASAM SOVD или ISO 17978-3 [SWS_DM_02202]. Интерфейс объявлен как noexcept, считается исключительной безопасности (exception safe) и thread-safe [SWS_DM_02202].

Жизненный цикл и параллелизм

С вызовом Terminate экземпляр SovdOperationExecution отбрасывается; последующие вызовы методов на этом execution-id больше не допустимы [SWS_DM_02179]. Переданный объект cancellation_handler ни в коем случае не должен сохраняться или использоваться за пределами времени жизни этой операции [SWS_DM_02202].

Данное указание по использованию было сгенерировано ИИ на основе спецификации.

Руководство разработчика реализации в подготовке (сложность I1)

Header-Datei#include "ara/diag/generic_diagnostic_sovd_operation.h"
Scopeclass ara::diag::SovdOperationExecution
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Sichtbarkeitprotected

Parameter (in)

ParameterBeschreibung
reasonThe terminate operation execution reason
meta_infocontains additional meta information
cancellation_handlerInforms if the current request is cancelled. This object shall not be stored or accessed beyond the lifetime of this operation.

Rückgabewert

TypBeschreibung
ara::core::Future< void >A future with either void (for a positive response message) or a SOVD Error (for an negative response message)

Fehler

FehlercodeBeschreibung
Please use an applicable SOVD error code, as defined in ISO 17978-3 / ASAM SOVD 1.1.

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

Record
AUTOSAR/AP/record/SWS_DM_02202
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02202@rel:R25-11#056085a6
Content hash
056085a6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02202
Status: valid/unmigrated Version: rel:R25-11#a8993271 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_DM_02202@rel:R25-11#a8993271
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

функция ~SovdOperationExecution [SWS_DM_02199] Upstream: RS_Diag_04262

virtual ~SovdOperationExecution () noexcept=default;

Destructor of SovdOperationExecution -.

Header-Datei#include "ara/diag/generic_diagnostic_sovd_operation.h"
Scopeclass ara::diag::SovdOperationExecution
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_DM_02199
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02199@rel:R25-11#29d4ffe1
Content hash
29d4ffe1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02199
Status: valid/unmigrated Version: rel:R25-11#9546e106 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_DM_02199@rel:R25-11#9546e106
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