सर्वर-साइड पर एक सेवा के प्रावधान और आने वाले विधि कॉल्स के प्रसंस्करण के लिए कार्य करता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9f566e4418f7उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
सर्वर-साइड पर एक सेवा के प्रावधान और आने वाले विधि कॉल्स के प्रसंस्करण के लिए कार्य करता है।
वर्ग <SI-Namespace>::skeleton::<SI>Skeleton AUTOSAR Adaptive Platform में एक सेवा प्रदान करने के लिए सर्वर-साइड आधार के रूप में कार्य करता है और घटनाओं, क्षेत्रों और विधियों को मिडलवेयर से बांधता है। एक इंस्टेंस पहचानकर्ता के साथ इंस्टेंसिएशन के बाद, सेवा को नेटवर्क में उपभोक्ताओं के लिए OfferService() के माध्यम से उपलब्ध कराया जाता है और इसे StopOfferService() के साथ वापस लिया जा सकता है [SWS_CM_00101], [SWS_CM_00111]। कॉन्फ़िगर किए गए प्रोसेसिंग मोड के आधार पर, आने वाली विधि कॉल को या तो घटना-आधारित संसाधित किया जाता है या एप्लिकेशन द्वारा पोलिंग के माध्यम से सक्रिय रूप से शुरू किया जाना चाहिए। चूंकि कॉपी ऑपरेशन हटा दिए गए हैं, इंस्टेंस का स्वामित्व पूरी तरह से निर्माण करने वाले सेवा एप्लिकेशन के पास रहता है।
संदर्भ
टेम्पलेट वर्ग <SI-Namespace>::skeleton::<SI>Skeleton AUTOSAR Adaptive Platform पर एक Service Interface प्रदान करने के लिए सर्वर-साइड एंडपॉइंट बनाता है। एप्लिकेशन लॉजिक और संचार परत के बीच एक कड़ी के रूप में, स्केलेटन मिडलवेयर-विशिष्ट बाइंडिंग को समाहित करता है और टाइप किए गए इंटरफ़ेस तत्व प्रदान करता है। इसके लिए, वर्ग घटनाओं के लिए events::<Event>[SWS_CM_99557] के माध्यम से, क्षेत्रों के लिए fields::<Field>[SWS_CM_99558] के माध्यम से, ट्रिगर के लिए triggers::<Trigger>[SWS_CM_99559] के माध्यम से और विधि आउटपुट पैरामीटर के लिए <MethodOutArgType>[SWS_CM_11550] के माध्यम से सदस्य चर घोषित करता है। व्याख्या: वास्तविक सेवा कार्यक्षमता प्रदान करने के लिए, सेवा एप्लिकेशन आमतौर पर इंटरफ़ेस विधियों को लागू करने के लिए <SI>Skeleton से एक ठोस वर्ग प्राप्त करता है। प्रश्न Q-0cd48946e67c75b4 (खुला)
जीवनचक्र
स्केलेटन का इंस्टेंसिएशन इंस्टेंस असाइनमेंट और विधि कॉल के लिए प्रोसेसिंग मोड को निर्दिष्ट करके किया जाता है (ara::com::MethodCallProcessingMode, डिफ़ॉल्ट रूप से kEvent)। मान्य कंस्ट्रक्टर ara::core::InstanceSpecifier[SWS_CM_00152], एकल ara::com::InstanceIdentifier[SWS_CM_00130] या ara::com::InstanceIdentifierContainer[SWS_CM_00153] के माध्यम से पहचानकर्ताओं के एक सेट को स्वीकार करते हैं। चूंकि सेवा एंडपॉइंट की पहचान अद्वितीय है, इसलिए कॉपी कंस्ट्रक्टर [SWS_CM_00134] और कॉपी असाइनमेंट ऑपरेटर [SWS_CM_11548] स्पष्ट रूप से हटा दिए गए हैं (delete)। हालाँकि, संसाधनों को मूव कंस्ट्रक्टर [SWS_CM_00135] और मूव असाइनमेंट ऑपरेटर [SWS_CM_11549] के माध्यम से स्थानांतरित किया जा सकता है।
निर्माण के तुरंत बाद, सेवा इंस्टेंस स्थानीय रूप से बनाया जाता है, लेकिन अभी तक संचार नेटवर्क में दिखाई नहीं देता है। सेवा उपभोक्ताओं के लिए प्रकाशन केवल OfferService()[SWS_CM_00101], EXP_ARAComAPI पृ. 10 को कॉल करके होता है। यदि सेवा की पेशकश नहीं की जानी है, तो StopOfferService() प्रावधान को वापस ले लेता है [SWS_CM_00111], EXP_ARAComAPI पृ. 10। स्केलेटन को बाद में फिर से पेश किया जा सकता है या वर्चुअल डिस्ट्रक्टर ~<SI>Skeleton() के माध्यम से नष्ट किया जा सकता है [SWS_CM_11370]।
सेवा प्रदान करने की नियमित प्रक्रिया को निम्नलिखित चरणों में विभाजित किया गया है:
हैंडलर्स का कॉन्फ़िगरेशन और पंजीकरण: सेवा की पेशकश से पहले, एप्लिकेशन-विशिष्ट हैंडलर संग्रहीत किए जा सकते हैं। SetTransportFaultConditionHandler() के माध्यम से, एक ट्रांसपोर्ट त्रुटि हैंडलर या तो सीधे [SWS_CM_00093] या अतुल्यकालिक कार्यों के लिए एक समर्पित निष्पादक के साथ पंजीकृत होता है [SWS_CM_00094]; इसे आवश्यकतानुसार UnsetTransportFaultConditionHandler() के माध्यम से हटाया जा सकता है [SWS_CM_00095]। एंड-टू-एंड त्रुटि प्रबंधन को वर्चुअल विधि E2EErrorHandler() के माध्यम से अधिलेखित किया जा सकता है [SWS_CM_10470]।
सेवा की पेशकश: सेवा एप्लिकेशन OfferService() को कॉल करता है [SWS_CM_00101]। एक सफल कॉल एक खाली ara::core::Result<void> लौटाता है और नेटवर्क में सेवा इंस्टेंस को सक्रिय करता है।
आने वाले अनुरोधों का प्रसंस्करण: यदि स्केलेटन को MethodCallProcessingMode::kPoll मोड में त्वरित किया गया था, तो एप्लिकेशन को ProcessNextMethodCall() को कॉल करके लंबित क्लाइंट कॉल को सक्रिय रूप से निष्पादित करना होगा [SWS_CM_00199]। विधि कॉल इस थ्रेड के संदर्भ में निष्पादित की जाती है; रिटर्न मान संकेत देता है कि क्या आगे की कॉल लंबित हैं।
सेवा समाप्ति: इंस्टेंस के विनाश से पहले, प्रस्ताव को StopOfferService() के साथ समाप्त कर दिया जाता है [SWS_CM_00111]।
स्केलेटन वर्ग का उपयोग करते समय, विभिन्न त्रुटि परिदृश्यों और पूर्व शर्तों पर विचार किया जाना चाहिए:
निर्माण उल्लंघन: यदि ग्रांट प्रवर्तन द्वारा प्राधिकरण विफल हो जाता है, तो निर्माण InsufficientPermissionsViolation के साथ निरस्त हो जाता है [SWS_CM_00130], [SWS_CM_00152], [SWS_CM_00153]। एक अस्वीकार्य प्रसंस्करण मोड पास करने से WrongMethodCallProcessingModeViolation होता है। यदि InstanceSpecifier का उपयोग किया जाता है, तो मॉडल विसंगतियां या एकाधिक असाइनमेंट त्रुटियों InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation या InstanceSpecifierAlreadyInUseViolation का कारण बन सकते हैं [SWS_CM_00152]।
सेवा पेशकश की विफलता: यदि OfferService() विफल हो जाता है, तो ara::com::ComErrc से एक त्रुटि कोड लौटाया जाता है [SWS_CM_00101]: ComErrc::kFieldValueNotInitialized (एक फ़ील्ड पहले Update() के माध्यम से प्रारंभ नहीं किया गया था), ComErrc::kFieldSetHandlerNotSet (एक फ़ील्ड का आवश्यक सेट हैंडलर गायब है) या ComErrc::kCommunicationFailure (नेटवर्क बाइंडिंग की कनेक्शन या सुरक्षा त्रुटि)।
प्रसंस्करण मोड का उल्लंघन:ProcessNextMethodCall() का एक कॉल WrongMethodCallProcessingModeViolation को ट्रिगर करता है यदि स्केलेटन kPoll के लिए कॉन्फ़िगर नहीं किया गया था, बल्कि kEvent या kEventSingleThread के लिए कॉन्फ़िगर किया गया था [SWS_CM_00199]।
अमान्य त्रुटि हैंडलर: यदि SetTransportFaultConditionHandler() को एक गैर-मौजूद या खाली कॉल करने योग्य पास किया जाता है, तो इसका परिणाम InvalidHandlerViolation[SWS_CM_00093], [SWS_CM_00094] होता है।
E2E त्रुटियां और डेटा भ्रष्टाचार: गलत संदेश प्राप्त होने पर, E2EErrorHandler() को संबंधित ComE2EErrc के साथ कॉल किया जाता है [SWS_CM_10470]। यदि यह CRC त्रुटि है, तो DataID भी दूषित हो सकता है, ताकि एप्लिकेशन पास किए गए पहचानकर्ता को विश्वसनीय के रूप में वर्गीकृत न कर सके।
विनाश त्रुटि: यदि स्केलेटन के विनाश के समय अभी भी खुले डेटा नमूने मौजूद हैं, तो डिस्ट्रक्टर DanglingSamplesViolation के साथ निरस्त हो जाता है [SWS_CM_11370]।
यह गाइड पूरी तरह से AUTOSAR Adaptive Platform R25-11 के विनिर्देशन दिशानिर्देशों पर आधारित है।
Implementation may be overridden by the actual ServiceSkeleton implementation and it is not required to be reentrant. If the E2E error is a CRC error then some parts of the received message are faulty. If this part is the DataID then the E2E error handler is called with a faulty DataID. Consequently, in case of CRC error the server application can not rely on the DataID received by its error handler.
Allows the service to trigger the execution of the next service consumer method call at a specific point of time if the ara::com::MethodCallProcessingMode == kPoll The pending service method (see [SWS_CM_00191] or [SWS_CM_90434]) is executed in the context of the call to ProcessNextMethodCall().
Implementation may be overridden by the actual ServiceSkeleton implementation and it is not required to be reentrant. If the E2E error is a CRC error then some parts of the received message are faulty. If this part is the DataID then the E2E error handler is called with a faulty DataID. Consequently, in case of CRC error the server application can not rely on the DataID received by its error handler.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a9ce66768cdfउद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
मेथड OfferService() को स्केलेटन क्लास के एक इंस्टेंस पर कॉल किया जाता है ताकि सिस्टम में एक प्रदान की गई सेवा पेश की जा सके और Service Discovery के माध्यम से उपभोक्ताओं के लिए इसे खोजने योग्य बनाया जा सके [SWS_CM_00101], ARAComAPI §6.5 “Service Discovery”। जैसे ही सर्विस कार्यान्वयन पूरी तरह से इंस्टेंटिएट हो जाता है और परिचालन-तैयार स्थिति में आ जाता है, कॉल पैरामीटर-रहित और सिंक्रोनस रूप से होता है AUTOSAR_AP_EXP_ARAComAPI §5.4.4 “Offering Service instance”। फ़ंक्शन को noexcept के रूप में घोषित किया गया है और यह ara::core::Result<void> लौटाता है [SWS_CM_00101]।
मेथड्स, इवेंट्स, फ़ील्ड्स या ट्रिगर्स के माध्यम से कार्यात्मक संचार के लिए सेवा प्रस्तुत करना एक अनिवार्य पूर्वापेक्षा है AUTOSAR_AP_EXP_ARAComAPI §4.2 “Means of Communication”। उदाहरण के लिए, यदि बिना पूर्व प्रस्तुति के ट्रिगर भेजने का प्रयास किया जाता है, तो यह ComErrc::kServiceNotOffered के साथ विफल हो जाता है [SWS_CM_00721]। समवर्तीता के संबंध में लागू होता है: जैसे ही OfferService() कॉल किया जाता है, आने वाले मेथड कॉल पहले से ही सर्विस इंस्टेंस को डिलीवर किए जा सकते हैं - भले ही OfferService() का कॉल अभी वापस न आया हो AUTOSAR_AP_EXP_ARAComAPI §5.4.4 “Offering Service instance”।
यदि प्रस्तुति विफल हो जाती है, तो लौटाए गए ara::core::Result में ComErrc[SWS_CM_00101], [SWS_CM_10432] से संबंधित त्रुटि कोड शामिल होता है:
ComErrc::kFieldValueNotInitialized: कम से कम एक कॉन्फ़िगर किया गया फ़ील्ड मान प्रस्तुत करने से पहले इनिशियलाइज़ नहीं किया गया था [SWS_CM_00101]।
ComErrc::kFieldSetHandlerNotSet: सेटर समर्थन वाले फ़ील्ड के लिए RegisterSetHandler() के माध्यम से अभी तक कोई हैंडलर पंजीकृत नहीं किया गया है [SWS_CM_00101]।
ComErrc::kCommunicationFailure: नेटवर्क बाइंडिंग एक समाधान योग्य संचार त्रुटि या सुरक्षित संचार की विफलता की रिपोर्ट करती है [SWS_CM_00101]।
• If successful: an ara::core::Result containing a ara:: core::Result::value_type • If unsuccessful: an ara::core::Result containing an ara:: core::Result::error_type i.e. a corresponding ara:: com::ComErrc
Fehler
Fehlercode
Beschreibung
ComErrc::kFieldValueNotInitialized
rollback_semantics Field value has yet not been initialized via Update() (see [SWS_CM_00128]
ComErrc::kFieldSetHandlerNotSet
rollback_semantics Field SetHandler has not been registered via RegisterSet Handler()
ComErrc::kCommunicationFailure
rollback_semantics The network binding reported a recoverable communications error or a secure communication failure
Request a governed re-review of this record. The record is not changed immediately.
Allows the service to trigger the execution of the next service consumer method call at a specific point of time if the ara::com::MethodCallProcessingMode == kPoll The pending service method (see [SWS_CM_00191] or [SWS_CM_90434]) is executed in the context of the call to ProcessNextMethodCall().
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 34fad791a392उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
मेथड ProcessNextMethodCall() का उपयोग स्केलेटन में सर्विस प्रोवाइडरों द्वारा पोलिंग मोड में आने वाले मेथड कॉल्स को निर्धारणात्मक (deterministic) रूप से संसाधित करने के लिए किया जाता है [SWS_CM_00199]। इसका उपयोग केवल तभी किया जा सकता है जब स्केलेटन इंस्टेंस को मोड ara::com::MethodCallProcessingMode::kPoll के साथ कॉन्फ़िगर किया गया हो EXP ARAComAPI §2 “Polling”।
उपयोग और सिमेंटिक्स
यह फ़ंक्शन कोई पैरामीटर स्वीकार नहीं करता है और कॉलर के थ्रेड संदर्भ में एक लंबित मेथड कॉल अनुरोध को सिंक्रोनस रूप से निष्पादित करता है [SWS_CM_00199], [SWS_CM_00191]। यह विशेष रूप से रीयल-टाइम अनुप्रयोगों को उनके आवंटित समय बजट के भीतर अनियंत्रित थ्रेड संदर्भ परिवर्तनों के बिना सेवा अनुरोधों को संसाधित करने में सक्षम बनाता है EXP ARAComAPI §5.4 “ProcessNextMethodCall”। रिटर्न मान अनुरोध के परिणाम को इंगित करता है:
true: कतार में कम से कम एक लंबित अनुरोध था और उसे संसाधित किया गया [SWS_CM_00199]।
फ़ंक्शन को noexcept और exception safe के रूप में निर्दिष्ट किया गया है [SWS_CM_00199]। kEvent या kEventSingleThread के साथ इंस्टेंटिएट किए गए स्केलेटन पर एक कॉल एक उल्लंघन (WrongMethodCallProcessingModeViolation) का प्रतिनिधित्व करता है [SWS_CM_00199]। Interpretation: चूँकि नियमित C++ अपवाद noexcept द्वारा बहिष्कृत हैं, प्लेटफ़ॉर्म पक्ष पर ऐसे उल्लंघन को संभवतः एक गंभीर रनटाइम त्रुटि माना जाएगा। प्रश्न Q-61661dbd6cc37bc7 (खुला)
यह पाठ स्वचालित रूप से जनरेट किया गया था। सभी विवरण AUTOSAR विनिर्देश पर आधारित हैं।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 5601f5155355उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
उपयोग
फ़ंक्शन SetTransportFaultConditionHandler स्केलेटन क्लास के नेमस्पेस (<SI-Namespace>::skeleton::<SI>) [SWS_CM_00093] में ara::com::e2e::TransportFaultConditionHandler प्रकार के कॉलबैक को पंजीकृत करने का कार्य करता है। इस हैंडलर के माध्यम से संबंधित सर्विस इंस्टेंस के सभी तरीकों के लिए ट्रांसपोर्ट त्रुटियों की सूचना दी जाती है AUTOSAR_AP_SWS_CommunicationManagement §7.4.1 “End-to-end communication protection for SOMEIP”। फ़ंक्शन कॉल करने योग्य ऑब्जेक्ट handler को स्वीकार करता है और इसका कोई रिटर्न मान नहीं है (void) [SWS_CM_00093]।
त्रुटि प्रबंधन
यह ऑपरेशन noexcept के साथ घोषित है और अपवाद-सुरक्षित (exception safe) [SWS_CM_00093] है। यदि पास की गई कॉल करने योग्य इकाई (callable) मौजूद नहीं है या null है, तो एक InvalidHandlerViolation ट्रिगर की जाती है [SWS_CM_00093]। त्रुटि की स्थिति में, कॉन्फ़िगर किया गया हैंडलर उत्पन्न हुई ट्रांसपोर्ट गड़बड़ियों की रिपोर्ट करता है, जैसे कि TransportFaultCondition::kSampleRejected, जब संसाधनों की कमी या ट्रांसपोर्ट लेयर में डेटा करप्शन के कारण अनुरोध निरस्त कर दिए जाते हैं AUTOSAR_AP_SWS_CommunicationManagement §7.4.2.3 “Methods”।
समवर्तीता और प्रतिबंध
Interpretation: चूंकि यह बेस इंटरफ़ेस कोई निष्पादन संदर्भ (execution context) स्वीकार नहीं करता है, इसलिए संभवतः कॉलबैक को Communication Management के आंतरिक थ्रेड से सिंक्रोनस रूप से कॉल किया जाएगा। प्रश्न Q-e4007fa72de6aa12 (खुला) यदि हैंडलर का निष्पादन किसी निर्धारित थ्रेड पूल या वर्कर में किया जाना है, तो ExecutorT&& executor वाले ओवरलोड का उपयोग किया जाना चाहिए [SWS_CM_00094]।
इंटरैक्शन
यह पंजीकरण त्रुटि प्रबंधन को एक Skeleton इंस्टेंस [SWS_CM_00093] के सभी मेथड्स से केंद्रीय रूप से बांधता है। यह ara::com के उच्च-स्तरीय त्रुटि प्रबंधन में समाहित होता है:
जबकि Skeleton मेथड्स इस हैंडलर के माध्यम से ट्रांसपोर्ट त्रुटियों की रिपोर्ट करते हैं, वहीं क्लाइंट मेथड्स अपने परिणामी ara::core::Future के साथ ComErrc::kCommunicationFailure के माध्यम से ट्रांसपोर्ट विफलताओं को एसिंक्रोनस रूप से संकेतित करते हैं [SWS_CM_00090]।
Skeleton स्तर पर फ़ील्ड ऑपरेशन्स (Get/Set) के लिए अलग इंटरफ़ेस [SWS_CM_00096] मौजूद हैं।
Execution Context overload for SetTransportFaultConditionHandler for all methods in a given Skeleton.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9140fdcb385aउद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
Skeleton क्लास के नेमस्पेस में टेम्पलेट फ़ंक्शन SetTransportFaultConditionHandler किसी सर्विस इंस्टेंस [SWS_CM_00094] की सभी विधियों की ट्रांसपोर्ट त्रुटियों के लिए एक त्रुटि हैंडलर के पंजीकरण का कार्य करता है। यह पैरामीटर रहित बेस फ़ंक्शन [SWS_CM_00093] को एक निष्पादन संदर्भ के साथ विस्तारित करता है:
कॉल और पैरामीटर: प्रकार ara::com::e2e::TransportFaultConditionHandler का एक Callable handler और साथ ही एक यूनिवर्सल संदर्भ executor[SWS_CM_00094] पास किए जाते हैं। इस Executor ऑब्जेक्ट में किसी भी एसिंक्रोनस गणना और कॉलबैक निष्पादन को शुरू किया जाना चाहिए। फ़ंक्शन का कोई रिटर्न मान नहीं है।
त्रुटि प्रबंधन: इंटरफ़ेस को noexcept के रूप में घोषित किया गया है और अपवाद-सुरक्षित के रूप में निर्दिष्ट किया गया है [SWS_CM_00094]। यदि पास किया गया Callable मौजूद नहीं है या यह null है, तो एक InvalidHandlerViolation उपस्थित है [SWS_CM_00094]।
पारस्परिक क्रिया: वैधता का दायरा Skeleton की सभी विधियों [SWS_CM_00094] को कवर करता है, जबकि Field-Get और Set ऑपरेशनों के लिए अलग पंजीकरण फ़ंक्शंस उपलब्ध हैं ([SWS_CM_00096], [SWS_CM_00097])। DDS नेटवर्क बाइंडिंग में कॉन्फ़िगर किया गया हैंडलर ट्रांसपोर्ट त्रुटियों जैसे TransportFaultCondition::kSampleRejected[SWS_CM_00216] की रिपोर्ट करता है; इसके विपरीत क्लाइंट साइड पर, ऐसी त्रुटियों को परिणाम फ्यूचर्स में ComErrc::kCommunicationFailure के माध्यम से संकेतित किया जाता है [SWS_CM_00090]।
समवर्तीता: Interpretation: Executor का स्थानांतरण त्रुटि प्रबंधन को संचार परत के आंतरिक संदर्भ से अलग (decouple) करता है; संभवतः Skeleton के इनिशियलाइज़ेशन के समय पहली विधि कॉल्स आने से पहले पंजीकरण जल्दी किया जाना चाहिए। प्रश्न Q-e56b2a1928cf32ad (खुला)
यह उपयोग नोट AUTOSAR विनिर्देश के आधार पर स्वचालित रूप से तैयार किया गया था।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: ee0471348c1bउद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
कंस्ट्रक्टर [SWS_CM_00130] एक ठोस ara::com::InstanceIdentifier के आधार पर एक सर्विस स्केलेटन को इंस्टेंटिएट करता है। स्केलेटन एप्लिकेशन-साइड सर्विस कार्यान्वयन को संचार प्रबंधन की ट्रांसपोर्ट लेयर से जोड़ता है ताकि वितरित सर्विस उपभोक्ता इसे एक्सेस कर सकें (ARAComAPI §5.1 “Proxy Skeleton Pattern”)।
पैरामीटर mode के माध्यम से यह निर्दिष्ट किया जाता है कि आने वाले मेथड कॉलों को कैसे संसाधित किया जाएगा। डिफ़ॉल्ट मान के रूप में इवेंट-आधारित मोड ara::com::MethodCallProcessingMode::kEvent पूर्वनिर्धारित है [SWS_CM_00130]। यदि इसके बजाय पोलिंग-आधारित मोड चुना जाता है, तो लंबित मेथड कॉलों का निष्पादन ProcessNextMethodCall()[SWS_CM_00199] के कॉल संदर्भ में सिंक्रोनस रूप से होता है।
त्रुटि प्रबंधन और सीमा शर्तें
कंस्ट्रक्टर फ़ंक्शन noexcept के साथ घोषित है और कोई C++ अपवाद नहीं फेंकता है [SWS_CM_00130]। संभावित उल्लंघनों को रनटाइम सिस्टम के माध्यम से संकेतित किया जाता है: यदि ग्रांट-प्रवर्तन द्वारा निर्माण से इनकार कर दिया जाता है, तो InsufficientPermissionsViolation मौजूद होता है; अमान्य प्रसंस्करण मोड पास करने पर WrongMethodCallProcessingModeViolation[SWS_CM_00130] उत्पन्न होता है। व्याख्या: प्रसंस्करण मोड का सत्यापन संभवतः कंस्ट्रक्टर निष्पादन के दौरान तुरंत होता है। प्रश्न Q-80e02c0079757082 (खुला)
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9052bf72bafdउद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
कंस्ट्रक्टर किसी इंस्टेंस पहचानकर्ता [SWS_CM_00152] के आधार पर एक सर्विस स्केलेटन को इंस्टैंशिएट करता है। यह एक कंक्रीट सर्विस कार्यान्वयन को Communication Management की ट्रांसपोर्ट लेयर से जोड़ने का काम करता है। पैरामीटर के रूप में एक ara::core::InstanceSpecifier और वैकल्पिक रूप से प्रोसेसिंग मोड ara::com::MethodCallProcessingMode पास किया जाता है, जो डिफ़ॉल्ट रूप से kEvent पर प्री-सेट होता है [SWS_CM_00152]।
त्रुटि प्रबंधन और एक्सेप्शन व्यवहार के संबंध में, कंस्ट्रक्टर को noexcept और exception safe के रूप में घोषित किया गया है [SWS_CM_00152]। त्रुटिपूर्ण कॉन्फ़िगरेशन या मॉडलिंग विचलनों के मामले में, निम्नलिखित Violations निर्दिष्ट हैं:
InstanceSpecifierMappingIntegrityViolation, यदि निष्पादन संदर्भ में पहचानकर्ता को रिज़ॉल्व नहीं किया जा सकता है या वह PortPrototype को संदर्भित नहीं करता है [SWS_CM_00152]।
PortInterfaceMappingViolation और ProcessMappingViolation, यदि मैपिंग प्रकार और इंटरफ़ेस प्रकार मेल नहीं खाते हैं [SWS_CM_00152]।
InstanceSpecifierAlreadyInUseViolation, यदि InstanceSpecifier पहले से ही उपयोग में है [SWS_CM_00152]।
WrongMethodCallProcessingModeViolation और साथ ही अपर्याप्त अधिकारों के मामले में InsufficientPermissionsViolation[SWS_CM_00152]।
व्याख्या: चूँकि कंस्ट्रक्टर को noexcept के रूप में घोषित किया गया है, निर्दिष्ट Violations को रनटाइम पर फेंके गए C++ एक्सेप्शन के रूप में प्रसारित नहीं किया जाना चाहिए, बल्कि प्लेटफ़ॉर्म-पक्षीय जाँचों या ग्रांट प्रवर्तन (grant enforcement) द्वारा इंटरसेप्ट किया जाना चाहिए। प्रश्न Q-f1a1a0baeb56e482 (खुला)
जीवन चक्र और समवर्तीता के लिए, कॉपी कंस्ट्रक्टर हटा दिया गया है [SWS_CM_00134], जबकि मूव कंस्ट्रक्टर उपलब्ध है [SWS_CM_00135]। रिलीज़ वर्चुअल डिस्ट्रक्टर [SWS_CM_11370] के माध्यम से होती है। सफल निर्माण के बाद, सर्विस को आमतौर पर नेटवर्क में [SWS_CM_00101] (OfferService) के माध्यम से पेश किया जाता है। यदि प्रोसेसिंग मोड के रूप में kPoll चुना गया था, तो एप्लिकेशन को सर्विस मेथड्स [SWS_CM_00191] के आने वाले कॉल्स को [SWS_CM_00199] (ProcessNextMethodCall) के माध्यम से स्पष्ट रूप से प्रोसेस करना होगा।
यह उपयोग नोट R25-11 के लिए AUTOSAR विनिर्देशों के आधार पर स्वचालित रूप से जनरेट किया गया था।
InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of the executable, or it refers to a model element other than tegrityViolation a PortPrototype. PortInterfaceMap- The type of mapping does not match the expected type of Port pingViolation Interface: ServiceInterface referenced by a ServiceInstanceToPortPrototypeMapping. ProcessMappingVio- The type of mapping does not match the expected type of Port lation Interface
InstanceSpecifier- The constructor was called with an Instance Specifier already AlreadyInUseViola- tion WrongMethodCall- Wrong processing mode passed to constructor ProcessingModeVio- lation InsufficientPer- Refused by Grant Enforcement missionsViolation
Parameter (in)
Parameter
Beschreibung
instanceSpec
The specifier of a specific instance of a service.
mode
Mode (as per [SWS_CM_00301]) for processing incoming service method invocations. Default argument is kEvent.
Request a governed re-review of this record. The record is not changed immediately.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: cadca550210aउद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
उपयोग
कंस्ट्रक्टर इंस्टेंस पहचानकर्ताओं (instanceIDs) के एक कंटेनर के आधार पर एक सर्विस स्केलेटन को इंस्टैंशिएट करता है और सर्विस कार्यान्वयन को सर्वर साइड पर Communication Management की ट्रांसपोर्ट लेयर से जोड़ता है [SWS_CM_00153], ARAComAPI §5.1 “Proxy Skeleton Pattern”। पैरामीटर mode के माध्यम से यह निर्धारित किया जाता है कि आने वाली मेथड कॉल्स को कैसे प्रोसेस किया जाएगा; डिफ़ॉल्ट रूप से, निष्पादन kEvent[SWS_CM_00153] के माध्यम से इवेंट-चालित होता है। वैकल्पिक रूप से, एकल इंस्टेंस पहचानकर्ताओं [SWS_CM_00130] या इंस्टेंस विनिर्दिष्टकर्ताओं [SWS_CM_00152] के लिए कंस्ट्रक्टर उपलब्ध हैं।
त्रुटि हैंडलिंग और समवर्तीता
फ़ंक्शन को noexcept के रूप में घोषित किया गया है और अपवाद-सुरक्षित (exception safe) निर्दिष्ट किया गया है [SWS_CM_00153]। निर्माण के समय संभावित उल्लंघन एक अमान्य प्रोसेसिंग मोड पास करने पर WrongMethodCallProcessingModeViolation हैं और अनुमति जांच (Grant Enforcement) विफल होने पर InsufficientPermissionsViolation हैं [SWS_CM_00153]।
यदि mode के लिए पोलिंग मॉडल (kPoll) कॉन्फ़िगर किया गया है, तो सर्वर एप्लिकेशन को ProcessNextMethodCall() को कॉल करके अपने स्वयं के थ्रेड संदर्भ में लंबित मेथड कॉल्स को समकालिक रूप से संसाधित करना होगा [SWS_CM_00199]। स्केलेटन क्लास का कॉपी कंस्ट्रक्टर हटा दिया गया है (delete) [SWS_CM_00134]; इसके विपरीत मूव कंस्ट्रक्टर के माध्यम से स्थानांतरण समर्थित हैं [SWS_CM_00135]।
इंटरैक्शन
सफल इंस्टैंशिएशन के बाद, सेवा को दूरस्थ या स्थानीय उपभोक्ताओं के लिए OfferService() के माध्यम से उपलब्ध कराया जाता है [SWS_CM_00101], ARAComAPI §6.5 “Service Discovery”। डिस्ट्रक्टर [SWS_CM_11370] का उपयोग करके स्केलेटन को नष्ट करने से पहले, StopOfferService() के माध्यम से प्रावधान को समाप्त कर दिया जाना चाहिए [SWS_CM_00111]। आने वाली मेथड कॉल्स सर्वर साइड पर प्रत्येक में एक ara::core::Future लौटाती हैं [SWS_CM_00191]।
यह उपयोग नोट AUTOSAR R25-11 विनिर्देश के आधार पर स्वचालित रूप से तैयार किया गया था।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 5ee7b8c6b839उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
वर्चुअल डिस्ट्रक्टर ~<SI>Skeleton()[SWS_CM_11370] सर्विस स्केलेटन इंस्टेंस के जीवन चक्र को समाप्त करता है। सर्विस स्केलेटन, एक जनरेट किए गए आर्टिफैक्ट के रूप में, कंक्रीट सर्विस कार्यान्वयन को Communication Management की ट्रांसपोर्ट लेयर से जोड़ता है, जिससे सर्विस उपभोक्ता पेश किए गए मेथड्स और कार्यात्मकताओं तक पहुँच सकते हैं (ARAComAPI §5.1 “Proxy Skeleton Pattern”)।
व्युत्पन्न कार्यान्वयन वर्ग के विनाश के दौरान निष्कासन सिंक्रोनस रूप से होता है। मेथड कोई पैरामीटर स्वीकार नहीं करता है और कोई रिटर्न मान घोषित नहीं करता है। स्केलेटन के कंस्ट्रक्टर्स जैसे [SWS_CM_00130] या [SWS_CM_00152] के विपरीत, डिस्ट्रक्टर को विनिर्देश में स्पष्ट रूप से not exception safe के रूप में वर्गीकृत किया गया है [SWS_CM_11370]।
त्रुटि हैंडलिंग और सीमा स्थितियों के संबंध में, यह निर्धारित किया गया है कि पूर्व शर्त का उल्लंघन होने पर एक DanglingSamplesViolation हो सकता है [SWS_CM_11370]। यदि सर्विस को पहले OfferService()[SWS_CM_00101] के माध्यम से बाहरी रूप से पेश किया गया था (ARAComAPI §6.5 “Service Discovery”), तो चालू संचार संबंधों को सुचारू रूप से समाप्त करने के लिए डिस्ट्रक्टर कॉल से पहले संभवतः मेथड StopOfferService()[SWS_CM_00111] को कॉल किया जाना चाहिए। प्रश्न Q-c430a7f0fc838eba (खुला)
स्केलेटन के लिए कॉपी कंस्ट्रक्टर हटा दिया गया है [SWS_CM_00134], जबकि मूव ऑपरेशंस समर्थित हैं [SWS_CM_00135]। चालू प्रसंस्करण संचालन — जैसे ProcessNextMethodCall()[SWS_CM_00199] के माध्यम से लंबित कॉल्स का निष्पादन — विनाश शुरू होने से पहले पूरा होना चाहिए।
यह पाठ AUTOSAR विनिर्देश R25-11 के आधार पर एक AI द्वारा जनरेट किया गया था।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: f2e7dd4743d8उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
विधि [SWS_CM_00111]ara::com में सेवा प्रदाता अनुप्रयोग द्वारा सेवा इंस्टेंस की पेशकश को समाप्त करती है। कॉल नेमस्पेस <SI-Namespace>::skeleton::<SI> में कंक्रीट स्केलेटन इंस्टेंस पर पैरामीटर रहित तरीके से की जाती है और कोई रिटर्न मान नहीं देती है (EXP_ARAComAPI §5.4.1 “Skeleton Class API’s”)।
उपयोग और रनटाइम व्यवहार पर निम्नलिखित शर्तें लागू होती हैं:
कॉल संदर्भ और पूर्व शर्त: विधि को तब कॉल किया जाता है जब पहले OfferService() के माध्यम से प्रदान किया गया इंस्टेंस - उदाहरण के लिए स्थिति परिवर्तनों के परिणामस्वरूप - अब उपलब्ध नहीं होना चाहिए (EXP_ARAComAPI §5.4.4 “Offering Service instance”)।
प्रतिबद्धता (Contract): जैसे ही StopOfferService() वापस लौटता है, अनुबंध के अनुसार इस सेवा इंस्टेंस पर आगे कोई विधि कॉल अग्रेषित नहीं की जाती है (EXP_ARAComAPI §5.4.4 “Offering Service instance”)।
जीवनचक्र और डिस्ट्रक्टर: यदि स्केलेटन वर्ग के डिस्ट्रक्टर को कॉल करते समय कोई सेवा इंस्टेंस अभी भी सक्रिय रूप से पेश किया जा रहा है, तो डिस्ट्रक्टर आंतरिक रूप से अनिवार्य रूप से StopOfferService() निष्पादित करता है (EXP_ARAComAPI §5.4.4 “Offering Service instance”)।
फ़ंक्शन को noexcept के रूप में घोषित किया गया है और इसे अपवाद-सुरक्षित ([SWS_CM_00111]) माना जाता है। यह न तो अपवादों के माध्यम से और न ही त्रुटि संदेशों या रिटर्न कोड के माध्यम से त्रुटियों का संकेत देता है।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल