DEENESPTFRRUARHIKOZHNL

класс ara::diag::ServiceValidation

[SWS_DM_00771] Upstream: RS_Diag_04199

class ServiceValidation {...};

DiagnosticServiceValidationInterface.

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

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

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

Выполняет валидацию входящих диагностических запросов в Diagnostic Management на основе проверок изготовителя или поставщика.

Класс ara::diag::ServiceValidation служит для специфичной для приложения валидации входящих диагностических UDS-запросов в Diagnostic Management на основе критериев изготовителя или поставщика [SWS_DM_00772]. После создания служба должна быть активирована с помощью Offer(), чтобы данные запроса асинхронно передавались для проверки в Validate() и затем подтверждались через Confirmation() [SWS_DM_00776]. В качестве существенного граничного условия экземпляр привязан к порту, не допускает ни копирования, ни перемещения и, за исключением конструктора, не является потокобезопасным.

Контекст

Класс ara::diag::ServiceValidation предоставляет интерфейс программирования для элемента моделирования DiagnosticServiceValidationInterface внутри диагностического стека AUTOSAR Adaptive. Через этот интерфейс приложение может реализовывать специфичные для приложения проверки входящих диагностических запросов. Экземпляр взаимодействует напрямую с Diagnostic Management (DM), которое авторизовано пересылать входящие диагностические запросы логике валидации [SWS_DM_00776].

Функциональное назначение валидации управляется атрибутом моделирования DiagnosticServiceValidationMapping.category. В зависимости от этой категории метод валидации Validate() в рамках правил реагирования UDS согласно ISO 14229-1 (раздел 8.7) вызывается либо в контексте проверки изготовителя («Manufacturer Check»), либо проверки поставщика («Supplier Check») [SWS_DM_00772]. DM, вероятно, подвергает входящие сообщения запросов этой проверке валидации перед фактическим выполнением службы, чтобы заблаговременно отфильтровывать недопустимые запросы. Вопрос Q-d84302d27d940634 (открытый)

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

Создание происходит явно через конструктор с указанием ara::core::InstanceSpecifier, который должен указывать на определенный в системной модели PortPrototype [SWS_DM_00772]. ara::diag::ServiceValidation спроектирован как некопируемый и неперемещаемый единичный экземпляр: как конструктор копирования [SWS_DM_01689], так и конструктор перемещения [SWS_DM_01690], а также операторы присваивания для копирования [SWS_DM_01687] и перемещения [SWS_DM_01688] объявлены удаленными (=delete).

После инициализации объект находится в состоянии покоя. Пересылка диагностических запросов от DM обработчику активируется только вызовом Offer() [SWS_DM_00776]. Предоставление службы может быть завершено во время выполнения через StopOffer(), в результате чего DM снова отключает пересылку [SWS_DM_00777]. Освобождение ресурсов осуществляется через виртуальный деструктор ~ServiceValidation() [SWS_DM_00773].

В отношении параллелизма исключительно конструктор специфицирован как потокобезопасный [SWS_DM_00772]. Методы Offer() [SWS_DM_00776], StopOffer() [SWS_DM_00777], Validate() [SWS_DM_00774], Confirmation() [SWS_DM_00775], а также деструктор [SWS_DM_00773] классифицированы как непотокобезопасные, но исключающие возникновение исключений (noexcept).

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

Конкретная логика валидации, вероятно, предоставляется путем наследования от ara::diag::ServiceValidation и переопределения виртуальных методов интерфейса приложением. Вопрос Q-84efdab7839212b5 (открытый) Типичный рабочий процесс делится на следующие фазы:

  1. Инстанциирование: создание экземпляра с передачей InstanceSpecifier, ссылающегося на сконфигурированный порт [SWS_DM_00772].
  2. Предоставление сервиса: вызов Offer() для активации пересылки запросов компонентом DM [SWS_DM_00776].
  3. Валидация: при каждом входящем диагностическом запросе DM вызывает метод Validate() [SWS_DM_00774]. Передаются необработанные данные (включая идентификатор сервиса, SID) в виде ara::core::Span<const std::uint8_t>, а также MetaInfo запроса [SWS_DM_00774]. Данные остаются действительными до тех пор, пока возвращенный ara::core::Future<void> не будет выполнен или обработка не будет прервана обработчиком отмены (cancellation handler) [SWS_DM_00774].
  4. Подтверждение: как только обработка диагностического запроса завершается, DM информирует обработчик через метод Confirmation() с передачей статуса результата (ConfirmationStatusType) и MetaInfo [SWS_DM_00775].
  5. Деактивация: завершение обработки запросов с помощью StopOffer() [SWS_DM_00777].
Процесс валидации и подтверждения диагностического запросаПриложениеServiceValidationDiagnostic ManagementOffer()Registrierung aktivierenValidate(requestData, metaInfo)Проверка данных и MetaInfoaltValidierung erfolgreichFuture<void> (Erfolg)Validierung fehlgeschlagenFuture<void> (DiagUdsNrcErrc)Confirmation(status, metaInfo)StopOffer()Registrierung deaktivieren

Диаграмма последовательности: последовательность вызовов для валидации и подтверждения диагностического запроса. Источники: [SWS_DM_00772], [SWS_DM_00774], [SWS_DM_00775], [SWS_DM_00776], [SWS_DM_00777].

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

Условия ошибок возникают как при статической проверке конфигурации во время конструирования, так и во время выполнения:

  • Нарушения при конструировании: конструктор сообщает о специфических ошибках моделирования как о нарушениях (Violations) [SWS_DM_00772]:
    • InstanceSpecifierMappingIntegrityViolation: идентификатор не удается разрешить в контексте Executable или он не указывает на PortPrototype [SWS_DM_00772].
    • PortInterfaceMappingViolation: целевой PortPrototype не типизирован через DiagnosticServiceValidationInterface [SWS_DM_00772].
    • ProcessMappingViolation: для процесса не существует подходящего смоделированного Process [SWS_DM_00772].
    • InstanceSpecifierAlreadyInUseViolation: InstanceSpecifier уже используется другим экземпляром в работающем процессе [SWS_DM_00772].
  • Предоставление сервиса: если Offer() вызывается, когда сервис уже активно предоставляется, возвращаемое значение ara::core::Result<void> возвращает код ошибки DiagOfferErrc::kAlreadyOffered [SWS_DM_00776].
  • Ошибки валидации: если содержательная проверка запроса завершается неудачно, приложение сигнализирует об отклонении через возвращенный ara::core::Future<void> путем установки соответствующего кода отрицательного ответа (Negative Response Code, NRC) из ISO 14229-1 через DiagUdsNrcErrc [SWS_DM_00774].

Это руководство основано на спецификации AUTOSAR Adaptive R25-11 для модуля diag.

Карта членов

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

2

Операторы

1

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

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

G nara__diag__ServiceValidation871 ServiceValidation + ServiceValidation() + operator=() + ~ServiceValidation() + Confirmation() + Offer() + StopOffer() + Validate()

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

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

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

ServiceValidation функция 3

Constructor of ServiceValidation. Depending on value of attribute DiagnosticServiceValidationMapping.category, the Validate is either called in the context of the NRC sequence in chapter 8.7 response implementation rules from UDS ISO 14229-1 as a Manufacturer or a Supplier Check.

Перегрузки ServiceValidation 3
explicit ServiceValidation (const ara::core::InstanceSpecifier &specifier) noexcept; SWS_DM_00772
ServiceValidation (ServiceValidation &)=delete; SWS_DM_01689
ServiceValidation (ServiceValidation &&)=delete; SWS_DM_01690
~ServiceValidation функция

Destructor of ServiceValidation .

virtual ~ServiceValidation () noexcept;

Методы

Confirmation функция

This method is called, when a diagnostic request has been finished, to notify about the outcome.

virtual void Confirmation (ConfirmationStatusType status, const Meta Info &metaInfo) noexcept;
Offer функция

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer функция

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;
Validate функция

Called for any request message.

virtual ara::core::Future< void > Validate (ara::core::Span< const std::uint8_t > requestData, const MetaInfo &metaInfo) noexcept;

Операторы

operator= функция 2

ServiceValidation shall be a single not assignable instance.

Перегрузки = 2

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

функция Confirmation [SWS_DM_00775] Upstream: RS_AP_00138, RS_Diag_04170, RS_Diag_04199

virtual void Confirmation (ConfirmationStatusType status, const Meta Info &metaInfo) noexcept;

This method is called, when a diagnostic request has been finished, to notify about the outcome.

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

Метод Confirmation интерфейса ara::diag::ServiceValidation ([SWS_DM_00775], объявленный в ara/diag/service_validation.h) служит уведомлением о завершении и результате ранее обработанного диагностического запроса.

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

Виртуальная функция обратного вызова вызывается синхронно модулем Diagnostic Management, как только обработка запроса завершена. Она не имеет возвращаемого значения (void) и принимает два входных параметра ([SWS_DM_00775]):

  • status (ConfirmationStatusType): сигнализирует о финальном статусе или результате обработки сервиса ([SWS_DM_00775]).
  • metaInfo (const Meta Info &): содержит сопутствующую метаинформацию диагностического запроса ([SWS_DM_00775]).

Обработка ошибок и параллелизм

Функция специфицирована как безопасная к исключениям (exception safe) и объявлена с идентификатором noexcept ([SWS_DM_00775]). Поэтому переопределения на стороне приложения не должны распространять исключения наружу. Специфические коды ошибок, такие как сообщения DET или DEM, для этого метода не определены. Что касается параллелизма, Confirmation классифицирован как непотокобезопасный (not thread-safe) ([SWS_DM_00775]); доступ к внутренним состояниям приложения внутри функции обратного вызова при параллельных процессах требует соответствующей синхронизации.

Взаимодействие

Инициирование уведомления привязано к завершению жизненного цикла диагностического запроса ([SWS_DM_00775]). Этот цикл завершается, как только положительный или отрицательный ответ был передан либо подавлен (AUTOSAR_AP_SWS_Diagnostics §7.3.2.1.2 «Life-cycle of a Diagnostic Conversation»). Интерпретация: на уровне модулей Diagnostic Management, вероятно, инициирует функцию обратного вызова Confirmation только тогда, когда передача через транспортный уровень была подтверждена посредством TransmitConfirmation и результата kTransmitOk или kTransmitFailed ([SWS_DM_00307], [SWS_DM_00351]). Вопрос Q-97c38586ef5e3704 (открытый)

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

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

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
statusstatus/outcome of the service processing.
metaInfoMetaInfo of the request.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00775
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00775@rel:R25-11#14a99091
Content hash
14a99091
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00775
Status: valid/unmigrated Version: rel:R25-11#bbcfd2e3 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_DM_00775@rel:R25-11#bbcfd2e3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#044090102026-09-30
  • R19-11rel:R19-11#20a5939d2026-10-14
  • R20-11rel:R20-11#761e125d2026-10-14
  • R21-11rel:R21-11#761e125d2026-10-14
  • R22-11rel:R22-11#991a58222026-10-14
  • R23-11rel:R23-11#a506b4142026-10-14
  • R24-11rel:R24-11#5339f3712026-10-14
  • R25-11rel:R25-11#bbcfd2e32026-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

функция Offer [SWS_DM_00776] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04199

ara::core::Result< void > Offer () noexcept;

This Offer will enable the DM to forward request messages to this handler.

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

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

Функция-член Offer класса ara::diag::ServiceValidation (заголовочный файл ara/diag/service_validation.h) активирует перенаправление входящих диагностических запросов через Diagnostic Manager (DM) этому специфическому обработчику валидации [SWS_DM_00776]. Вызов выполняется синхронно и без входных параметров через сигнатуру ara::core::Result<void> Offer() noexcept; [SWS_DM_00776]. В качестве возвращаемого значения служит ara::core::Result<void>, которое пусто в случае успеха или инкапсулирует возникший код ошибки в случае сбоя [SWS_DM_00776].

Обработка ошибок

Если регистрация завершается сбоем, метод возвращает ошибочный Result. Если сервис для данного экземпляра уже предлагался ранее, возвращается код ошибки DiagOfferErrc::kAlreadyOffered [SWS_DM_00776]. При этом действует семантика отката (rollback), так что предыдущее состояние экземпляра сохраняется без изменений [SWS_DM_00776].

Параллелизм и ограничения

Функция специфицирована как безопасная относительно исключений (exception safe), однако явно как непотокобезопасная (not thread-safe) [SWS_DM_00776]. Параллельные обращения к одному и тому же экземпляру должны координироваться вызывающим приложением. Что касается очередности, Offer должен быть вызван до того, как Diagnostic Manager сможет перенаправлять сервисные запросы для валидации [SWS_DM_00776].

Взаимодействие

Предоставление интерфейсов через Offer представляет собой согласованный шаблон проектирования адаптивной диагностики AUTOSAR и аналогично применяется, помимо прочего, для подпрограмм ([SWS_DM_00557], [SWS_DM_00594]), универсальных сервисов UDS ([SWS_DM_00619]), функций DoIP ([SWS_DM_00725], [SWS_DM_00735]), а также механизмов безопасного доступа ([SWS_DM_00766]). Пока интерфейс не был предоставлен через Offer, DM отбрасывает запросы или использует определенные резервные значения ([SWS_DM_01525], [SWS_DM_01527]). Понятийные параллели с ara::com обусловлены функционально, однако представляют собой самостоятельную реализацию диагностики (AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors»).

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

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

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_00776
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00776@rel:R25-11#747e2658
Content hash
747e2658
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00776
Status: valid/unmigrated Version: rel:R25-11#98f79358 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_DM_00776@rel:R25-11#98f79358
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f679147c2026-09-30
  • R19-11rel:R19-11#1c84ea4d2026-10-14
  • R20-11rel:R20-11#cea448532026-10-14
  • R21-11rel:R21-11#bcd37d0f2026-10-14
  • R22-11rel:R22-11#c7eb78232026-10-14
  • R23-11rel:R23-11#3732217c2026-10-14
  • R24-11rel:R24-11#d9522beb2026-10-14
  • R25-11rel:R25-11#98f793582026-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

функция ServiceValidation [SWS_DM_00772] Upstream: RS_AP_00137, RS_Diag_04199, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit ServiceValidation (const ara::core::InstanceSpecifier &specifier) noexcept;

Constructor of ServiceValidation. Depending on value of attribute DiagnosticServiceValidationMapping.category, the Validate is either called in the context of the NRC sequence in chapter 8.7 response implementation rules from UDS ISO 14229-1 as a Manufacturer or a Supplier Check.

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticServiceValidationMapping needs to be typed by a DiagnosticServiceValidationInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticServiceValidationInterface

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

Record
AUTOSAR/AP/record/SWS_DM_00772
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00772@rel:R25-11#9791c927
Content hash
9791c927
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00772
Status: valid/unmigrated Version: rel:R25-11#551e2d84 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_DM_00772@rel:R25-11#551e2d84
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#db1a817b2026-09-30
  • R19-11rel:R19-11#8ba9fe932026-10-14
  • R20-11rel:R20-11#12b557df2026-10-14
  • R21-11rel:R21-11#1f0371f52026-10-14
  • R22-11rel:R22-11#f49056232026-10-14
  • R23-11rel:R23-11#6c563b032026-10-14
  • R24-11rel:R24-11#f8f0ab112026-10-14
  • R25-11rel:R25-11#551e2d842026-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

функция ServiceValidation [SWS_DM_01689] Upstream: RS_AP_00147

ServiceValidation (ServiceValidation &)=delete;

ServiceValidation shall be a single not copy-able instance.

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation

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

Record
AUTOSAR/AP/record/SWS_DM_01689
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01689@rel:R25-11#8ce6abd2
Content hash
8ce6abd2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01689
Status: valid/unmigrated Version: rel:R25-11#d48785a6 Versionshistorie & Revisions (1 transition, 4 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_DM_01689@rel:R25-11#d48785a6
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#614925122026-09-30
  • R23-11rel:R23-11#428fd8c92026-10-14
  • R24-11rel:R24-11#d48785a62026-10-14
  • R25-11rel:R25-11#d48785a62026-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

функция ServiceValidation [SWS_DM_01690] Upstream: RS_AP_00147

ServiceValidation (ServiceValidation &&)=delete;

Move constructor of ServiceValidation.

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation

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

Record
AUTOSAR/AP/record/SWS_DM_01690
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01690@rel:R25-11#de064d4a
Content hash
de064d4a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01690
Status: valid/unmigrated Version: rel:R25-11#e4fdb290 Versionshistorie & Revisions (1 transition, 4 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_DM_01690@rel:R25-11#e4fdb290
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#52b974e02026-09-30
  • R23-11rel:R23-11#646ef28b2026-10-14
  • R24-11rel:R24-11#e4fdb2902026-10-14
  • R25-11rel:R25-11#e4fdb2902026-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

функция StopOffer [SWS_DM_00777] Upstream: RS_Diag_04199

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

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

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

Метод StopOffer() класса ara::diag::ServiceValidation (заголовочный файл ara/diag/service_validation.h) служит для того, чтобы отключить пересылку входящих сообщений запросов Diagnostic Management (DM) экземпляру валидации служб [SWS_DM_00777]. Вызов происходит синхронно, не принимает входных параметров и не возвращает значения [SWS_DM_00777].

Обработка ошибок и параллелизм

Функция объявлена как noexcept и считается исключитель­но безопасной (exception safe), поэтому при выполнении не возникает исключений C++ [SWS_DM_00777]. Специфические коды ошибок или отклики в управление ошибками для этого вызова не определены [SWS_DM_00777].

С точки зрения параллелизма метод специфицирован как непотокобезопасный (not thread-safe) [SWS_DM_00777]. Интерпретация: вызывающее приложение должно гарантировать, что конкурирующие вызовы к одному и тому же экземпляру StopOffer() синхронизируются во избежание несогласованности данных. Вопрос Q-dde3c015d30a9db1 (открытый)

Взаимодействие

Предоставление и отзыв интерфейсов через Offer() и StopOffer() ориентируются на известную семантику ara::com, однако в области диагностики представляют собой самостоятельную функциональность AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors». Паттерн отключения пересылки запросов из DM согласованно применяется в стандарте для других диагностических обработчиков, например для служб аутентификации [SWS_DM_01131], управления связью [SWS_DM_00810], служб загрузки [SWS_DM_00793], а также запросов сброса ECU [SWS_DM_01017].

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

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

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00777
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00777@rel:R25-11#2d56180e
Content hash
2d56180e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00777
Status: valid/unmigrated Version: rel:R25-11#809ce59e 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_DM_00777@rel:R25-11#809ce59e
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ecbd75f12026-09-30
  • R19-11rel:R19-11#988e9cc52026-10-14
  • R20-11rel:R20-11#556e7ce62026-10-14
  • R21-11rel:R21-11#ee572f802026-10-14
  • R22-11rel:R22-11#db0a3b992026-10-14
  • R23-11rel:R23-11#c1a089312026-10-14
  • R24-11rel:R24-11#1b0c9f462026-10-14
  • R25-11rel:R25-11#809ce59e2026-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

функция Validate [SWS_DM_00774] Upstream: RS_AP_00138, RS_Diag_04170, RS_Diag_04199, RS_AP_00119

virtual ara::core::Future< void > Validate (ara::core::Span< const std::uint8_t > requestData, const MetaInfo &metaInfo) noexcept;

Called for any request message.

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

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

Виртуальный метод ara::diag::ServiceValidation::Validate вызывается для каждого входящего сообщения диагностического запроса [SWS_DM_00774]. Через него Diagnostic Server (DM) выполняет сконфигурированные проверки служб, специфичные для производителя [SWS_DM_01252], а также проверки служб, специфичные для поставщика [SWS_DM_01253], согласно ISO 14229-1. Отнесение к проверке производителя или поставщика определяется моделированием в конструкторе [SWS_DM_00772].

Функция принимает диагностические данные, включая идентификатор службы (SID), через requestData, а также метаинформацию через metaInfo [SWS_DM_00774]. Буфер requestData остается действительным до тех пор, пока возвращенный ara::core::Future<void> не будет выполнен через соответствующее Promise или выполнение не будет отменено [SWS_DM_00774]. Если валидация успешно завершена без ошибок, Diagnostic Server продолжает обработку запроса согласно ISO 14229-1 [SWS_DM_01254].

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

Если проверка завершается неудачно, необходимо вернуть подходящий NRC согласно ISO 14229-1 с помощью DiagUdsNrcErrc [SWS_DM_00774]. Если Validate возвращает ошибку kNoProcessingNoResponse, экземпляр Diagnostic Server отбрасывает сообщение без дальнейшего ответа [SWS_DM_00860].

С точки зрения параллелизма Validate специфицирован как исключитель­но безопасный (exception safe), но не потокобезопасный (not thread-safe) [SWS_DM_00774]. Интерпретация: поскольку функция не является потокобезопасной, Diagnostic Server, вероятно, сериализует вызовы к одному и тому же экземпляру или исключает конкурирующие обращения. Вопрос Q-e150c15ad709602c (открытый) Контекст вызова зафиксирован последовательностью NRC стандарта ISO 14229-1 перед фактическим выполнением службы [SWS_DM_00772].

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

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

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
requestDataDiagnostic request data (including SID). Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.

Rückgabewert

TypBeschreibung
ara::core::Future< void >Returns nothing or an error

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_00774
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00774@rel:R25-11#784e6eb8
Content hash
784e6eb8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00774
Status: valid/unmigrated Version: rel:R25-11#697b56ca 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_DM_00774@rel:R25-11#697b56ca
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#97b264c92026-09-30
  • R19-11rel:R19-11#7333f5562026-10-14
  • R20-11rel:R20-11#5a132c282026-10-14
  • R21-11rel:R21-11#59f85a3b2026-10-14
  • R22-11rel:R22-11#43a758b42026-10-14
  • R23-11rel:R23-11#05e1af662026-10-14
  • R24-11rel:R24-11#8a3b62802026-10-14
  • R25-11rel:R25-11#697b56ca2026-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

функция operator= [SWS_DM_01687] Upstream: RS_AP_00147

ServiceValidation & operator= (ServiceValidation &)=delete;

ServiceValidation shall be a single not assignable instance.

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation

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

Record
AUTOSAR/AP/record/SWS_DM_01687
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01687@rel:R25-11#21b80797
Content hash
21b80797
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01687
Status: valid/unmigrated Version: rel:R25-11#4d0e8e99 Versionshistorie & Revisions (1 transition, 4 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_DM_01687@rel:R25-11#4d0e8e99
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#cca774bf2026-09-30
  • R23-11rel:R23-11#b0b3cfec2026-10-14
  • R24-11rel:R24-11#4d0e8e992026-10-14
  • R25-11rel:R25-11#4d0e8e992026-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

функция operator= [SWS_DM_01688] Upstream: RS_AP_00147

ServiceValidation & operator= (ServiceValidation &&)=delete;

Move assignment operator of ServiceValidation.

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation

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

Record
AUTOSAR/AP/record/SWS_DM_01688
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01688@rel:R25-11#8348f1c7
Content hash
8348f1c7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01688
Status: valid/unmigrated Version: rel:R25-11#1b73524b Versionshistorie & Revisions (1 transition, 4 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_DM_01688@rel:R25-11#1b73524b
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#070b54192026-09-30
  • R23-11rel:R23-11#451c17372026-10-14
  • R24-11rel:R24-11#1b73524b2026-10-14
  • R25-11rel:R25-11#1b73524b2026-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

функция ~ServiceValidation [SWS_DM_00773] Upstream: RS_AP_00134, RS_Diag_04199

virtual ~ServiceValidation () noexcept;

Destructor of ServiceValidation .

Header-Datei#include "ara/diag/service_validation.h"
Scopeclass ara::diag::ServiceValidation
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_00773
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00773@rel:R25-11#75f60a2f
Content hash
75f60a2f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00773
Status: valid/unmigrated Version: rel:R25-11#ef75a44c 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_DM_00773@rel:R25-11#ef75a44c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#6c06b72e2026-09-30
  • R19-11rel:R19-11#7fc7f8282026-10-14
  • R20-11rel:R20-11#c80e4a8e2026-10-14
  • R21-11rel:R21-11#c80e4a8e2026-10-14
  • R22-11rel:R22-11#af4050602026-10-14
  • R23-11rel:R23-11#bfb288b52026-10-14
  • R24-11rel:R24-11#ef75a44c2026-10-14
  • R25-11rel:R25-11#ef75a44c2026-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