DEENESPTFRRUARHIKOZHNL

क्लास ara::com::ComException

[SWS_CM_11327] Upstream: RS_AP_00130, RS_AP_00122, RS_AP_00127

class ComException final :            public ara::core::Exception {...};

Defines a class for exceptions to be thrown by the API.

Header-Datei#include "ara/com/com_error_domain.h"
Forwarding-Header#include "ara/com/com_fwd.h"
Scopenamespace ara::com
Basisklasse(n)ara::core::Exception

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

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

त्रुटि कोड के माध्यम से संचार प्रबंधन की त्रुटियों को एनकैप्सुलेट करने और रिपोर्ट करने के लिए API अपवाद वर्ग के रूप में कार्य करता है।

वर्ग ara::com::ComException AUTOSAR Adaptive में संचार API [SWS_CM_11327] के कॉल के दौरान त्रुटियों का संकेत देने के लिए एक केंद्रीय अपवाद वर्ग के रूप में कार्य करता है। यह एक ara::core::ErrorCode को एनकैप्सुलेट करता है और विफल ऑपरेशनों पर इंस्टैंसिएट और थ्रो किया जाता है, जहां इसका कंस्ट्रक्टर अपवाद-सुरक्षित और नॉन-थ्रोइंग के रूप में परिभाषित होता है [SWS_CM_11328]। यदि कंपाइलर टूलचेन में C++ अपवाद अक्षम हैं, तो संबंधित थ्रोइंग API ओवरलोड्स पूरी तरह से ओवरलोड रिज़ॉल्यूशन से बाहर हो जाते हैं। कॉल करने वाले शामिल त्रुटि कोड का विश्लेषण करने और त्रुटि प्रबंधन उपाय शुरू करने के लिए अपवाद ऑब्जेक्ट को पकड़ते हैं (catch)।

संदर्भ

वर्ग ara::com::ComException AUTOSAR Adaptive Platform के मॉड्यूल com में संचार API [SWS_CM_11327] के कॉल के दौरान त्रुटियों का संकेत देने के लिए एक विशेष अपवाद वर्ग के रूप में कार्य करता है। यह बेस क्लास ara::core::Exception से सार्वजनिक रूप से प्राप्त होता है और final के रूप में घोषित किया गया है। यह Adaptive Platform के व्यापक त्रुटि प्रबंधन आर्किटेक्चर में इसके प्रत्यक्ष एकीकरण को स्पष्ट करता है। final के रूप में चिह्नित होने के कारण, यह वर्ग एक सीलबंद अपवाद प्रकार के रूप में डिज़ाइन किया गया प्रतीत होता है, जो आगे के व्युत्पत्ति पदानुक्रम (derivation hierarchy) के लिए अभिप्रेत नहीं है। प्रश्न Q-2454b5b73295287b (खुला)

ara::com::ComException का प्राथमिक कार्य उत्पन्न त्रुटि स्थिति को एक ara::core::ErrorCode के रूप में एनकैप्सुलेट करना और C++ अपवाद तंत्र के माध्यम से कॉलिंग परतों को प्रेषित करना है [SWS_CM_11328]। घोषणा और परिभाषा हेडर #include "ara/com/com_error_domain.h" के माध्यम से प्रदान की जाती है [SWS_CM_11328]। केंद्रीय संपर्क भागीदारों के रूप में उपयोग करने वाला अनुप्रयोग सॉफ़्टवेयर, संचार प्रबंधन के आंतरिक सेवा और API फ़ंक्शन, साथ ही त्रुटि डोमेन ara::core::ErrorCode के प्रकार कार्य करते हैं।

जीवनचक्र

किसी ara::com::ComException ऑब्जेक्ट का जीवन चक्र संचार प्रबंधन के एक API फ़ंक्शन के कार्यान्वयन में तब शुरू होता है, जब कोई ऑपरेशन विफल हो जाता है और अपवाद को इंस्टैंसिएट तथा ट्रिगर किया जाता है AUTOSAR_AP_SWS_CommunicationManagement §8.12.5 “Class: ComException”। इसका निर्माण स्पष्ट कंस्ट्रक्टर के माध्यम से होता है, जो ट्रिगर करने वाले ara::core::ErrorCode ऑब्जेक्ट को स्वीकार करता है [SWS_CM_11328]।

यह कंस्ट्रक्टर noexcept के साथ घोषित है और इसमें exception safe गुण है [SWS_CM_11328]। यह सुनिश्चित करता है कि स्वयं अपवाद ऑब्जेक्ट के निर्माण के दौरान कोई अन्य अपवाद उत्पन्न नहीं हो सकता है। throw के माध्यम से फेंकने (throw) के बाद, ऑब्जेक्ट को स्टैक अनवाइंडिंग के हिस्से के रूप में ले जाया जाता है, जब तक कि यह कॉलिंग लेयर के एक उपयुक्त catch ब्लॉक में बाउंड न हो जाए। स्वामित्व के संबंध में, हैंडलिंग ब्लॉक से बाहर निकलने के बाद इंस्टेंस स्वचालित रूप से स्टैक पर नष्ट हो जाता है। क्लास में स्टेट मशीन के अर्थ में आंतरिक स्थिति संक्रमण नहीं होते हैं; त्रुटि कोड के साथ इनिशियलाइज़ेशन के बाद इसकी स्थिति अपरिवर्तनीय रहती है।

उपयोग पथ

विशिष्ट उपयोग पथ त्रुटि का पता लगाने, अपवाद ट्रिगर करने और बाद के उपचार के क्रम का वर्णन करता है:

  1. एक अनुप्रयोग फ़ंक्शन ara::com इंटरफ़ेस के एक ऑपरेशन को कॉल करता है।
  2. यदि प्रसंस्करण के दौरान कोई त्रुटि उत्पन्न होती है, तो API कार्यान्वयन संबंधित errorCode से ara::com::ComException का एक नया इंस्टेंस बनाता है और इसे फेंकता (throw) है AUTOSAR_AP_SWS_CommunicationManagement §8.12.5 “Class: ComException”।
  3. अनुप्रयोग एक उपयुक्त ब्लॉक में अपवाद को पकड़ता है। कॉपी संचालन से बचने के लिए अनुप्रयोग पक्ष पर पकड़ना संभवतः निरंतर संदर्भ (const ara::com::ComException&) द्वारा किया जाता है। प्रश्न Q-5270e026eeac8be7 (खुला)
  4. बेस क्लास के इंटरफ़ेस के माध्यम से, कॉलर निहित ara::core::ErrorCode तक पहुँचता है और नैदानिक या क्षतिपूर्ति कदम निष्पादित करता है [SWS_CM_11328]।
ComException के साथ अपवाद प्रबंधन का प्रवाहएप्लिकेशनara::com-LaufzeitComExceptionAPI कॉल निष्पादित करें()Kommunikationsfehler erkanntComException(errorCode) instanziierenthrow ComExceptioncatch (const ara::com::ComException&) और त्रुटि कोड का मूल्यांकन करें

अनुक्रम आरेख: ara::com::ComException की त्रुटि पहचान, इंस्टेंसिएशन और हैंडलिंग का क्रम। स्रोत: [SWS_CM_11327], [SWS_CM_11328], AUTOSAR_AP_SWS_CommunicationManagement §8.12.5 “Class: ComException”।

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

त्रुटि प्रबंधन और टूलचेन कॉन्फ़िगरेशन के संदर्भ में, निम्नलिखित स्थितियाँ और सीमांत मामले लागू होते हैं:

  • अक्षम C++ अपवाद: यदि कंपाइलर टूलचेन में C++ अपवाद अक्षम हैं, तो ara::com::ComException बनाने और फेंकने वाले API फ़ंक्शन [SWS_CORE_10304] के अनुसार ओवरलोड रिज़ॉल्यूशन में भाग नहीं लेते हैं AUTOSAR_AP_SWS_CommunicationManagement §8.12.5 “Class: ComException”। इस स्थिति में, त्रुटि-हैंडलिंग सॉफ़्टवेयर वैकल्पिक रिटर्न तंत्र का सहारा लेता है।
  • कंस्ट्रक्टर प्रकार-सुरक्षा: चूंकि कंस्ट्रक्टर को explicit के रूप में घोषित किया गया है, इसलिए ara::core::ErrorCode को पास करते समय अंतर्निहित प्रकार रूपांतरण को रोक दिया जाता है [SWS_CM_11328]।
  • पदानुक्रमित कैप्चर: चूंकि ara::com::ComException, ara::core::Exception से प्राप्त होता है, इसलिए कॉलर अपवादों को विशेष रूप से ara::com::ComException के रूप में या सामान्य रूप से बेस क्लास के हैंडलर के माध्यम से संभाल सकते हैं।

यह मार्गदर्शिका AUTOSAR Adaptive R25-11 विनिर्देश पर आधारित है। सभी विवरण और संदर्भ विशेष रूप से प्रदान किए गए विनिर्देश उद्धरणों पर आधारित हैं।

UML क्लास आरेख

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

G nara__com__ComException152 ComException + ComException() nara__core__Exception792 Exception nara__com__ComException152->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

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

ComException फ़ंक्शन

Constructs a new ara::com::ComException containing an ara::core::ErrorCode

explicit ComException (ara::core::ErrorCode errorCode) noexcept;

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

फ़ंक्शन ComException [SWS_CM_11328] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

explicit ComException (ara::core::ErrorCode errorCode) noexcept;

Constructs a new ara::com::ComException containing an ara::core::ErrorCode

Header-Datei#include "ara/com/com_error_domain.h"
Scopeclass ara::com::ComException
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code.

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

Record
AUTOSAR/AP/record/SWS_CM_11328
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_11328@rel:R25-11#11d2b15f
Content hash
11d2b15f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_11328
Status: valid/unmigrated Version: rel:R25-11#5e7d893a Versionshistorie & Revisions (1 transition, 7 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_CM_11328@rel:R25-11#5e7d893a
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#ffcd75022026-09-30
  • R20-11rel:R20-11#4a6338102026-10-14
  • R21-11rel:R21-11#4a6338102026-10-14
  • R22-11rel:R22-11#17139dec2026-10-14
  • R23-11rel:R23-11#41e9e0262026-10-14
  • R24-11rel:R24-11#94963f6e2026-10-14
  • R25-11rel:R25-11#5e7d893a2026-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