DEENESPTFRRUARHIKOZHNL

class 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

User GuideKI-GENERIERT

Ermöglicht adaptiven Anwendungen die Bereitstellung von Datei- und Verzeichnisoperationen für UDS-Diagnosedienste.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 50ca3b00d3d3 Herkunft Offene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Ermöglicht adaptiven Anwendungen die Bereitstellung von Datei- und Verzeichnisoperationen für UDS-Diagnosedienste.

Die Service-Schnittstelle dient der Anbindung anwendungsspezifischer Dateitransfers an das Diagnostic Management für den UDS-Dienst RequestFileTransfer ([SWS_DM_01320], SWS_Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“). Nach der Instanziierung aktiviert die Anwendung die Weiterleitung eingehender Dateianfragen mit Offer() und verarbeitet Dateioperationen wie Lesen, Schreiben oder Löschen asynchron über spezialisierte Handler-Methoden ([SWS_DM_01336]). Bei Lese- und Schreibvorgängen stellt der Service Session-Objekte bereit, über die der eigentliche Datentransfer abgewickelt wird. Instanzen der Klasse sind nicht kopierbar und erfordern eine feste Bindung über einen Instanzspezifizierer.

Kontext

Die Klasse ara::diag::FileTransferService definiert die Diagnoseschnittstelle zur Realisierung des UDS-Dienstes RequestFileTransfer (0x38) in der AUTOSAR Adaptive Platform ([SWS_DM_01320], SWS_Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“). Sie fungiert als Service-Interface zwischen dem Diagnostic Management (DM bzw. Diagnostic Server) und der konkreten Diagnose-Anwendung, um das Lesen, Schreiben, Fortsetzen und Löschen von Dateien oder Verzeichnissen über Prozessgrenzen hinweg flexibel abzuwickeln (SWS_Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“).

An einem Dateiübertragungs-Szenario sind typischerweise drei Parteien beteiligt: der externe UDS-Client (Diagnose-Tester), der Diagnostic Server als Vermittler sowie die adaptive Anwendung, welche von FileTransferService erbt. Bei eingehenden Diagnoseanfragen delegiert der Diagnostic Server die Anforderung an die implementierten virtuellen Methoden des Services ([SWS_DM_01313], [SWS_DM_01314]). Für nachfolgende Datentransfers (UDS 0x36 TransferData) und den Abschluss (UDS 0x37 RequestTransferExit) greift das Diagnostic Management direkt auf Handler-Klassen zurück, die über Session-Objekte (DataTransferReadSession oder DataTransferWriteSession) bereitgestellt werden ([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

Kontextdiagramm: Zusammenspiel zwischen UDS-Client, Diagnostic Management, Service-Implementierung und Transfer-Sessions. Quellen: [SWS_DM_01317], [SWS_DM_01318], SWS_Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“.

Lebenszyklus

Eine Instanz von FileTransferService wird unter Angabe eines modellierten ara::core::InstanceSpecifier sowie des Nebenläufigkeitsmodells ConcurrencyType erzeugt ([SWS_DM_01325]). Über den ConcurrencyType wird festgelegt, ob Callback-Methoden der Klasse thread-sicher (kConcurrent) oder nicht thread-sicher (kNotConcurrent) implementiert sein müssen ([SWS_DM_01325], [SWS_DM_01331]). Die Klasse ist als geschützte Einzelfunktion nicht kopierbar ([SWS_DM_01327], [SWS_DM_01329]), unterstützt jedoch Move-Semantik ([SWS_DM_01328], [SWS_DM_01330]).

Nach der Instanziierung muss der Service über die Methode Offer() explizit aktiviert werden, damit das Diagnostic Management eingehende Anfragen weiterleitet ([SWS_DM_01336]). Mit StopOffer() kann die Weiterleitung jederzeit wieder deaktiviert werden ([SWS_DM_01337]). Interpretation: Es dürfte erforderlich sein, StopOffer() vor der Zerstörung des Objekts durch den virtuellen Destruktor ~FileTransferService() aufzurufen ([SWS_DM_01326]), um verwaiste Callback-Zugriffe des Diagnostic Managements zu vermeiden. Frage Q-3c5c406a144ced0c (offen) Weder Offer(), StopOffer() noch der Destruktor sind thread-sicher ([SWS_DM_01326], [SWS_DM_01336], [SWS_DM_01337]).

Lebenszyklus Init Nicht initialisiert Instanziiert Instanziiert (kNotOffered) Init->Instanziiert FileTransferService(...) Bereitgestellt Bereitgestellt (Offered) Instanziiert->Bereitgestellt Offer() Ende Zerstört Instanziiert->Ende ~FileTransferService() Gestoppt Gestoppt (kNotOffered) Bereitgestellt->Gestoppt StopOffer() Gestoppt->Bereitgestellt Offer() Gestoppt->Ende ~FileTransferService()

Zustandsdiagramm: Zustandsübergänge einer FileTransferService-Instanz zwischen Instanziierung, Bereitstellung und Beendigung. Quellen: [SWS_DM_01325], [SWS_DM_01336], [SWS_DM_01337], [SWS_DM_01326].

Nutzungspfad

Der typische Ablauf einer Dateioperation gliedert sich in die Konfiguration, das Auslösen der Operation und die anschließende Blockübertragung. Zunächst leitet das Diagnostic Management bei einem UDS-Request 0x38 mit dem Modus ReadFile (0x04) den Aufruf an RequestReadFile weiter ([SWS_DM_01314], [SWS_DM_01331]). Die Anwendung verarbeitet den Dateinamen sowie Format- und Metainformationen und liefert asynchron über ein ara::core::Future ein Tupel aus einer DataTransferReadSession und den Dateigrößen (FileSizes) zurück ([SWS_DM_01331]). Interpretation: Welche Transferstrategie (wie Copy, Zero-Copy oder Dateisystem-Handle) verwendet wird, bestimmt die Anwendung vermutlich bei der Instanziierung der jeweiligen Session-Klasse (SWS_Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“, [SWS_DM_01317]). Frage Q-80b541ae6dd7cc34 (offen)

Nach der positiven Bestätigung fordert der Client die Datenblöcke über TransferData (0x36) an. Der Diagnostic Server ruft daraufhin direkt die Read-Methode des registrierten Handlers der DataTransferReadSession auf ([SWS_DM_01317]). Sobald alle Blöcke übertragen sind, schließt der Client die Transaktion mit RequestTransferExit (0x37) ab, woraufhin der Diagnostic Server die Exit-Methode des Handlers aufruft ([SWS_DM_01318]). Ähnliche Muster gelten für das Schreiben via RequestWriteFile ([SWS_DM_01313], [SWS_DM_01333]) mit dem Modus WriteFileMode ([SWS_DM_01324]), das Fortsetzen via RequestResumeWriteFile ([SWS_DM_01316], [SWS_DM_01334]), das Verzeichnislesen via RequestReadDirectory ([SWS_DM_01315], [SWS_DM_01332]) oder das direkte Löschen via DeleteFile ([SWS_DM_01335]).

Ablauf einer Dateiübertragung (ReadFile)UDS-ClientDiagnostic ManagementFileTransferServiceDataTransferReadSessionRequestFileTransfer (0x38, ReadFile)RequestReadFile(fileName, ...)Erzeugt ReadSessionFuture<tuple<DataTransferReadSession, FileSizes>>Positive Response (0x78 / 0x38)Use Case: DatenübertragungloopSolange Datenblöcke vorliegenTransferData (0x36)Read(...)DatenblockTransferData Response (0x76)Use Case: AbschlussRequestTransferExit (0x37)Exit()StatusRequestTransferExit Response (0x77)

Sequenzdiagramm: Ablauf einer Lese-Operation über UDS 0x38, 0x36 und 0x37. Quellen: [SWS_DM_01314], [SWS_DM_01317], [SWS_DM_01318], [SWS_DM_01331].

Fehlerszenarien

Fehler können in mehreren Phasen auftreten:

  • Konstruktionsverletzungen: Schlägt das Auflösen oder Zuordnen des InstanceSpecifier fehl, treten Modellierungsfehler wie InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation oder InstanceSpecifierAlreadyInUseViolation auf ([SWS_DM_01325]).
  • Aktivierungsfehler: Ein wiederholter Aufruf von Offer() bei bereits aktivem Service liefert den Fehler DiagOfferErrc::kAlreadyOffered zurück ([SWS_DM_01336]).
  • Diagnose-Fehlercodes (NRC): Kann eine Operation nicht erfolgreich ausgeführt werden, geben die Callback-Methoden im ara::core::Future einen passenden negativen UDS-Antwortcode (NRC gemäß ISO 14229-1) über DiagUdsNrcErrc zurück ([SWS_DM_01331], [SWS_DM_01333], [SWS_DM_01335]).
  • Abbruchbehandlung: Über das übergebene CancellationHandler-Objekt kann die Anwendung mit IsCanceled prüfen, ob die Konversation abgebrochen wurde, oder über SetNotifier eine Benachrichtigungsfunktion für asynchrone Abbrüche registrieren ([SWS_DM_01331], [SWS_DM_01335]).

Dieser Leitfaden basiert ausschließlich auf der AUTOSAR-Spezifikation R25-11 und wurde automatisiert erstellt.

Mitgliederkarte

Klassendiagramm

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=()

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Konstruktoren und Destruktor

Constructor for FileTransferService (inherited)

Überladungen 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

Destructor of class FileTransferService.

virtual ~FileTransferService () noexcept;

Methoden

DeleteFile function

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 function

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

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

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;

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;

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;

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 function

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

void StopOffer () const noexcept;

Operatoren

operator= function 2

FileTransferService shall be a single not assignable instance.

Überladungen = 2
auto operator= (FileTransferService const &) -> FileTransferService &=delete; SWS_DM_01329
auto operator= (FileTransferService &&other) & noexcept -> File TransferService &; SWS_DM_01330

Enumerationen

WriteFileMode enumeration

Determines the write file operation mode.

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

Eingebettete Typen

FileSizes class

Dokumentation der Methoden

function 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

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: d47efb319aaa Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode DeleteFile der Klasse ara::diag::FileTransferService (SWS Diagnostics §8.18.1.2.3.1 „DeleteFile“, Header #include "ara/diag/file_transfer.h") wickelt den vollständigen Löschvorgang einer Datei im Rahmen des UDS-Dienstes RequestFileTransfer (0x38) mit dem Modus DeleteFile ab [SWS_DM_01335]. Der UDS-Dienst wird serverseitig gemäß ISO 14229-1 bereitgestellt [SWS_DM_01310] SWS Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“.

Beim Aufruf werden drei Parameter übergeben [SWS_DM_01335]:

  • fileName (ara::core::String): Pfadangabe und Name der Zieldatei (Interpretation: trotz der redaktionellen Angabe „file to read“ im Spezifikationstext handelt es sich um die zu löschende Datei). Frage Q-cdbe1185bb030e87 (offen)
  • metaInfo (MetaInfo const &): Metainformationen der aktuellen Diagnoseanforderung.
  • cancellationHandler (CancellationHandler): Ermöglicht die Prüfung des Abbruchstatus via cancellationHandler.IsCanceled() sowie die Registrierung einer Benachrichtigungsfunktion über cancellationHandler.SetNotifier(), falls die laufende Konversation abgebrochen wird.

Als asynchrones Ergebnis liefert die Funktion ein ara::core::Future<void> zurück [SWS_DM_01335]. Ein erfolgreicher Abschluss signalisiert dem Diagnose-Client ein positives Response-Verhalten. Im Fehlerfall ist ein zutreffender UDS-NRC gemäß ISO 14229-1 über DiagUdsNrcErrc im Future bereitzustellen [SWS_DM_01335].

Die Funktion ist als noexcept spezifiziert und gilt als ausnahmesicher („exception safe“) [SWS_DM_01335]. Die Anforderung an die Threadsicherheit ist konditional und wird über den dem Konstruktor übergebenen ConcurrencyType gesteuert [SWS_DM_01335].

Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R25-11 generiert.

Implementer's Guide folgt (Komplexität 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#8332cd05
Content hash
8332cd05
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

function 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#52de5334
Content hash
52de5334
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

function 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#8b4a360b
Content hash
8b4a360b
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

function 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#a64a8dae
Content hash
a64a8dae
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

function 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ae7133c89fe4 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Methode Offer der Klasse ara::diag::FileTransferService registriert den Handler beim Diagnostic Management (DM), sodass dieser eingehende Diagnoseanfragen zur Dateiübertragung an die Instanz weiterleiten kann [SWS_DM_01336]. Der Aufruf erfolgt parameterlos und synchron. Als Rückgabetyp dient ara::core::Result<void>, wodurch der Erfolg der Registrierung oder ein aufgetretener Fehler signalisiert wird [SWS_DM_01336].

Fehlerbehandlung

Tritt bei der Bereitstellung ein Fehler auf, liefert die Funktion ein fehlerhaftes ara::core::Result. Falls der Dienst für die betreffende Instanz bereits zuvor erfolgreich angeboten wurde, wird der spezifische Fehlercode DiagOfferErrc::kAlreadyOffered mit Rollback-Semantik zurückgegeben [SWS_DM_01336].

Nebenläufigkeit und Einschränkungen

Die Funktion ist als ausnahmesicher (exception safe) und noexcept deklariert, gilt jedoch als nicht threadsicher (not thread-safe) [SWS_DM_01336]. Aufrufe auf derselben Service-Instanz dürfen daher nicht ungeschützt aus mehreren Threads parallel ausgeführt werden.

Zusammenspiel

Das Anbieten über Offer entspricht dem standardisierten Bereitstellungsmuster für Diagnose-Handler in Adaptive AUTOSAR. Analoge Mechanismen zur Weiterleitung von Anfragen durch den DM existieren beispielsweise für den Datei-Download [SWS_DM_00792], den Upload [SWS_DM_00802] sowie allgemeine UDS-Dienste [SWS_DM_00619].

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR AP R25-11 generiert.

Implementer's Guide folgt (Komplexität 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#f8bdc817
Content hash
f8bdc817
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

function 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. .

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: a6ee000cae47 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode ara::diag::FileTransferService::RequestReadDirectory wird von der Diagnostic-Server-Instanz aufgerufen, wenn eine Diagnoseanforderung für RequestFileTransfer (0x38) mit dem modeOfOperation ReadDir (0x05) empfangen wird [SWS_DM_01315]. Die Funktion nimmt folgende Parameter entgegen [SWS_DM_01332]:

  • directoryName: Pfad einschließlich Verzeichnisname des auszulesenden Verzeichnisses.
  • metaInfo: Metainformationen der eingehenden Diagnoseanforderung.
  • cancellationHandler: Objekt zur Abfrage eines Gesprächsabbruchs über cancellationHandler.IsCanceled() oder zur Registrierung einer Callback-Funktion über cancellationHandler.SetNotifier() für Abbruchereignisse.

Die Rückgabe erfolgt asynchron über ein ara::core::Future<std::tuple<DataTransferReadSession, std::uint64_t>> [SWS_DM_01332]. Im Erfolgsfall enthält das Tupel die Zugriffsstrategie DataTransferReadSession sowie die Verzeichnisgröße, die an den UDS-Client übermittelt wird [SWS_DM_01332]. Das DataTransferReadSession-Objekt stellt dabei die Verbindung zwischen der Initialisierung per RequestFileTransfer (0x38) und den nachfolgenden Dateiübertragungen über TransferData (0x36) her SWS Diagnostics S. 184 „Realization of modeOfOperation ReadDir (0x05)“.

Schlägt die Verarbeitung fehl, liefert das Future einen negativen Antwortcode (NRC) gemäß ISO 14229-1 über DiagUdsNrcErrc [SWS_DM_01332]. Die Methode ist als noexcept und ausnahmesicher (exception safe) spezifiziert [SWS_DM_01332]. Die Thread-Sicherheit ist bedingt: Ob die Funktion threadsicher implementiert werden muss, wird über den im Konstruktor übergebenen ConcurrencyType festgelegt [SWS_DM_01332].

Dieser Nutzungshinweis basiert auf den Spezifikationen der AUTOSAR Adaptive Platform für das Diagnosemodul.

Implementer's Guide folgt (Komplexität 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#bfc5a2d7
Content hash
bfc5a2d7
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

function 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 81963250d021 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Methode RequestReadFile wird von der Diagnostic-Server-Instanz aufgerufen, sobald eine Diagnoseanforderung für RequestFileTransfer (0x38) mit dem Operationsmodus ReadFile (0x04) eingeht [SWS_DM_01314]. Die Funktion nimmt den Dateipfad samt Namen (fileName), das Datenformat (dataFormatIdentifier), Anfragemetadaten (metaInfo) sowie einen cancellationHandler entgegen [SWS_DM_01331]. Über den cancellationHandler kann der Abbruchstatus abgefragt (IsCanceled) oder eine Benachrichtigungsfunktion für den Abbruch der aktuellen Konversation registriert werden (SetNotifier) [SWS_DM_01331].

Die Ausführung erfolgt asynchron und gibt ein ara::core::Future zurück. Im Erfolgsfall liefert das Future ein Tupel aus DataTransferReadSession und FileSizes [SWS_DM_01331]. In FileSizes signalisiert ein Wert von 0 für uncompressed_size oder compressed_size, dass die jeweilige Größe nicht an den UDS-Client übermittelt wird; bei unkomprimierten Dateien muss compressed_size auf null gesetzt werden [SWS_DM_01331].

Fehlerbehandlung

Schlägt die Vorbereitung des Lesevorgangs fehl, meldet die Anwendung einen passenden UDS-NRC gemäß ISO 14229-1 über DiagUdsNrcErrc im zurückgegebenen Future [SWS_DM_01331].

Nebenläufigkeit und Zusammenspiel

Die Funktion ist als noexcept deklariert. Die Threadsicherheit ist bedingt (conditional): Ob die Implementierung threadsicher ausgelegt sein muss, entscheidet der dem Konstruktor übergebene ConcurrencyType [SWS_DM_01331]. Das zurückgegebene DataTransferReadSession-Objekt bildet das Bindeglied zwischen der Bearbeitung von RequestFileTransfer und den nachfolgenden TransferData-Diensten (0x36), über welche der eigentliche Dateidatenstrom übertragen wird SWS Diagnostics S. 184.

Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR R25-11 generiert.

Implementer's Guide folgt (Komplexität 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#de746ccd
Content hash
de746ccd
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

function 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 84d8dcb5e2d5 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode RequestResumeWriteFile wird von einer Instanz des Diagnostic Servers aufgerufen, wenn eine UDS-Dienstanforderung für RequestFileTransfer (0x38) mit der Betriebsart ResumeFile (0x06) empfangen wird ([SWS_DM_01316], SWS Diagnostics §[SWS_DM_01316] „Realization of modeOfOperation ResumeFile (0x06)“). Ihr Zweck ist die Wiederaufnahme eines zuvor unterbrochenen Schreibvorgangs für eine Datei.

Beim Aufruf werden der Dateipfad (fileName), die UDS-Datenformatkennung (dataFormatIdentifier), die Dateigrößen (fileSizes), Metadaten der Anfrage (metaInfo) sowie ein cancellationHandler übergeben ([SWS_DM_01334], SWS Diagnostics §8.18.1.2.3.5 „RequestResumeWriteFile“). Über den cancellationHandler kann die Applikation mittels IsCanceled aktiv prüfen, ob die laufende Diagnosekonversation abgebrochen wurde, oder per SetNotifier eine Benachrichtigungsfunktion für einen Abbruch registrieren ([SWS_DM_01334]).

Die Rückgabe erfolgt asynchron über ara::core::Future<std::tuple<DataTransferWriteSession, std::uint64_t>> ([SWS_DM_01334]). Im Erfolgsfall stellt das Future ein Tupel bereit, welches eine Instanz der DataTransferWriteSession sowie die Byte-Position enthält, ab der die Übertragung fortgesetzt werden soll ([SWS_DM_01334]). Dieses Session-Objekt verknüpft die Initialisierung per RequestFileTransfer mit den anschließenden TransferData-Diensten (0x36) (SWS Diagnostics §[SWS_DM_01316] „Realization of modeOfOperation ResumeFile (0x06)“).

Im Fehlerfall ist das Future mit einem passenden UDS-NRC gemäß ISO 14229-1 über DiagUdsNrcErrc zu beenden ([SWS_DM_01334]). Die Funktion ist als noexcept deklariert und ausnahmesicher; die Thread-Sicherheit ist bedingt („conditional“) und wird durch den im Konstruktor übergebenen ConcurrencyType festgelegt ([SWS_DM_01334]).

Dieser Text wurde von einer KI kuratiert und basiert ausschließlich auf den Spezifikationen der AUTOSAR Adaptive Plattform R25-11.

Implementer's Guide folgt (Komplexität 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#89c39f93
Content hash
89c39f93
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

function 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: d68fe452ba36 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Methode [SWS_DM_01333] wird vom Diagnoseserver aufgerufen, sobald eine UDS-Dienstanforderung RequestFileTransfer (0x38) mit der Betriebsart WriteFile empfangen wird ([SWS_DM_01310]). Wird die Anforderung mit der Betriebsart ReplaceFile (0x03) übermittelt, ruft der Diagnoseserver die Schnittstelle mit dem Schreibmodus kReplace auf ([SWS_DM_01313]). Der Aufruf übergibt den Dateinamen (fileName), die Kennung des Datenformats (dataFormatIdentifier), Dateigrößen (fileSizes), den Ersetzungsmodus (mode), zusätzliche Metadaten (metaInfo) sowie einen cancellationHandler. Die Spezifikationsangabe „file to read“ beim Parameter fileName dürfte ein redaktionelles Versehen sein und bezeichnet den Zielpfad der zu schreibenden Datei. Frage Q-f14158fc20fda8af (offen)

Die Verarbeitung erfolgt asynchron und liefert ein ara::core::Future<DataTransferWriteSession> zurück ([SWS_DM_01333]). Die resultierende Sitzung dient als Bindeglied zwischen der Initialisierung über den Dienst 0x38 und den nachfolgenden Datentransfers via TransferData (0x36) (AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.20 „Service 0x38 – RequestFileTransfer“).

Fehlerbehandlung und Nebenläufigkeit

Die Methode ist als noexcept deklariert. Tritt ein Fehler auf, wird kein C++-Fehler geworfen, sondern ein passender UDS-NRC aus DiagUdsNrcErrc gemäß ISO 14229-1 im Future zurückgegeben ([SWS_DM_01333]). Über den übergebenen cancellationHandler kann mittels IsCanceled() der Stornierungsstatus abgefragt oder mit SetNotifier() eine Benachrichtigung registriert werden, falls die Diagnosekonversation abbricht. Die Thread-Sicherheit ist bedingt: Ob die Funktion threadsicher implementiert werden muss, wird über den ConcurrencyType im Konstruktor festgelegt ([SWS_DM_01333]).

Zusammenspiel

Die Operation ergänzt das Zusammenspiel der Dateiübertragungsdienste und steht komplementär zu Leseoperationen wie RequestReadFile ([SWS_DM_01314]) oder der Wiederaufnahme unterbrochener Schreibvorgänge via RequestResumeWriteFile ([SWS_DM_01316]).

Dieser Verwendungshinweis wurde automatisiert anhand des Spezifikationsstands generiert.

Implementer's Guide folgt (Komplexität 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#c3df1383
Content hash
c3df1383
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

function StopOffer [SWS_DM_01337] Upstream: RS_Diag_04135

void StopOffer () const noexcept;

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

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: b1eec837af18 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion StopOffer der Klasse ara::diag::FileTransferService dient dem Abmelden des Dienstes gegenüber dem Diagnostic Management ([SWS_DM_01337]; AUTOSAR_AP_SWS_Diagnostics §8.18.1.2.3.7 „StopOffer“). Ihr Aufruf bewirkt, dass der DM ab diesem Zeitpunkt keine eingehenden Diagnoseanfragen mehr an diese Service-Instanz weiterleitet. Die Schnittstelle ist im Header #include "ara/diag/file_transfer.h" definiert, besitzt die Signatur void StopOffer() const noexcept;, erwartet keine Parameter und liefert keinen Rückgabewert. Der Aufruf wird synchron ausgeführt.

Für StopOffer ist kein Fehlermechanismus vorgesehen. Die Methode ist als ausnahmesicher (exception safe) und mit dem Bezeichner noexcept deklariert ([SWS_DM_01337]). Weder werden Ausnahmen ausgelöst noch Fehlercodes an die Anwendung zurückgegeben. Das Deaktivieren der Weiterleitung schlägt aus Sicht der API nicht fehl.

Gemäß Spezifikation ist StopOffer als nicht threadsicher (not thread-safe) eingestuft ([SWS_DM_01337]). Daher müssen parallele Zugriffe auf dieselbe Instanz von ara::diag::FileTransferService anwendungsseitig gegen Nebenläufigkeit geschützt werden. Interpretation: Die Deaktivierung dürfte typischerweise vor dem Zerstören des Objekts oder während eines geordneten Herunterfahrens der verarbeitenden Anwendung erfolgen, damit keine Anfragen in eine nicht mehr betriebsbereite Routine laufen. Frage Q-e7bb2a5621c39160 (offen)

Das Deaktivieren über StopOffer folgt dem einheitlichen Architekturmuster von AUTOSAR Adaptive für bereitgestellte Diagnosedienste. Es korrespondiert mit gleichartigen Deaktivierungsfunktionen verwandter Klassen wie ara::diag::DownloadService ([SWS_DM_00793]), ara::diag::UploadService ([SWS_DM_00803]), ara::diag::CommunicationControl ([SWS_DM_00810]) und ara::diag::Monitor ([SWS_DM_01089]; AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 „Monitors“).

Dieser Text wurde von einer KI auf Basis der Spezifikation generiert.

Implementer's Guide folgt (Komplexität 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#a8ae9f32
Content hash
a8ae9f32
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

function 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#b8722548
Content hash
b8722548
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

function 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#dc10e40b
Content hash
dc10e40b
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

function ~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#838a4706
Content hash
838a4706
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

Dokumentation der Enumerationen

enumeration 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#5ddcfb10
Content hash
5ddcfb10
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