Stelt applicaties in staat generieke SOVD-operatieverzoeken van de Diagnostic Manager te verwerken en te beantwoorden.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 23f008b064deHerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Stelt applicaties in staat generieke SOVD-operatieverzoeken van de Diagnostic Manager te verwerken en te beantwoorden.
De basisklasse dient voor de implementatie van generieke SOVD-operatiehandlers voor de verwerking van uitvoeringsverzoeken in Diagnostic Management [SWS_DM_02203]. Na de instantiëring activeert de applicatie de ontvangst via Offer(), waarna de Diagnostic Manager binnenkomende verzoeken via de asynchrone interface StartExecution doorstuurt [SWS_DM_02174][SWS_DM_02210]. Overgedragen inhoudsgegevens en de annuleringshandler zijn strikt gebonden aan de duur van de operatie [SWS_DM_02210].
Context
De klasse ara::diag::GenericDiagnosticSovdOperation biedt een generieke interface voor de uitvoering van operaties in het kader van ASAM SOVD (Service-Oriented Vehicle Diagnostics) [SWS_DM_02203]. Deze fungeert als schakel tussen het diagnostische platform en de applicatiespecifieke implementatie van diagnostische routines of acties. Wanneer een externe SOVD-client een uitvoering van een operatie verzoekt, stelt de instantie van de Diagnostic Server de betreffende SOVD-methode beschikbaar AUTOSAR_AP_SWS_Diagnostics §7.3.3.5.5.5 “Operations – Start execution of an operation”[SWS_DM_01396]. Zodra de autorisatie respectievelijk de controle van een vereiste Proximity Challenge succesvol is afgerond, stuurt de Diagnostic Manager (DM) de aanroep door naar de methode StartExecution van de geregistreerde handler-instantie [SWS_DM_02174].
Levenscyclus
De creatie van een instantie vindt plaats via de constructor onder specificatie van een ara::core::InstanceSpecifier, die verwijst naar een PortPrototype, alsmede een concurrency-type (ConcurrencyType) [SWS_DM_02204]. Omdat move-constructor [SWS_DM_02206] en move-toewijzingsoperator [SWS_DM_02207] als protected zijn gedeclareerd, is de klasse ontworpen als basisklasse voor afgeleide applicatiespecifieke handlers. Na de instantiëring bevindt het object zich in de inactieve toestand en accepteert het geen verzoeken. Via Offer() wordt het doorsturen van verzoeken door de Diagnostic Manager geactiveerd [SWS_DM_02211]. Met StopOffer() kan dit doorsturen weer worden gedeactiveerd [SWS_DM_02212]. Bij de afbraak van de instantie zorgt de virtuele destructor voor een correcte opschoning [SWS_DM_02205]. Constructor, destructor en move-operaties zijn gespecificeerd als thread-safe, terwijl Offer() en StopOffer() niet thread-safe zijn en typisch tijdens de initialisatie- of shutdown-fase van het proces moeten worden aangeroepen.
Het reguliere verloop omvat het aanbieden van de handler, de ontvangst van operatieverzoeken en de asynchrone levering van het antwoord:
Dienst aanbieden: De applicatie roept Offer() aan, waardoor de Diagnostic Manager wordt geautoriseerd om binnenkomende SOVD-verzoeken naar het object door te sturen [SWS_DM_02211].
Start van de operatie: Na ontvangst van de SOVD-methode en het slagen voor de controle van de Proximity Challenge roept de DM de puur virtuele methode StartExecution aan [SWS_DM_02174][SWS_DM_02210]. Daarbij worden de naam van de SOVD-operatie (sovd_operation_name), payload (sovd_content_data), meta-informatie (meta_info) en een CancellationHandler overgedragen [SWS_DM_02210].
Resultaatretournering: De methode levert een ara::core::Future op, die ofwel een synchroon antwoord (StartSynchronousExecutionResponse) ofwel een asynchroon antwoord (StartAsynchronousExecutionResponse) bevat [SWS_DM_02210]. Bij een synchrone operatie neemt de DM de gegevens uit het resultaat over voor het genereren van de SOVD-response-body [SWS_DM_02176].
Dienst beëindigen: Vóór de vernietiging van het object beëindigt de applicatie het doorsturen middels StopOffer()[SWS_DM_02212].
Bij het gebruik van de interface kunnen zowel administratieve als protocolspecifieke fouten optreden:
Reeds aangeboden: Een hernieuwde aanroep van Offer() op een reeds aangeboden instantie mislukt met de foutcode DiagOfferErrc::kAlreadyOffered[SWS_DM_02211].
SOVD-fout: Mislukt de uitvoering van de operatie, dan dient in ara::core::Future een bijbehorende negatieve responscode conform ISO 17978-3 resp. ASAM SOVD 1.1 te worden geretourneerd [SWS_DM_02210].
Afbreken: Via het overgedragen object cancellation_handler wordt de applicatie geïnformeerd indien het lopende verzoek wordt afgebroken. De specificatie verbiedt uitdrukkelijk om deze handler langer dan de levensduur van de lopende operatie op te slaan of te benaderen [SWS_DM_02210]. Bovendien blijven de overgedragen invoergegevens in sovd_content_data slechts geldig totdat de bijbehorende promise is vervuld of de verwerking is afgebroken [SWS_DM_02210].
Deze handleiding is uitsluitend gebaseerd op de specificatie AUTOSAR Adaptive Platform R25-11 (module diag) en is automatisch gecureerd.
This Offer will enable the DM to forward request messages to this handler.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e7a3d094ee66HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode Offer van de klasse ara::diag::GenericDiagnosticSovdOperation deblokkeert het doorsturen van binnenkomende diagnose- en serviceverzoeken vanuit Diagnostic Management (DM) naar de betreffende handler [SWS_DM_02211]. De functie accepteert geen parameters, declareert noexcept en retourneert een ara::core::Result<void>[SWS_DM_02211]. Interpretatie: Aangezien er geen ara::core::Future wordt geretourneerd, zal de activering van het doorsturen vermoedelijk synchroon tijdens de methode-aanroep worden voltooid. Vraag Q-d9213a2118672440 (open)
Wat betreft de foutafhandeling garandeert de interface rollback-semantiek [SWS_DM_02211]. Werd de service voor deze handler-instantie al eerder aangeboden, dan mislukt de aanroep en wordt de foutcode DiagOfferErrc::kAlreadyOffered geretourneerd [SWS_DM_02211]. Deze fouttoestand komt overeen met het in diagnose-foutdomeinen gedefinieerde foutbeeld voor meervoudige registraties [SWS_DM_00514].
Voor de concurrency en de aanroepcontext gelden de volgende beperkingen:
Thread-safety: De bewerking is gespecificeerd als not thread-safe, maar exception safe[SWS_DM_02211]. Parallelle aanroepen op dezelfde handler-instantie moeten applicatiezijdig worden gesynchroniseerd.
To volgorde van toestanden:Offer moet vóór het doorsturen van verzoeken worden aangeroepen [SWS_DM_02211]. Een hernieuwde aanroep zonder tussentijdse intrekking leidt tot een fout.
In het totale systeem volgt Offer het uniforme beschikbaarstellingspatroon van Adaptive Diagnostic Management, zoals dat analoog ook voor generieke routines [SWS_DM_00557], UDS-diensten [SWS_DM_00619] of communicatiebesturingen [SWS_DM_00809] is gedefinieerd. Dit principe is specifiek voor ara::diag ontworpen en mag niet worden verward met de servicebeschikbaarstelling in ara::com (SWS Diagnostics §7.3.4.1.2 “Monitors”).
Deze tekst is gegenereerd door een AI op basis van de specificatie AUTOSAR R25-11.
sovd_operation_name: Naam van de uit te voeren SOVD-bewerking [SWS_DM_02210].
sovd_content_data: Invoergegevens van de bewerking, die geldig blijven totdat de bijbehorende promise is vervuld of de verwerking via de cancellation-handler is geannuleerd [SWS_DM_02210].
meta_info: Aanvullende meta-informatie over de diagnosecontext [SWS_DM_02210].
cancellation_handler: Meldt een annulering van het lopende verzoek; dit object mag niet voorbij de levensduur van de bewerking worden opgeslagen of gerefereerd [SWS_DM_02210].
Als retourwaarde levert de functie een ara::core::Future met een ara::core::Variant uit StartSynchronousExecutionResponse of StartAsynchronousExecutionResponse[SWS_DM_02210] op. Bij synchrone uitvoering stelt Diagnostic Management de parameters in de SOVD-responsebody samen uit de inhoudsgegevens van het antwoord [SWS_DM_02176]. Bij asynchrone verwerking kent Diagnostic Management een unieke identificator (id) toe ter identificatie van de lopende bewerking en stelt de uitvoeringsstatus [SWS_DM_02177] in.
In geval van een fout wordt via de Future een negatief antwoord met een toepasselijke SOVD-foutcode conform ISO 17978-3 resp. ASAM SOVD 1.1 geretourneerd [SWS_DM_02210]. Wat betreft concurrency en veiligheid is de methode gedefinieerd als thread-safe en exception safe ([SWS_DM_02210], AUTOSAR_AP_SWS_Diagnostics §8.62.2.1.3.2 “StartExecution”).
Deze tekst is door een AI gegenereerd op basis van de specificatie AUTOSAR AP R25-11.
A future with either StartSynchronousExecutionResponse or StartAsynchronousExecutionResponse(for a positive response message) or a SOVD Error (for an negative response message)
Fehler
Fehlercode
Beschreibung
Please use an applicable SOVD error code, as defined in ISO 17978-3 / ASAM SOVD 1.1.
Request a governed re-review of this record. The record is not changed immediately.
This StopOffer will disable the forwarding of request messages from DM.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ab28d5476140HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode StopOffer van de klasse ara::diag::GenericDiagnosticSovdOperation uit de header ara/diag/generic_diagnostic_sovd_operation.h dient ertoe het doorsturen van binnenkomende verzoekberichten vanuit Diagnostic Management (DM) naar de bewerking te deactiveren [SWS_DM_02212].
Gebruik en semantiek: De functie bezit de signatuur void StopOffer() noexcept;, accepteert geen parameters en levert geen retourwaarde op [SWS_DM_02212]. Aangezien er geen asynchrone retourtypen zoals futures of callbacks zijn gedefinieerd, zal de deactivering vermoedelijk synchroon direct tijdens de aanroep van kracht worden. Vraag Q-b0723617991a4e39 (open) Zij is als uitzonderingsveilig (exception safe) gedeclareerd [SWS_DM_02212].
Concurrency en foutafhandeling: De interface is gespecificeerd als niet thread-safe (not thread-safe) [SWS_DM_02212]. Daarom moeten parallelle toegangen tot dezelfde instantie op applicatieniveau worden gesynchroniseerd. Er worden noch foutcodes geretourneerd noch specifieke DET- of DEM-meldingen gegenereerd [SWS_DM_02212].
Interactie:StopOffer volgt het gestandaardiseerde serviceprovider-patroon van AUTOSAR Adaptive Diag. Analoge methoden bestaan voor verdere diagnose-interfaces zoals generieke routines [SWS_DM_00558], generieke UDS-diensten [SWS_DM_00620], data-identifiers [SWS_DM_00639] of downloaddiensten [SWS_DM_00793]. Hoewel de naam is gebaseerd op ara::com, betreft het een zelfstandige diagnose-implementatie AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”.
Deze tekst is opgesteld door een AI en dient als leidraad aan de hand van de AUTOSAR-specificatie.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel