DEENESPTFRRUARHIKOZHNL

класс ara::diag::FileTransferService

[SWS_DM_01320] Upstream: RS_Diag_04135

class FileTransferService {...};

File Transfer service interface.

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

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

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

Позволяет адаптивным приложениям предоставлять операции с файлами и директориями для диагностических служб UDS.

Сервисный интерфейс служит для подключения прикладной передачи файлов к Diagnostic Management для службы UDS RequestFileTransfer ([SWS_DM_01320], SWS_Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer»). После создания экземпляра приложение активирует перенаправление входящих файловых запросов с помощью Offer() и асинхронно обрабатывает файловые операции, такие как чтение, запись или удаление, через специализированные методы-обработчики ([SWS_DM_01336]). При операциях чтения и записи сервис предоставляет объекты сессий, через которые осуществляется фактическая передача данных. Экземпляры класса не могут копироваться и требуют жёсткой привязки через спецификатор экземпляра.

Контекст

Класс ara::diag::FileTransferService определяет диагностический интерфейс для реализации службы UDS RequestFileTransfer (0x38) в AUTOSAR Adaptive Platform ([SWS_DM_01320], SWS_Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer»). Он функционирует как Service-Interface между Diagnostic Management (DM или Diagnostic Server) и конкретным диагностическим приложением для гибкой обработки чтения, записи, возобновления и удаления файлов или директорий через границы процессов (SWS_Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer»).

В сценарии передачи файлов обычно участвуют три стороны: внешний UDS-клиент (диагностический тестер), Diagnostic Server в качестве посредника, а также адаптивное приложение, наследующее от FileTransferService. При входящих диагностических запросах Diagnostic Server делегирует запрос реализованным виртуальным методам сервиса ([SWS_DM_01313], [SWS_DM_01314]). Для последующих передач данных (UDS 0x36 TransferData) и завершения (UDS 0x37 RequestTransferExit) Diagnostic Management обращается напрямую к классам обработчиков, предоставляемым через объекты сессий (DataTransferReadSession или DataTransferWriteSession) ([SWS_DM_01317], [SWS_DM_01318]).

Kontext client UDS-Client (Tester) dm Diagnostic Management client->dm UDS 0x38, 0x36, 0x37 app Adaptive Application (FileTransferService) dm->app RequestReadFile / RequestWriteFile / ... session DataTransferReadSession / DataTransferWriteSession dm->session Read / Write / Exit app->session erzeugt Session

Контекстная диаграмма: взаимодействие между UDS-клиентом, Diagnostic Management, реализацией сервиса и сессиями передачи. Источники: [SWS_DM_01317], [SWS_DM_01318], SWS_Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer».

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

Экземпляр FileTransferService создаётся с указанием смоделированного ara::core::InstanceSpecifier, а также модели параллелизма ConcurrencyType ([SWS_DM_01325]). Через ConcurrencyType определяется, должны ли методы обратного вызова класса быть реализованы потокобезопасно (kConcurrent) или непотокобезопасно (kNotConcurrent) ([SWS_DM_01325], [SWS_DM_01331]). Будучи защищённой единичной функцией, класс не может копироваться ([SWS_DM_01327], [SWS_DM_01329]), однако поддерживает семантику перемещения ([SWS_DM_01328], [SWS_DM_01330]).

После инстанцирования сервис должен быть явно активирован через метод Offer(), чтобы Diagnostic Management перенаправлял входящие запросы ([SWS_DM_01336]). С помощью StopOffer() перенаправление можно в любой момент отключить снова ([SWS_DM_01337]). Интерпретация: вероятно, требуется вызывать StopOffer() перед уничтожением объекта виртуальным деструктором ~FileTransferService() ([SWS_DM_01326]), чтобы избежать потерянных обращений к обратным вызовам со стороны Diagnostic Management. Вопрос Q-3c5c406a144ced0c (открытый) Ни Offer(), StopOffer(), ни деструктор не являются потокобезопасными ([SWS_DM_01326], [SWS_DM_01336], [SWS_DM_01337]).

Lebenszyklus Init Не инициализирован Instanziiert Instanziiert (kNotOffered) Init->Instanziiert FileTransferService(...) Bereitgestellt Bereitgestellt (Offered) Instanziiert->Bereitgestellt Offer() Ende Уничтожен Instanziiert->Ende ~FileTransferService() Gestoppt Gestoppt (kNotOffered) Bereitgestellt->Gestoppt StopOffer() Gestoppt->Bereitgestellt Offer() Gestoppt->Ende ~FileTransferService()

Диаграмма состояний: переходы состояний экземпляра FileTransferService между инстанцированием, предоставлением и завершением. Источники: [SWS_DM_01325], [SWS_DM_01336], [SWS_DM_01337], [SWS_DM_01326].

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

Типичный процесс файловой операции подразделяется на конфигурацию, инициацию операции и последующую блочную передачу. Сначала при UDS-запросе 0x38 с режимом ReadFile (0x04) Diagnostic Management перенаправляет вызов в RequestReadFile ([SWS_DM_01314], [SWS_DM_01331]). Приложение обрабатывает имя файла, а также форматные и метаданные и асинхронно через ara::core::Future возвращает кортеж из DataTransferReadSession и размеров файла (FileSizes) ([SWS_DM_01331]). Интерпретация: какая стратегия передачи (такая как копирование, zero-copy или дескриптор файловой системы) будет использована, приложение определяет, предположительно, при создании экземпляра соответствующего класса сессии (SWS_Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer», [SWS_DM_01317]). Вопрос Q-80b541ae6dd7cc34 (открытый)

После положительного подтверждения клиент запрашивает блоки данных через TransferData (0x36). В ответ на это Diagnostic Server напрямую вызывает метод Read зарегистрированного обработчика DataTransferReadSession ([SWS_DM_01317]). Как только все блоки переданы, клиент завершает транзакцию с помощью RequestTransferExit (0x37), после чего Diagnostic Server вызывает метод Exit обработчика ([SWS_DM_01318]). Аналогичные шаблоны действуют для записи через RequestWriteFile ([SWS_DM_01313], [SWS_DM_01333]) с режимом WriteFileMode ([SWS_DM_01324]), возобновления через RequestResumeWriteFile ([SWS_DM_01316], [SWS_DM_01334]), чтения директории через RequestReadDirectory ([SWS_DM_01315], [SWS_DM_01332]) или прямого удаления через DeleteFile ([SWS_DM_01335]).

Последовательность передачи файла (ReadFile)UDS-ClientDiagnostic ManagementFileTransferServiceDataTransferReadSessionRequestFileTransfer (0x38, ReadFile)RequestReadFile(fileName, ...)Erzeugt ReadSessionFuture<tuple<DataTransferReadSession, FileSizes>>Positive Response (0x78 / 0x38)Use Case: Передача данныхloopПока имеются блоки данныхTransferData (0x36)Read(...)DatenblockTransferData Response (0x76)Use Case: AbschlussRequestTransferExit (0x37)Exit()StatusRequestTransferExit Response (0x77)

Диаграмма последовательности: процесс операции чтения через UDS 0x38, 0x36 и 0x37. Источники: [SWS_DM_01314], [SWS_DM_01317], [SWS_DM_01318], [SWS_DM_01331].

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

Ошибки могут возникать в нескольких фазах:

  • Нарушения при конструировании: в случае сбоя разрешения или сопоставления InstanceSpecifier возникают ошибки моделирования, такие как InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation или InstanceSpecifierAlreadyInUseViolation ([SWS_DM_01325]).
  • Ошибки активации: повторный вызов Offer() при уже активном сервисе возвращает ошибку DiagOfferErrc::kAlreadyOffered ([SWS_DM_01336]).
  • Диагностические коды ошибок (NRC): если операция не может быть успешно выполнена, методы обратного вызова в ara::core::Future возвращают подходящий отрицательный код ответа UDS (NRC согласно ISO 14229-1) через DiagUdsNrcErrc ([SWS_DM_01331], [SWS_DM_01333], [SWS_DM_01335]).
  • Обработка прерывания: через переданный объект CancellationHandler приложение может с помощью IsCanceled проверить, был ли прерван диалог, или через SetNotifier зарегистрировать функцию уведомления для асинхронных прерываний ([SWS_DM_01331], [SWS_DM_01335]).

Настоящее руководство основано исключительно на спецификации AUTOSAR R25-11 и создано автоматически.

Карта членов

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

2

Операторы

1

Перечисления

1

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

1

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

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

G nara__diag__FileTransferService20 FileTransferService + ~FileTransferService() + FileTransferService() + DeleteFile() + Offer() + RequestReadDirectory() + RequestReadFile() + RequestResumeWriteFile() + RequestWriteFile() + StopOffer() + operator=()

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

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

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

FileTransferService функция 3

Constructor for FileTransferService (inherited)

Перегрузки FileTransferService 3
FileTransferService (ara::core::InstanceSpecifier const &instance Specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_01325
FileTransferService (FileTransferService const &)=delete; SWS_DM_01327
FileTransferService (FileTransferService &&other) noexcept; SWS_DM_01328
~FileTransferService функция

Destructor of class FileTransferService.

virtual ~FileTransferService () noexcept;

Методы

DeleteFile функция

Called for RequestFileTransfer with ModeOfOperation DeleteFile. This method is the complete operation of deleting a file

virtual auto DeleteFile (ara::core::String fileName, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< void >=0;
Offer функция

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

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

Called for RequestFileTransfer with ModeOfOperation ReadDir. .

virtual auto RequestReadDirectory (ara::core::String directoryName, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< std::tuple< DataTransferReadSession, std::uint64_t > >=0;
RequestReadFile функция

Called for RequestFileTransfer with ModeOfOperation ReadFile. • uncompressed_size: If set to 0, the parameter will not be reported to the diagnostic client. • compressed_size: If set to 0, the parameter will not be reported to the diagnostic client. If no compression is used, the value shall be zero.

virtual auto RequestReadFile (ara::core::String fileName, ara::core::Byte dataFormatIdentifier, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< std::tuple< DataTransferReadSession, FileSizes > >=0;
RequestResumeWriteFile функция

Called for RequestFileTransfer with ModeOfOperation ResumeFile.

virtual auto RequestResumeWriteFile (ara::core::String fileName, ara::core::Byte dataFormatIdentifier, FileSizes fileSizes, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< std::tuple< DataTransferWriteSession, std::uint64_t > >=0;
RequestWriteFile функция

Called for RequestFileTransfer with ModeOfOperation WriteFile.

virtual auto RequestWriteFile (ara::core::String fileName, ara::core::Byte dataFormatIdentifier, FileSizes fileSizes, WriteFile Mode mode, MetaInfo const &metaInfo, CancellationHandler cancellation Handler) noexcept -> ara::core::Future< DataTransferWriteSession >=0;
StopOffer функция

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

void StopOffer () const noexcept;

Операторы

operator= функция 2

FileTransferService shall be a single not assignable instance.

Перегрузки = 2
auto operator= (FileTransferService const &) -> FileTransferService &=delete; SWS_DM_01329
auto operator= (FileTransferService &&other) & noexcept -> File TransferService &; SWS_DM_01330

Перечисления

WriteFileMode перечисление

Determines the write file operation mode.

enum class WriteFileMode : ara::core::Byte {...};

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

FileSizes класс

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

функция DeleteFile [SWS_DM_01335] Upstream: RS_Diag_04135

virtual auto DeleteFile (ara::core::String fileName, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< void >=0;

Called for RequestFileTransfer with ModeOfOperation DeleteFile. This method is the complete operation of deleting a file

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

Метод DeleteFile класса ara::diag::FileTransferService (SWS Diagnostics §8.18.1.2.3.1 «DeleteFile», заголовочный файл #include "ara/diag/file_transfer.h") обрабатывает полное удаление файла в рамках UDS-службы RequestFileTransfer (0x38) с режимом DeleteFile [SWS_DM_01335]. UDS-служба предоставляется на стороне сервера согласно ISO 14229-1 [SWS_DM_01310] SWS Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer».

При вызове передаются три параметра [SWS_DM_01335]:

  • fileName (ara::core::String): указание пути и имя целевого файла (интерпретация: несмотря на редакционное указание «file to read» в тексте спецификации, речь идет об удаляемом файле). Вопрос Q-cdbe1185bb030e87 (открытый)
  • metaInfo (MetaInfo const &): метаинформация текущего диагностического запроса.
  • cancellationHandler (CancellationHandler): позволяет проверять статус прерывания через cancellationHandler.IsCanceled(), а также регистрировать функцию уведомления через cancellationHandler.SetNotifier() в случае прерывания текущей беседы.

В качестве асинхронного результата функция возвращает ara::core::Future<void> [SWS_DM_01335]. Успешное завершение сигнализирует клиенту диагностики о положительном поведении ответа. В случае ошибки необходимо предоставить соответствующий UDS-NRC согласно ISO 14229-1 через DiagUdsNrcErrc в Future [SWS_DM_01335].

Функция специфицирована как noexcept и считается исключеннобезопасной («exception safe») [SWS_DM_01335]. Требование к потокобезопасности является условным и управляется через переданный конструктору ConcurrencyType [SWS_DM_01335].

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

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
fileNamePath including name of the file to read
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future< void >A Future with either a void data result to be reported to the UDS client (for a positive response message) or an UDS NRC value (for a negative response message).

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_01335
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01335@rel:R25-11#c86fa2ca
Content hash
c86fa2ca
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01335
Status: valid/unmigrated Version: rel:R25-11#5a76fff5 Versionshistorie & Revisions (1 transition, 5 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_01335@rel:R25-11#5a76fff5
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#8332cd052026-09-30
  • R22-11rel:R22-11#36673d0f2026-10-14
  • R23-11rel:R23-11#73618cf32026-10-14
  • R24-11rel:R24-11#1c7c75ef2026-10-14
  • R25-11rel:R25-11#5a76fff52026-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

функция FileTransferService [SWS_DM_01325] Upstream: RS_Diag_04135, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

FileTransferService (ara::core::InstanceSpecifier const &instance Specifier, ConcurrencyType concurrencyType) noexcept;

Constructor for FileTransferService (inherited)

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
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 typed by a pingViolation DiagnosticRequestFileTransferInterface needs to be referenced by a DiagnosticServiceGenericMapping. 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
instanceSpecifierInstanceSpecifier to a PortPrototype of a DiagnosticRequestFileTransferInterface.
concurrencyTypeSpecifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent).

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

Record
AUTOSAR/AP/record/SWS_DM_01325
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01325@rel:R25-11#fe8d7d58
Content hash
fe8d7d58
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01325
Status: valid/unmigrated Version: rel:R25-11#a08ef198 Versionshistorie & Revisions (1 transition, 5 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_01325@rel:R25-11#a08ef198
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#52de53342026-09-30
  • R22-11rel:R22-11#8dbc776b2026-10-14
  • R23-11rel:R23-11#f58df40e2026-10-14
  • R24-11rel:R24-11#724c28ee2026-10-14
  • R25-11rel:R25-11#a08ef1982026-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

функция FileTransferService [SWS_DM_01327] Upstream: RS_Diag_04135

FileTransferService (FileTransferService const &)=delete;

FileTransferService shall be a single not copy-able instance.

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_DM_01327
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01327@rel:R25-11#3df2cb27
Content hash
3df2cb27
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01327
Status: valid/unmigrated Version: rel:R25-11#1ed01f5a Versionshistorie & Revisions (1 transition, 5 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_01327@rel:R25-11#1ed01f5a
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#8b4a360b2026-09-30
  • R22-11rel:R22-11#685998602026-10-14
  • R23-11rel:R23-11#bfbeeb2e2026-10-14
  • R24-11rel:R24-11#d1dbc6e22026-10-14
  • R25-11rel:R25-11#1ed01f5a2026-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

функция FileTransferService [SWS_DM_01328] Upstream: RS_Diag_04135

FileTransferService (FileTransferService &&other) noexcept;

Move constructs an instance of FileTransferService.

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

Parameter (out)

ParameterBeschreibung
otherThe other object

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

Record
AUTOSAR/AP/record/SWS_DM_01328
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01328@rel:R25-11#198590cf
Content hash
198590cf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01328
Status: valid/unmigrated Version: rel:R25-11#1bdc5a9f Versionshistorie & Revisions (1 transition, 5 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_01328@rel:R25-11#1bdc5a9f
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#a64a8dae2026-09-30
  • R22-11rel:R22-11#2f0b9de52026-10-14
  • R23-11rel:R23-11#ebd249b42026-10-14
  • R24-11rel:R24-11#c90d4b792026-10-14
  • R25-11rel:R25-11#1bdc5a9f2026-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_01336] Upstream: RS_Diag_04135

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

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

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

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

Метод Offer класса ara::diag::FileTransferService регистрирует обработчик в Diagnostic Management (DM), позволяя ему пересылать входящие диагностические запросы на передачу файлов этому экземпляру [SWS_DM_01336]. Вызов выполняется без параметров и синхронно. Типом возвращаемого значения служит ara::core::Result<void>, посредством чего сигнализируется об успешности регистрации или о возникшей ошибке [SWS_DM_01336].

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

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

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

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

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

Предложение через Offer соответствует стандартизированному шаблону развертывания диагностических обработчиков в Adaptive AUTOSAR. Аналогичные механизмы пересылки запросов через DM существуют, например, для скачивания файлов [SWS_DM_00792], выгрузки [SWS_DM_00802], а также для общих UDS-служб [SWS_DM_00619].

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

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
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_01336
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01336@rel:R25-11#8eec500d
Content hash
8eec500d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01336
Status: valid/unmigrated Version: rel:R25-11#780b487b Versionshistorie & Revisions (1 transition, 5 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_01336@rel:R25-11#780b487b
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#f8bdc8172026-09-30
  • R22-11rel:R22-11#980deda22026-10-14
  • R23-11rel:R23-11#429134002026-10-14
  • R24-11rel:R24-11#2a2a4d772026-10-14
  • R25-11rel:R25-11#780b487b2026-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

функция RequestReadDirectory [SWS_DM_01332] Upstream: RS_Diag_04135

virtual auto RequestReadDirectory (ara::core::String directoryName, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< std::tuple< DataTransferReadSession, std::uint64_t > >=0;

Called for RequestFileTransfer with ModeOfOperation ReadDir. .

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

Метод ara::diag::FileTransferService::RequestReadDirectory вызывается экземпляром Diagnostic Server при получении диагностического запроса для RequestFileTransfer (0x38) с modeOfOperation ReadDir (0x05) [SWS_DM_01315]. Функция принимает следующие параметры [SWS_DM_01332]:

  • directoryName: путь, включая имя каталога, считываемого каталога.
  • metaInfo: метаинформация входящего диагностического запроса.
  • cancellationHandler: объект для запроса отмены сессии через cancellationHandler.IsCanceled() или регистрации функции обратного вызова через cancellationHandler.SetNotifier() для событий отмены.

Возврат выполняется асинхронно через ara::core::Future<std::tuple<DataTransferReadSession, std::uint64_t>> [SWS_DM_01332]. В случае успеха кортеж содержит стратегию доступа DataTransferReadSession, а также размер каталога, передаваемый UDS-клиенту [SWS_DM_01332]. Объект DataTransferReadSession при этом устанавливает связь между инициализацией с помощью RequestFileTransfer (0x38) и последующими передачами файлов через TransferData (0x36) SWS Diagnostics с. 184 «Realization of modeOfOperation ReadDir (0x05)».

В случае сбоя обработки Future возвращает отрицательный код ответа (NRC) согласно ISO 14229-1 через DiagUdsNrcErrc [SWS_DM_01332]. Метод специфицирован как noexcept и является исключеннобезопасным (exception safe) [SWS_DM_01332]. Потокобезопасность является условной: необходимость потокобезопасной реализации функции определяется переданным в конструкторе ConcurrencyType [SWS_DM_01332].

Это указание по использованию основано на спецификациях AUTOSAR Adaptive Platform для модуля диагностики.

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
directoryNamePath including name of the directory to read
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple< DataTransferReadSession, std::uint64_t > >A Future with either the access strategy to be used during reading and the directory information size to be reported to the UDS client (for a positive response message) or an UDS NRC value (for a negative response message).

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_01332
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01332@rel:R25-11#bb8e0fb9
Content hash
bb8e0fb9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01332
Status: valid/unmigrated Version: rel:R25-11#58fefe54 Versionshistorie & Revisions (1 transition, 5 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_01332@rel:R25-11#58fefe54
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#bfc5a2d72026-09-30
  • R22-11rel:R22-11#de5ccbca2026-10-14
  • R23-11rel:R23-11#6a311b002026-10-14
  • R24-11rel:R24-11#68f15ec32026-10-14
  • R25-11rel:R25-11#58fefe542026-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

функция RequestReadFile [SWS_DM_01331] Upstream: RS_Diag_04135

virtual auto RequestReadFile (ara::core::String fileName, ara::core::Byte dataFormatIdentifier, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< std::tuple< DataTransferReadSession, FileSizes > >=0;

Called for RequestFileTransfer with ModeOfOperation ReadFile. • uncompressed_size: If set to 0, the parameter will not be reported to the diagnostic client. • compressed_size: If set to 0, the parameter will not be reported to the diagnostic client. If no compression is used, the value shall be zero.

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

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

Метод RequestReadFile вызывается экземпляром Diagnostic Server, как только поступает диагностический запрос для RequestFileTransfer (0x38) с режимом работы ReadFile (0x04) [SWS_DM_01314]. Функция принимает путь к файлу вместе с именем (fileName), формат данных (dataFormatIdentifier), метаданные запроса (metaInfo), а также cancellationHandler [SWS_DM_01331]. Через cancellationHandler можно запросить статус отмены (IsCanceled) или зарегистрировать функцию уведомления для отмены текущей сессии (SetNotifier) [SWS_DM_01331].

Выполнение происходит асинхронно и возвращает ara::core::Future. В случае успеха future возвращает кортеж из DataTransferReadSession и FileSizes [SWS_DM_01331]. В FileSizes значение 0 для uncompressed_size или compressed_size сигнализирует о том, что соответствующий размер не передается UDS-клиенту; для несжатых файлов compressed_size должен быть равен нулю [SWS_DM_01331].

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

Если подготовка операции чтения завершается неудачно, приложение сообщает соответствующий UDS-NRC согласно ISO 14229-1 через DiagUdsNrcErrc в возвращаемом future [SWS_DM_01331].

Параллелизм и взаимодействие

Функция объявлена как noexcept. Потокобезопасность является условной (conditional): должна ли реализация быть спроектирована потокобезопасной, определяет переданный конструктору ConcurrencyType [SWS_DM_01331]. Возвращаемый объект DataTransferReadSession образует связующее звено между обработкой RequestFileTransfer и последующими службами TransferData (0x36), через которые передается фактический поток данных файла SWS Diagnostics с. 184.

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

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
fileNamePath including name of the file to read
dataFormatIdentifierUDS dataFormat Identifier
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple< DataTransferReadSession, FileSizes>>A Future with either the access strategy to be used during reading and the file sizes to be reported to the UDS client (for a positive response message) or an UDS NRC value (for a negative response message).

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_01331
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01331@rel:R25-11#a6116a66
Content hash
a6116a66
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01331
Status: valid/unmigrated Version: rel:R25-11#2da4b6c5 Versionshistorie & Revisions (1 transition, 5 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_01331@rel:R25-11#2da4b6c5
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#de746ccd2026-09-30
  • R22-11rel:R22-11#014f2e682026-10-14
  • R23-11rel:R23-11#e48290792026-10-14
  • R24-11rel:R24-11#40bb50212026-10-14
  • R25-11rel:R25-11#2da4b6c52026-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

функция RequestResumeWriteFile [SWS_DM_01334] Upstream: RS_Diag_04135

virtual auto RequestResumeWriteFile (ara::core::String fileName, ara::core::Byte dataFormatIdentifier, FileSizes fileSizes, MetaInfo const &metaInfo, CancellationHandler cancellationHandler) noexcept -> ara::core::Future< std::tuple< DataTransferWriteSession, std::uint64_t > >=0;

Called for RequestFileTransfer with ModeOfOperation ResumeFile.

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

Метод RequestResumeWriteFile вызывается экземпляром Diagnostic Server при получении запроса UDS-службы для RequestFileTransfer (0x38) с режимом работы ResumeFile (0x06) ([SWS_DM_01316], SWS Diagnostics §[SWS_DM_01316] «Realization of modeOfOperation ResumeFile (0x06)»). Его назначение — возобновление ранее прерванной операции записи файла.

При вызове передаются путь к файлу (fileName), идентификатор формата данных UDS (dataFormatIdentifier), размеры файлов (fileSizes), метаданные запроса (metaInfo), а также cancellationHandler ([SWS_DM_01334], SWS Diagnostics §8.18.1.2.3.5 «RequestResumeWriteFile»). Через cancellationHandler приложение может с помощью IsCanceled активно проверять, была ли прервана текущая диагностическая беседа, или через SetNotifier зарегистрировать функцию уведомления о прерывании ([SWS_DM_01334]).

Возврат осуществляется асинхронно через ara::core::Future<std::tuple<DataTransferWriteSession, std::uint64_t>> ([SWS_DM_01334]). В случае успеха Future предоставляет кортеж, содержащий экземпляр DataTransferWriteSession, а также байтовую позицию, с которой должна быть продолжена передача ([SWS_DM_01334]). Этот объект сессии связывает инициализацию через RequestFileTransfer с последующими службами TransferData (0x36) (SWS Diagnostics §[SWS_DM_01316] «Realization of modeOfOperation ResumeFile (0x06)»).

В случае ошибки Future должен быть завершен с подходящим UDS-NRC согласно ISO 14229-1 через DiagUdsNrcErrc ([SWS_DM_01334]). Функция объявлена как noexcept и является исключеннобезопасной; потокобезопасность является условной («conditional») и определяется переданным в конструкторе ConcurrencyType ([SWS_DM_01334]).

Этот текст курирован ИИ и основан исключительно на спецификациях AUTOSAR Adaptive Platform R25-11.

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
fileNamePath including name of the file to read
dataFormatIdentifierUDS dataFormat Identifier
fileSizesThe compressed/uncompressed files sizes
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple< DataTransferWriteSession, std::uint64_t > >A Future with either an instance of the file writing session and the byte position where to start resuming from to be reported to the UDS client (for a positive response message) or an UDS NRC value (for a negative response message).

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_01334
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01334@rel:R25-11#2b101b85
Content hash
2b101b85
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01334
Status: valid/unmigrated Version: rel:R25-11#f5ac33f7 Versionshistorie & Revisions (1 transition, 5 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_01334@rel:R25-11#f5ac33f7
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#89c39f932026-09-30
  • R22-11rel:R22-11#8fe1f4b12026-10-14
  • R23-11rel:R23-11#42daa99b2026-10-14
  • R24-11rel:R24-11#56b464b02026-10-14
  • R25-11rel:R25-11#f5ac33f72026-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

функция RequestWriteFile [SWS_DM_01333] Upstream: RS_Diag_04135

virtual auto RequestWriteFile (ara::core::String fileName, ara::core::Byte dataFormatIdentifier, FileSizes fileSizes, WriteFile Mode mode, MetaInfo const &metaInfo, CancellationHandler cancellation Handler) noexcept -> ara::core::Future< DataTransferWriteSession >=0;

Called for RequestFileTransfer with ModeOfOperation WriteFile.

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

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

Метод [SWS_DM_01333] вызывается диагностическим сервером, как только принимается запрос UDS-службы RequestFileTransfer (0x38) с режимом работы WriteFile ([SWS_DM_01310]). Если запрос передается с режимом работы ReplaceFile (0x03), диагностический сервер вызывает интерфейс с режимом записи kReplace ([SWS_DM_01313]). При вызове передаются имя файла (fileName), идентификатор формата данных (dataFormatIdentifier), размеры файлов (fileSizes), режим замены (mode), дополнительные метаданные (metaInfo), а также cancellationHandler. Указание «file to read» в спецификации для параметра fileName, вероятно, является редакционной оплошностью и обозначает целевой путь записываемого файла. Вопрос Q-f14158fc20fda8af (открытый)

Обработка выполняется асинхронно и возвращает ara::core::Future<DataTransferWriteSession> ([SWS_DM_01333]). Полученная сессия служит связующим звеном между инициализацией через службу 0x38 и последующими передачами данных через TransferData (0x36) (AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.20 «Service 0x38 – RequestFileTransfer»).

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

Метод объявлен как noexcept. При возникновении ошибки исключение C++ не генерируется, а в Future возвращается подходящий UDS-NRC из DiagUdsNrcErrc согласно ISO 14229-1 ([SWS_DM_01333]). Через переданный cancellationHandler с помощью IsCanceled() можно запросить статус отмены или с помощью SetNotifier() зарегистрировать уведомление на случай прерывания диагностической беседы. Потокобезопасность является условной: необходимость потокобезопасной реализации функции определяется через ConcurrencyType в конструкторе ([SWS_DM_01333]).

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

Операция дополняет взаимодействие служб передачи файлов и является комплементарной к операциям чтения, таким как RequestReadFile ([SWS_DM_01314]), или к возобновлению прерванных операций записи через RequestResumeWriteFile ([SWS_DM_01316]).

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

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
fileNamePath including name of the file to read
dataFormatIdentifierUDS dataFormat Identifier
fileSizesThe compressed/uncompressed files sizes
modeThe file replacement mode
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future< DataTransferWriteSession >A Future with either an instance of the file writing session to be reported to the UDS client (for a positive response message) or an UDS NRC value (for a negative response message).

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_01333
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01333@rel:R25-11#db2463be
Content hash
db2463be
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01333
Status: valid/unmigrated Version: rel:R25-11#51c3d98c Versionshistorie & Revisions (1 transition, 5 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_01333@rel:R25-11#51c3d98c
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#c3df13832026-09-30
  • R22-11rel:R22-11#70b47e362026-10-14
  • R23-11rel:R23-11#5d904ef32026-10-14
  • R24-11rel:R24-11#27f280b82026-10-14
  • R25-11rel:R25-11#51c3d98c2026-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_01337] Upstream: RS_Diag_04135

void StopOffer () const noexcept;

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

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

Функция StopOffer класса ara::diag::FileTransferService служит для отмены регистрации службы в Diagnostic Management ([SWS_DM_01337]; AUTOSAR_AP_SWS_Diagnostics §8.18.1.2.3.7 «StopOffer»). Ее вызов приводит к тому, что с этого момента DM прекращает пересылку входящих диагностических запросов этому экземпляру службы. Интерфейс определен в заголовочном файле #include "ara/diag/file_transfer.h", имеет сигнатуру void StopOffer() const noexcept;, не ожидает параметров и не возвращает значения. Вызов выполняется синхронно.

Для StopOffer механизм ошибок не предусмотрен. Метод объявлен как исключеннобезопасный (exception safe) и с идентификатором noexcept ([SWS_DM_01337]). Исключения не генерируются, и коды ошибок приложению не возвращаются. С точки зрения API деактивация пересылки не завершается сбоем.

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

Деактивация через StopOffer следует единому архитектурному шаблону AUTOSAR Adaptive для предоставляемых диагностических служб. Она соответствует аналогичным функциям деактивации родственных классов, таких как ara::diag::DownloadService ([SWS_DM_00793]), ara::diag::UploadService ([SWS_DM_00803]), ara::diag::CommunicationControl ([SWS_DM_00810]) и ara::diag::Monitor ([SWS_DM_01089]; AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors»).

Этот текст сгенерирован ИИ на основе спецификации.

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

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
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_01337
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01337@rel:R25-11#439eb8f7
Content hash
439eb8f7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01337
Status: valid/unmigrated Version: rel:R25-11#70a7f50e Versionshistorie & Revisions (1 transition, 5 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_01337@rel:R25-11#70a7f50e
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#a8ae9f322026-09-30
  • R22-11rel:R22-11#654bd0092026-10-14
  • R23-11rel:R23-11#f129c87f2026-10-14
  • R24-11rel:R24-11#70a7f50e2026-10-14
  • R25-11rel:R25-11#70a7f50e2026-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_01329] Upstream: RS_Diag_04135

auto operator= (FileTransferService const &) -> FileTransferService &=delete;

FileTransferService shall be a single not assignable instance.

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_DM_01329
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01329@rel:R25-11#c6d4192b
Content hash
c6d4192b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01329
Status: valid/unmigrated Version: rel:R25-11#1ea28835 Versionshistorie & Revisions (1 transition, 5 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_01329@rel:R25-11#1ea28835
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#b87225482026-09-30
  • R22-11rel:R22-11#718170092026-10-14
  • R23-11rel:R23-11#5215d06f2026-10-14
  • R24-11rel:R24-11#1ea288352026-10-14
  • R25-11rel:R25-11#1ea288352026-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_01330] Upstream: RS_Diag_04135

auto operator= (FileTransferService &&other) & noexcept -> File TransferService &;

Move assigns an instance of FileTransferService.

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Sichtbarkeitprotected

Parameter (out)

ParameterBeschreibung
otherThe other object

Rückgabewert

TypBeschreibung
FileTransferServiceReference to self

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

Record
AUTOSAR/AP/record/SWS_DM_01330
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01330@rel:R25-11#a4da561c
Content hash
a4da561c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01330
Status: valid/unmigrated Version: rel:R25-11#3d2ac0df Versionshistorie & Revisions (1 transition, 5 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_01330@rel:R25-11#3d2ac0df
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#dc10e40b2026-09-30
  • R22-11rel:R22-11#2eaabf332026-10-14
  • R23-11rel:R23-11#2e1bc2e32026-10-14
  • R24-11rel:R24-11#275db4722026-10-14
  • R25-11rel:R25-11#3d2ac0df2026-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

функция ~FileTransferService [SWS_DM_01326] Upstream: RS_Diag_04135

virtual ~FileTransferService () noexcept;

Destructor of class FileTransferService.

Header-Datei#include "ara/diag/file_transfer.h"
Scopeclass ara::diag::FileTransferService
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_01326
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01326@rel:R25-11#5ce0ee48
Content hash
5ce0ee48
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01326
Status: valid/unmigrated Version: rel:R25-11#8e0522c6 Versionshistorie & Revisions (1 transition, 5 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_01326@rel:R25-11#8e0522c6
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#838a47062026-09-30
  • R22-11rel:R22-11#34fabb372026-10-14
  • R23-11rel:R23-11#0e9f351d2026-10-14
  • R24-11rel:R24-11#8e0522c62026-10-14
  • R25-11rel:R25-11#8e0522c62026-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

Документация перечислений

перечисление WriteFileMode [SWS_DM_01324] Upstream: RS_Diag_04135

enum class WriteFileMode :             ara::core::Byte {...};

Determines the write file operation mode.

Header-Datei#include "ara/diag/file_transfer.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::FileTransferService
SymbolWriteFileMode
Basistypara::core::Byte

Werte

EnumeratorBeschreibung
kAddThe file shall be added only if not existing.
kReplaceThe file shall be added in any case, if already exists, will be replaced.

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

Record
AUTOSAR/AP/record/SWS_DM_01324
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01324@rel:R25-11#c7b39887
Content hash
c7b39887
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01324
Status: valid/unmigrated Version: rel:R25-11#ccf1739f Versionshistorie & Revisions (1 transition, 5 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_01324@rel:R25-11#ccf1739f
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#5ddcfb102026-09-30
  • R22-11rel:R22-11#50d44c362026-10-14
  • R23-11rel:R23-11#0e3c6f352026-10-14
  • R24-11rel:R24-11#0e3c6f352026-10-14
  • R25-11rel:R25-11#ccf1739f2026-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