DEENESPTFRRUARHIKOZHNL

क्लास ara::diag::ServiceValidation

[SWS_DM_00771] Upstream: RS_Diag_04199

class ServiceValidation {...};

DiagnosticServiceValidationInterface.

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

उपयोगकर्ता गाइडएआई जनित

निर्माता या आपूर्तिकर्ता परीक्षणों के आधार पर Diagnostic Management में आने वाले डायग्नोस्टिक अनुरोधों को मान्य करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: f91c31f76f32 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

निर्माता या आपूर्तिकर्ता परीक्षणों के आधार पर Diagnostic Management में आने वाले डायग्नोस्टिक अनुरोधों को मान्य करता है।

क्लास ara::diag::ServiceValidation निर्माता या आपूर्तिकर्ता मानदंडों के आधार पर Diagnostic Management में आने वाले UDS डायग्नोस्टिक अनुरोधों के एप्लिकेशन-विशिष्ट सत्यापन के लिए कार्य करती है [SWS_DM_00772]। निर्माण के बाद, सेवा को Offer() का उपयोग करके सक्रिय किया जाना चाहिए ताकि अनुरोध डेटा को सत्यापन के लिए एसिंक्रोनस रूप से Validate() पर अग्रेषित किया जा सके और बाद में Confirmation() के माध्यम से पुष्टि की जा सके [SWS_DM_00776]। एक आवश्यक बाधा शर्त के रूप में, इंस्टेंस एक पोर्ट से बंधी है, न तो कॉपी करने योग्य है और न ही स्थानांतरित करने योग्य, और कंस्ट्रक्टर के अलावा थ्रेड-सुरक्षित नहीं है।

संदर्भ

क्लास ara::diag::ServiceValidation AUTOSAR Adaptive डायग्नोस्टिक्स स्टैक के भीतर मॉडलिंग तत्व DiagnosticServiceValidationInterface के लिए प्रोग्रामिंग इंटरफ़ेस प्रदान करती है। इस इंटरफ़ेस के माध्यम से, एक एप्लिकेशन आने वाले डायग्नोस्टिक अनुरोधों के लिए एप्लिकेशन-विशिष्ट परीक्षण लागू कर सकता है। इंस्टेंस सीधे Diagnostic Management (DM) के साथ इंटरैक्ट करता है, जो आने वाले डायग्नोस्टिक अनुरोधों को सत्यापन तर्क पर अग्रेषित करने के लिए अधिकृत है [SWS_DM_00776]।

सत्यापन का कार्यात्मक असाइनमेंट मॉडलिंग विशेषता DiagnosticServiceValidationMapping.category के माध्यम से नियंत्रित होता है। इस श्रेणी के आधार पर, सत्यापन मेथड Validate() को ISO 14229-1 (अध्याय 8.7) के अनुसार UDS प्रतिक्रिया नियमों के ढांचे के भीतर या तो निर्माता परीक्षण (“Manufacturer Check”) या आपूर्तिकर्ता परीक्षण (“Supplier Check”) के संदर्भ में कॉल किया जाता है [SWS_DM_00772]। अमान्य अनुरोधों को समय रहते फ़िल्टर करने के लिए DM द्वारा वास्तविक सेवा निष्पादन से पहले आने वाले अनुरोध संदेशों को इस सत्यापन परीक्षण के अधीन किए जाने की संभावना है। प्रश्न Q-d84302d27d940634 (खुला)

जीवनचक्र

निर्माण स्पष्ट रूप से एक ara::core::InstanceSpecifier निर्दिष्ट करके कंस्ट्रक्टर के माध्यम से होता है, जिसे सिस्टम मॉडल में परिभाषित एक PortPrototype को संदर्भित करना चाहिए [SWS_DM_00772]। ara::diag::ServiceValidation को एक गैर-कॉपी करने योग्य और गैर-स्थानांतरित करने योग्य एकल इंस्टेंस के रूप में डिज़ाइन किया गया है: कॉपी कंस्ट्रक्टर [SWS_DM_01689] और मूव कंस्ट्रक्टर [SWS_DM_01690] दोनों के साथ-साथ कॉपी [SWS_DM_01687] और मूव [SWS_DM_01688] के लिए असाइनमेंट ऑपरेटरों को हटाए गए (=delete) के रूप में घोषित किया गया है।

आरंभीकरण के बाद, ऑब्जेक्ट निष्क्रिय स्थिति में रहता है। केवल Offer() को कॉल करने से ही DM से हैंडलर तक डायग्नोस्टिक अनुरोधों का अग्रेषण सक्षम होता है [SWS_DM_00776]। रनटाइम के दौरान StopOffer() के माध्यम से सेवा प्रस्ताव को समाप्त किया जा सकता है, जिससे DM अग्रेषण को फिर से निष्क्रिय कर देता है [SWS_DM_00777]। संसाधनों को वर्चुअल डिस्ट्रक्टर ~ServiceValidation() [SWS_DM_00773] के माध्यम से रिलीज किया जाता है।

समवर्तीता के संबंध में, केवल कंस्ट्रक्टर को ही थ्रेड-सुरक्षित के रूप में निर्दिष्ट किया गया है [SWS_DM_00772]। मेथड Offer() [SWS_DM_00776], StopOffer() [SWS_DM_00777], Validate() [SWS_DM_00774], Confirmation() [SWS_DM_00775] और साथ ही डिस्ट्रक्टर [SWS_DM_00773] को गैर-थ्रेड-सुरक्षित के रूप में वर्गीकृत किया गया है, लेकिन वे अपवाद-सुरक्षित हैं (noexcept)।

उपयोग पथ

कंक्रीट सत्यापन तर्क संभवतः एप्लिकेशन द्वारा ara::diag::ServiceValidation से व्युत्पन्न करके और वर्चुअल इंटरफ़ेस मेथड को ओवरराइड करके प्रदान किया जाता है। प्रश्न Q-84efdab7839212b5 (खुला) विशिष्ट परिचालन प्रवाह को निम्नलिखित चरणों में विभाजित किया गया है:

  1. इंस्टेंटिएशन: कॉन्फ़िगर किए गए पोर्ट को संदर्भित करने वाले InstanceSpecifier को पास करके इंस्टेंस बनाना [SWS_DM_00772]।
  2. सेवा प्रस्ताव: DM द्वारा अनुरोध अग्रेषण को सक्रिय करने के लिए Offer() को कॉल करना [SWS_DM_00776]।
  3. सत्यापन: प्रत्येक आने वाले डायग्नोस्टिक अनुरोध के लिए, DM मेथड Validate() को कॉल करता है [SWS_DM_00774]। रॉ डेटा (सर्विस आइडेंटिफ़ायर, SID सहित) को ara::core::Span<const std::uint8_t> के रूप में और अनुरोध के MetaInfo को पास किया जाता है [SWS_DM_00774]। डेटा तब तक मान्य रहता है जब तक कि लौटाया गया ara::core::Future<void> पूरा नहीं हो जाता या रद्दीकरण हैंडलर द्वारा प्रसंस्करण रद्द नहीं कर दिया जाता [SWS_DM_00774]।
  4. पुष्टि: जैसे ही डायग्नोस्टिक अनुरोध का प्रसंस्करण पूरा हो जाता है, DM परिणाम स्थिति (ConfirmationStatusType) और MetaInfo [SWS_DM_00775] पास करके मेथड Confirmation() के माध्यम से हैंडलर को सूचित करता है।
  5. निष्क्रियकरण: StopOffer() [SWS_DM_00777] का उपयोग करके अनुरोध प्रसंस्करण समाप्त करना।
नैदानिक अनुरोध का सत्यापन और पुष्टि अनुक्रमएप्लिकेशनServiceValidationनिदान प्रबंधनOffer()Registrierung aktivierenValidate(requestData, metaInfo)डेटा & MetaInfo की जाँचaltValidierung erfolgreichFuture<void> (Erfolg)Validierung fehlgeschlagenFuture<void> (DiagUdsNrcErrc)Confirmation(status, metaInfo)StopOffer()Registrierung deaktivieren

अनुक्रम आरेख: डायग्नोस्टिक अनुरोध को मान्य और पुष्टि करने के लिए कॉल अनुक्रम। स्रोत: [SWS_DM_00772], [SWS_DM_00774], [SWS_DM_00775], [SWS_DM_00776], [SWS_DM_00777]।

त्रुटि परिदृश्य

त्रुटि स्थितियां निर्माण के दौरान स्थैतिक कॉन्फ़िगरेशन जांच और रनटाइम दोनों में होती हैं:

  • निर्माण उल्लंघन: कंस्ट्रक्टर विशिष्ट मॉडलिंग त्रुटियों को Violations के रूप में रिपोर्ट करता है [SWS_DM_00772]:
    • InstanceSpecifierMappingIntegrityViolation: पहचानकर्ता को निष्पादन योग्य के संदर्भ में हल नहीं किया जा सकता है या यह किसी PortPrototype [SWS_DM_00772] को संदर्भित नहीं करता है।
    • PortInterfaceMappingViolation: संदर्भित PortPrototype किसी DiagnosticServiceValidationInterface [SWS_DM_00772] द्वारा टाइप नहीं किया गया है।
    • ProcessMappingViolation: प्रक्रिया के लिए कोई उपयुक्त मॉडलिंग किया गया Process मौजूद नहीं है [SWS_DM_00772]।
    • InstanceSpecifierAlreadyInUseViolation: InstanceSpecifier पहले से ही चल रही प्रक्रिया में किसी अन्य इंस्टेंस द्वारा उपयोग में है [SWS_DM_00772]।
  • सेवा प्रस्ताव: यदि सेवा पहले से ही सक्रिय रूप से प्रस्तावित होने पर Offer() को कॉल किया जाता है, तो रिटर्न मान ara::core::Result<void> त्रुटि कोड DiagOfferErrc::kAlreadyOffered लौटाता है [SWS_DM_00776]।
  • सत्यापन त्रुटियां: यदि अनुरोध की सामग्री जांच विफल हो जाती है, तो एप्लिकेशन DiagUdsNrcErrc [SWS_DM_00774] के माध्यम से ISO 14229-1 से संबंधित Negative Response Code (NRC) सेट करके लौटाए गए ara::core::Future<void> के माध्यम से अस्वीकृति का संकेत देता है।

यह मार्गदर्शिका मॉड्यूल diag के लिए AUTOSAR Adaptive विनिर्देश R25-11 पर आधारित है।

सदस्य मानचित्र

कंस्ट्रक्टर और डिस्ट्रक्टर

2

ऑपरेटर

1

क्लास आरेख

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

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

विवरण दृश्य

रूपरेखा में कोई प्रविष्टि चुनें।

कंस्ट्रक्टर और डिस्ट्रक्टर

ServiceValidation फ़ंक्शन 3

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

ओवरलोड ServiceValidation 3
explicit ServiceValidation (const ara::core::InstanceSpecifier &specifier) noexcept; SWS_DM_00772
ServiceValidation (ServiceValidation &)=delete; SWS_DM_01689
ServiceValidation (ServiceValidation &&)=delete; SWS_DM_01690
~ServiceValidation फ़ंक्शन

Destructor of ServiceValidation .

virtual ~ServiceValidation () noexcept;

मेथड

Confirmation फ़ंक्शन

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

virtual void Confirmation (ConfirmationStatusType status, const Meta Info &metaInfo) noexcept;
Offer फ़ंक्शन

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

ara::core::Result< void > Offer () noexcept;
StopOffer फ़ंक्शन

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

void StopOffer () noexcept;
Validate फ़ंक्शन

Called for any request message.

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

ऑपरेटर

operator= फ़ंक्शन 2

ServiceValidation shall be a single not assignable instance.

ओवरलोड = 2

मेथड का प्रलेखन

फ़ंक्शन Confirmation [SWS_DM_00775] Upstream: RS_AP_00138, RS_Diag_04170, RS_Diag_04199

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

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

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9b9a34095329 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

इंटरफ़ेस ara::diag::ServiceValidation की विधि Confirmation ([SWS_DM_00775], ara/diag/service_validation.h में घोषित) पहले संसाधित किए गए डायग्नोस्टिक अनुरोध के पूरा होने और परिणाम की अधिसूचना के रूप में कार्य करती है।

उपयोग और सिमेंटिक्स

अनुरोध संसाधन समाप्त होते ही वर्चुअल कॉलबैक फ़ंक्शन को Diagnostic Management द्वारा समकालिक रूप से कॉल किया जाता है। इसका कोई रिटर्न मान नहीं होता है (void) और यह दो पासिंग पैरामीटर स्वीकार करता है ([SWS_DM_00775]):

  • status (ConfirmationStatusType): सेवा संसाधन की अंतिम स्थिति या परिणाम का संकेत देता है ([SWS_DM_00775])।
  • metaInfo (const Meta Info &): डायग्नोस्टिक अनुरोध की संबंधित मेटा-जानकारी शामिल है ([SWS_DM_00775])।

त्रुटि हैंडलिंग और समवर्तीता

फ़ंक्शन को अपवाद-सुरक्षित (exception safe) के रूप में निर्दिष्ट किया गया है और पहचानकर्ता noexcept के साथ घोषित किया गया है ([SWS_DM_00775])। इसलिए अनुप्रयोग-पक्षीय ओवरराइड्स को बाहर की ओर अपवादों का प्रचार नहीं करना चाहिए। इस विधि के लिए DET या DEM संदेशों जैसे विशिष्ट त्रुटि कोड परिभाषित नहीं हैं। समवर्तीता के संबंध में, Confirmation को थ्रेड-सुरक्षित नहीं (not thread-safe) के रूप में वर्गीकृत किया गया है ([SWS_DM_00775]); समानांतर प्रक्रियाओं के मामले में कॉलबैक के भीतर अनुप्रयोग-आंतरिक स्थितियों तक पहुँचने के लिए उचित सिंक्रनाइज़ेशन की आवश्यकता होती है।

इंटरैक्शन

अधिसूचना का ट्रिगर होना डायग्नोस्टिक अनुरोध के जीवनचक्र के अंत से जुड़ा होता है ([SWS_DM_00775])। यह चक्र सकारात्मक या नकारात्मक प्रतिक्रिया प्रेषित होने या दबाए जाने के तुरंत बाद पूरा हो जाता है (AUTOSAR_AP_SWS_Diagnostics §7.3.2.1.2 “Life-cycle of a Diagnostic Conversation”)। व्याख्या: मॉड्यूल स्तर पर, Diagnostic Management कॉलबैक Confirmation को संभवतः तभी शुरू करेगा जब ट्रांसपोर्ट लेयर के माध्यम से ट्रांसमिशन को TransmitConfirmation और परिणाम kTransmitOk या kTransmitFailed का उपयोग करके पावती दी गई हो ([SWS_DM_00307], [SWS_DM_00351])। प्रश्न Q-97c38586ef5e3704 (खुला)

यह उपयोग नोट AUTOSAR Adaptive R25-11 विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

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

Parameter (in)

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

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00775
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00775@rel:R25-11#8a5820d9
Content hash
8a5820d9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00775
Status: valid/unmigrated Version: rel:R25-11#bbcfd2e3 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00775@rel:R25-11#bbcfd2e3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#044090102026-09-30
  • R19-11rel:R19-11#20a5939d2026-10-14
  • R20-11rel:R20-11#761e125d2026-10-14
  • R21-11rel:R21-11#761e125d2026-10-14
  • R22-11rel:R22-11#991a58222026-10-14
  • R23-11rel:R23-11#a506b4142026-10-14
  • R24-11rel:R24-11#5339f3712026-10-14
  • R25-11rel:R25-11#bbcfd2e32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन Offer [SWS_DM_00776] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04199

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

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

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 90f000c47eb7 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

क्लास ara::diag::ServiceValidation (हेडर ara/diag/service_validation.h) का सदस्य फ़ंक्शन Offer Diagnostic Manager (DM) द्वारा इस विशिष्ट सत्यापन हैंडलर को आने वाले नैदानिक अनुरोधों के अग्रेषण को सक्षम करता है [SWS_DM_00776]। कॉल समकालिक रूप से और बिना किसी पासिंग पैरामीटर के सिग्नेचर ara::core::Result<void> Offer() noexcept; के माध्यम से किया जाता है [SWS_DM_00776]। वापसी मान ara::core::Result<void> के रूप में कार्य करता है, जो सफलता की स्थिति में खाली होता है या त्रुटि की स्थिति में उत्पन्न त्रुटि कोड को समाहित करता है [SWS_DM_00776]।

त्रुटि प्रबंधन

यदि पंजीकरण विफल रहता है, तो विधि एक त्रुटिपूर्ण Result लौटाती है। यदि संबंधित इंस्टेंस के लिए सेवा पहले से ही पेश की गई थी, तो त्रुटि कोड DiagOfferErrc::kAlreadyOffered लौटाया जाता है [SWS_DM_00776]। यहां एक रोलबैक सेमेंटिक्स लागू होता है, ताकि इंस्टेंस की पिछली स्थिति अपरिवर्तित रहे [SWS_DM_00776]।

समवर्तीता और प्रतिबंध

फ़ंक्शन अपवाद-सुरक्षित (exception safe) के रूप में निर्दिष्ट है, लेकिन स्पष्ट रूप से गैर-थ्रेड-सुरक्षित (not thread-safe) है [SWS_DM_00776]। उसी इंस्टेंस पर समानांतर एक्सेस को कॉल करने वाले एप्लिकेशन द्वारा समन्वित किया जाना चाहिए। क्रम के संबंध में, Diagnostic Manager सत्यापन के लिए सेवा अनुरोधों को अग्रेषित करने में सक्षम होने से पहले Offer को कॉल किया जाना चाहिए [SWS_DM_00776]।

इंटरैक्शन

Offer के माध्यम से इंटरफेस की पेशकश AUTOSAR Adaptive डायग्नोस्टिक्स का एक सुसंगत डिज़ाइन पैटर्न है और इसे रूटीन ([SWS_DM_00557], [SWS_DM_00594]), सामान्य UDS सेवाओं ([SWS_DM_00619]), DoIP फ़ंक्शंस ([SWS_DM_00725], [SWS_DM_00735]) के साथ-साथ सुरक्षा एक्सेस ([SWS_DM_00766]) पर भी समान रूप से लागू किया जाता है। जब तक कोई इंटरफ़ेस Offer के माध्यम से प्रदान नहीं किया जाता है, तब तक DM अनुरोधों को खारिज कर देता है या परिभाषित प्रतिस्थापन मानों का उपयोग करता है ([SWS_DM_01525], [SWS_DM_01527])। ara::com के साथ वैचारिक समानताएं कार्यात्मक रूप से प्रेरित हैं, लेकिन डायग्नोस्टिक्स के एक स्वतंत्र कार्यान्वयन का प्रतिनिधित्व करती हैं (AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”)।

यह उपयोग संबंधी निर्देश AUTOSAR Adaptive R25-11 विनिर्देश के आधार पर स्वचालित रूप से तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

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

Rückgabewert

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

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_00776
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00776@rel:R25-11#d05fe475
Content hash
d05fe475
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00776
Status: valid/unmigrated Version: rel:R25-11#98f79358 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00776@rel:R25-11#98f79358
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f679147c2026-09-30
  • R19-11rel:R19-11#1c84ea4d2026-10-14
  • R20-11rel:R20-11#cea448532026-10-14
  • R21-11rel:R21-11#bcd37d0f2026-10-14
  • R22-11rel:R22-11#c7eb78232026-10-14
  • R23-11rel:R23-11#3732217c2026-10-14
  • R24-11rel:R24-11#d9522beb2026-10-14
  • R25-11rel:R25-11#98f793582026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन ServiceValidation [SWS_DM_00772] Upstream: RS_AP_00137, RS_Diag_04199, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

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

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

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

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticServiceValidationInterface

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

Record
AUTOSAR/AP/record/SWS_DM_00772
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00772@rel:R25-11#9ffc03fa
Content hash
9ffc03fa
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00772
Status: valid/unmigrated Version: rel:R25-11#551e2d84 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00772@rel:R25-11#551e2d84
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#db1a817b2026-09-30
  • R19-11rel:R19-11#8ba9fe932026-10-14
  • R20-11rel:R20-11#12b557df2026-10-14
  • R21-11rel:R21-11#1f0371f52026-10-14
  • R22-11rel:R22-11#f49056232026-10-14
  • R23-11rel:R23-11#6c563b032026-10-14
  • R24-11rel:R24-11#f8f0ab112026-10-14
  • R25-11rel:R25-11#551e2d842026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन ServiceValidation [SWS_DM_01689] Upstream: RS_AP_00147

ServiceValidation (ServiceValidation &)=delete;

ServiceValidation shall be a single not copy-able instance.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01689
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01689@rel:R25-11#5c519e77
Content hash
5c519e77
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01689
Status: valid/unmigrated Version: rel:R25-11#d48785a6 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01689@rel:R25-11#d48785a6
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#614925122026-09-30
  • R23-11rel:R23-11#428fd8c92026-10-14
  • R24-11rel:R24-11#d48785a62026-10-14
  • R25-11rel:R25-11#d48785a62026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन ServiceValidation [SWS_DM_01690] Upstream: RS_AP_00147

ServiceValidation (ServiceValidation &&)=delete;

Move constructor of ServiceValidation.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01690
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01690@rel:R25-11#f1c9bcad
Content hash
f1c9bcad
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01690
Status: valid/unmigrated Version: rel:R25-11#e4fdb290 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01690@rel:R25-11#e4fdb290
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#52b974e02026-09-30
  • R23-11rel:R23-11#646ef28b2026-10-14
  • R24-11rel:R24-11#e4fdb2902026-10-14
  • R25-11rel:R25-11#e4fdb2902026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन StopOffer [SWS_DM_00777] Upstream: RS_Diag_04199

void StopOffer () noexcept;

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

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9db9d30bd6c8 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

क्लास ara::diag::ServiceValidation (हेडर फ़ाइल ara/diag/service_validation.h) का मेथड StopOffer() Diagnostic Management (DM) के आने वाले अनुरोध संदेशों को सर्विस सत्यापन इंस्टेंस तक अग्रेषित करने को निष्क्रिय करने के लिए कार्य करता है [SWS_DM_00777]। यह कॉल सिंक्रोनस रूप से निष्पादित होता है, कोई इनपुट पैरामीटर नहीं लेता है और कोई रिटर्न मान नहीं देता है [SWS_DM_00777]।

त्रुटि हैंडलिंग और समवर्तीता

फ़ंक्शन को noexcept के रूप में घोषित किया गया है और इसे एक्सेप्शन-सुरक्षित (exception safe) माना जाता है, जिससे निष्पादन के दौरान कोई C++ एक्सेप्शन उत्पन्न नहीं होता है [SWS_DM_00777]। इस कॉल के लिए त्रुटि प्रबंधन के लिए विशिष्ट त्रुटि कोड या फीडबैक परिभाषित नहीं हैं [SWS_DM_00777]।

कनकcurrency के संबंध में, मेथड को नॉन-थ्रेड-सेफ (not thread-safe) के रूप में निर्दिष्ट किया गया है [SWS_DM_00777]। व्याख्या: डेटा विसंगतियों से बचने के लिए कॉलिंग एप्लिकेशन को यह सुनिश्चित करना चाहिए कि StopOffer() के समान इंस्टेंस पर समवर्ती कॉलों को सिंक्रोनाइज़ किया जाए। प्रश्न Q-dde3c015d30a9db1 (खुला)

इंटरैक्शन

Offer() और StopOffer() के माध्यम से इंटरफ़ेस का प्रावधान और वापसी ara::com के ज्ञात सिमेंटिक्स पर आधारित है, लेकिन डायग्नोस्टिक्स के क्षेत्र में यह एक स्वतंत्र कार्यक्षमता का प्रतिनिधित्व करता है AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”। DM से अनुरोध अग्रेषण को निष्क्रिय करने का पैटर्न मानक में अन्य डायग्नोस्टिक हैंडलर के लिए सुसंगत रूप से उपयोग किया जाता है, जैसे कि प्रमाणीकरण सेवाओं [SWS_DM_01131], संचार नियंत्रण [SWS_DM_00810], डाउनलोड सेवाओं [SWS_DM_00793] और ECU रीसेट अनुरोधों [SWS_DM_01017] के लिए।

यह उपयोग संबंधी निर्देश AUTOSAR विनिर्देश R25-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

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

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00777
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00777@rel:R25-11#53577853
Content hash
53577853
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00777
Status: valid/unmigrated Version: rel:R25-11#809ce59e Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00777@rel:R25-11#809ce59e
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ecbd75f12026-09-30
  • R19-11rel:R19-11#988e9cc52026-10-14
  • R20-11rel:R20-11#556e7ce62026-10-14
  • R21-11rel:R21-11#ee572f802026-10-14
  • R22-11rel:R22-11#db0a3b992026-10-14
  • R23-11rel:R23-11#c1a089312026-10-14
  • R24-11rel:R24-11#1b0c9f462026-10-14
  • R25-11rel:R25-11#809ce59e2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन Validate [SWS_DM_00774] Upstream: RS_AP_00138, RS_Diag_04170, RS_Diag_04199, RS_AP_00119

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

Called for any request message.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: ef5e4c6cdd97 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

प्रत्येक आने वाले डायग्नोस्टिक अनुरोध संदेश के लिए वर्चुअल मेथड ara::diag::ServiceValidation::Validate को कॉल किया जाता है [SWS_DM_00774]। Diagnostic Server (DM) इसके माध्यम से ISO 14229-1 के अनुसार कॉन्फ़िगर की गई निर्माता-विशिष्ट [SWS_DM_01252] और आपूर्तिकर्ता-विशिष्ट सेवा जांच [SWS_DM_01253] निष्पादित करता है। निर्माता या आपूर्तिकर्ता जांच के रूप में वर्गीकरण कंस्ट्रक्टर [SWS_DM_00772] में मॉडलिंग पर निर्भर करता है।

फ़ंक्शन requestData के माध्यम से सर्विस आइडेंटिफ़ायर (SID) सहित डायग्नोस्टिक डेटा और metaInfo के माध्यम से मेटा-जानकारी प्राप्त करता है [SWS_DM_00774]। बफ़र requestData तब तक मान्य रहता है जब तक कि लौटाया गया ara::core::Future<void> संबंधित Promise के माध्यम से पूरा नहीं हो जाता या निष्पादन रद्द नहीं हो जाता [SWS_DM_00774]। यदि सत्यापन बिना किसी त्रुटि के सफलतापूर्वक पूरा हो जाता है, तो Diagnostic Server ISO 14229-1 के अनुसार अनुरोध की प्रोसेसिंग जारी रखता है [SWS_DM_01254]।

त्रुटि प्रबंधन और सीमा शर्तें

यदि जांच विफल हो जाती है, तो ISO 14229-1 के अनुसार DiagUdsNrcErrc का उपयोग करके एक उपयुक्त NRC लौटाया जाना चाहिए [SWS_DM_00774]। यदि Validate त्रुटि kNoProcessingNoResponse लौटाता है, तो Diagnostic Server का इंस्टेंस बिना किसी अन्य उत्तर के संदेश को त्याग देता है [SWS_DM_00860]।

कनकcurrency के संबंध में, Validate को एक्सेप्शन-सुरक्षित (exception safe), लेकिन नॉन-थ्रेड-सेफ (not thread-safe) के रूप में निर्दिष्ट किया गया है [SWS_DM_00774]। व्याख्या: चूंकि फ़ंक्शन थ्रेड-सुरक्षित नहीं है, Diagnostic Server द्वारा एक ही इंस्टेंस के कॉल को क्रमिक (serialize) किए जाने या समवर्ती एक्सेस को बाहर रखे जाने की संभावना है। प्रश्न Q-e150c15ad709602c (खुला) कॉल संदर्भ वास्तविक सेवा निष्पादन से पहले ISO 14229-1 के NRC अनुक्रम द्वारा निर्धारित किया जाता है [SWS_DM_00772]।

यह उपयोग संबंधी निर्देश AUTOSAR Adaptive विनिर्देश R25-11 के आधार पर स्वचालित रूप से तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

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

Parameter (in)

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

Rückgabewert

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

Fehler

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

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

Record
AUTOSAR/AP/record/SWS_DM_00774
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00774@rel:R25-11#0c51fc4e
Content hash
0c51fc4e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00774
Status: valid/unmigrated Version: rel:R25-11#697b56ca Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00774@rel:R25-11#697b56ca
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#97b264c92026-09-30
  • R19-11rel:R19-11#7333f5562026-10-14
  • R20-11rel:R20-11#5a132c282026-10-14
  • R21-11rel:R21-11#59f85a3b2026-10-14
  • R22-11rel:R22-11#43a758b42026-10-14
  • R23-11rel:R23-11#05e1af662026-10-14
  • R24-11rel:R24-11#8a3b62802026-10-14
  • R25-11rel:R25-11#697b56ca2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन operator= [SWS_DM_01687] Upstream: RS_AP_00147

ServiceValidation & operator= (ServiceValidation &)=delete;

ServiceValidation shall be a single not assignable instance.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01687
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01687@rel:R25-11#6163e222
Content hash
6163e222
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01687
Status: valid/unmigrated Version: rel:R25-11#4d0e8e99 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01687@rel:R25-11#4d0e8e99
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#cca774bf2026-09-30
  • R23-11rel:R23-11#b0b3cfec2026-10-14
  • R24-11rel:R24-11#4d0e8e992026-10-14
  • R25-11rel:R25-11#4d0e8e992026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन operator= [SWS_DM_01688] Upstream: RS_AP_00147

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

Move assignment operator of ServiceValidation.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01688
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01688@rel:R25-11#225d1c7c
Content hash
225d1c7c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01688
Status: valid/unmigrated Version: rel:R25-11#1b73524b Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01688@rel:R25-11#1b73524b
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#070b54192026-09-30
  • R23-11rel:R23-11#451c17372026-10-14
  • R24-11rel:R24-11#1b73524b2026-10-14
  • R25-11rel:R25-11#1b73524b2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन ~ServiceValidation [SWS_DM_00773] Upstream: RS_AP_00134, RS_Diag_04199

virtual ~ServiceValidation () noexcept;

Destructor of ServiceValidation .

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

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

Record
AUTOSAR/AP/record/SWS_DM_00773
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00773@rel:R25-11#ece442ac
Content hash
ece442ac
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00773
Status: valid/unmigrated Version: rel:R25-11#ef75a44c Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00773@rel:R25-11#ef75a44c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#6c06b72e2026-09-30
  • R19-11rel:R19-11#7fc7f8282026-10-14
  • R20-11rel:R20-11#c80e4a8e2026-10-14
  • R21-11rel:R21-11#c80e4a8e2026-10-14
  • R22-11rel:R22-11#af4050602026-10-14
  • R23-11rel:R23-11#bfb288b52026-10-14
  • R24-11rel:R24-11#ef75a44c2026-10-14
  • R25-11rel:R25-11#ef75a44c2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill