Service proxy method class, one for each ClientServerOperation ( ClientServerOperation.fireAndForget ==FALSE) defined in the ServiceInterface in the role method.
रिटर्न मान के साथ सर्विस विधियों के एसिंक्रोनस कॉल के साथ-साथ एंड-टू-एंड स्थिति की जाँच को सक्षम बनाता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 90f1e995b658उद्गमखुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
रिटर्न मान के साथ सर्विस विधियों के एसिंक्रोनस कॉल के साथ-साथ एंड-टू-एंड स्थिति की जाँच को सक्षम बनाता है।
प्रॉक्सी मेथड क्लास <SI-Namespace>::proxy::methods::<Method> क्लाइंट एप्लिकेशन को ServiceInterface में परिभाषित क्लाइंट-सर्वर ऑपरेशन्स के लिए रिटर्न वैल्यू के साथ मेथड कॉल निष्पादित करने में सक्षम बनाती है [SWS_CM_00196]। यह कॉल operator() के माध्यम से गैर-अवरोधक (non-blocking) रूप से की जाती है, जो लचीली सिंक्रोनस या एसिंक्रोनस परिणाम क्वेरी के लिए तुरंत एक ara::core::Future लौटाता है [SWS_CM_00196]। इसके अतिरिक्त, GetE2EStateMachineState() संबंधित एंड-टू-एंड स्टेट मशीन की सुरक्षा स्थिति को पढ़ने की अनुमति देता है [SWS_CM_00148]। चूँकि ऑपरेशन्स अपवाद-सुरक्षित (exception-safe) निर्दिष्ट हैं, ट्रांसमिशन और रनटाइम त्रुटियों की रिपोर्ट मानकीकृत एरर कोड के साथ Future के माध्यम से की जाती है।
संदर्भ
क्लास <SI-Namespace>::proxy::methods::<Method> AUTOSAR Adaptive Communication Management के भीतर सिंक्रोनस और एसिंक्रोनस मेथड कॉल्स के लिए क्लाइंट-साइड इंटरफ़ेस का प्रतिनिधित्व करती है। ServiceInterface में घोषित प्रत्येक क्लाइंट-सर्वर ऑपरेशन के लिए, जिसमें एट्रिब्यूट ClientServerOperation.fireAndForget == FALSE कॉन्फ़िगर किया गया है, कम्युनिकेशन फ्रेमवर्क एक मेथड की भूमिका में ठीक एक समर्पित प्रॉक्सी मेथड क्लास जनरेट करता है। यह क्लास final के रूप में घोषित है और हेडर #include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy.h" के माध्यम से शामिल की गई है SWS Communication Management, पृ. 39। कॉल करने वाला क्लाइंट एप्लिकेशन और नेटवर्क बाइंडिंग प्रत्यक्ष इंटरैक्शन पार्टनर्स के रूप में कार्य करते हैं, जो मेथड ट्रांसमिशन को रिमोट सर्विस इंस्टेंस पर अग्रेषित करता है और उसकी प्रतिक्रिया प्राप्त करता है [SWS_CM_00196]। प्रॉक्सी मेथड कॉल पैरामीटर्स को स्वीकार करती है और एसिंक्रोनस प्रवाह को एक ara::core::Future ऑब्जेक्ट के माध्यम से समाहित (encapsulate) करती है, जिसके माध्यम से क्लाइंट कॉल के पूरा होने और उसके परिणाम की क्वेरी करता है।
जीवनचक्र
<SI-Namespace>::proxy::methods::<Method> का इंस्टैंसिएशन पैरेंट सर्विस प्रॉक्सी के संयोजन में होता है। व्याख्या: मेथड क्लास संभवतः जनरेट किए गए प्रॉक्सी ऑब्जेक्ट के एक अभिन्न अंग के रूप में उसके साथ ही इंस्टैंसिएट और नष्ट (destroy) की जाती है, यही कारण है कि उपयोगकर्ता इंस्टेंस को अलग से आवंटित नहीं करता है। समवर्तीता (concurrency) के संदर्भ में, operator() के माध्यम से मेथड कॉल को गैर-अवरोधक (non-blocking) डिज़ाइन किया गया है; फ़ंक्शन ट्रांसमिशन शुरू करता है और तुरंत कॉलर के पास वापस लौटता है [SWS_CM_00196]। इंस्टेंस की एक प्रमुख स्थिति एंड-टू-एंड तंत्र (E2E) द्वारा सुरक्षा है। मेथड GetE2EStateMachineState() के माध्यम से, एप्लिकेशन मेथड-विशिष्ट स्टेट मशीन (ara::com::e2e::SMState) की वर्तमान स्थिति निर्धारित कर सकता है [SWS_CM_00148]। यह स्थिति आंतरिक सत्यापन फ़ंक्शन E2E_Check() द्वारा निर्धारित की जाती है, जिसे operator() के अंतिम कॉल के निष्पादन के दौरान निष्पादित किया जाता है [SWS_CM_00148], SWS Communication Management, पृ. 55। व्याख्या: E2E स्टेट मशीन का स्टेट अपडेट संभवतः प्रतिक्रिया संदेश के आने और सत्यापित होने के साथ एसिंक्रोनस रूप से प्रभावी होता है। प्रश्न Q-283a9927420e2952 (खुला)प्रश्न Q-546c9b1bceedef6b (खुला)
उपयोग पथ
विशिष्ट कॉल क्रम में मेथड कॉल की शुरुआत, परिणाम के लिए सिंक्रोनाइज़ेशन और उसके बाद का अखंडता सत्यापन शामिल है:
कॉल ट्रिगर करना: क्लाइंट एप्लिकेशन घोषित इनपुट पैरामीटर्स के साथ operator() के माध्यम से फ़ंक्शन ऑब्जेक्ट को कॉल करता है [SWS_CM_00196], [SWS_CM_00191]।
तत्काल वापसी: कॉल अनुरोध करने वाले थ्रेड को ब्लॉक नहीं करती है, बल्कि तुरंत ara::core::Future<Output> प्रकार का एक ऑब्जेक्ट लौटाती है [SWS_CM_00196]।
परिणाम क्वेरी: कॉलर सिंक्रोनस प्रतीक्षा (उदा. Future ऑब्जेक्ट के माध्यम से) या कॉल के पूरा होने के लिए एसिंक्रोनस मॉनिटरिंग के बारे में स्वायत्त रूप से निर्णय लेता है [SWS_CM_00196]। सफल समापन पर, Future प्रतिक्रिया मानों के साथ Output ऑब्जेक्ट प्रदान करता है [SWS_CM_00196], [SWS_CM_99333]।
E2E सुरक्षा स्थिति सत्यापित करना: कॉल पूरा होने के बाद, डेटा ट्रांसमिशन की वैधता सुनिश्चित करने के लिए एप्लिकेशन GetE2EStateMachineState() के माध्यम से E2E स्टेट मशीन की स्थिति की क्वेरी कर सकता है [SWS_CM_00148]।
अनुक्रम आरेख (Sequence diagram): Future के माध्यम से एसिंक्रोनस रिटर्न और उसके बाद E2E स्थिति क्वेरी के साथ एक मेथड कॉल का विशिष्ट प्रवाह। स्रोत: [SWS_CM_00196], [SWS_CM_00148]।
त्रुटि परिदृश्य
ऑपरेशन्स operator() और GetE2EStateMachineState() अपवाद-सुरक्षित (exception safe) निर्दिष्ट हैं और noexcept के साथ घोषित हैं [SWS_CM_00148], [SWS_CM_00196]। इसलिए संचार और परिनियोजन (deployment) त्रुटियों की रिपोर्ट C++ अपवादों के माध्यम से नहीं दी जाती है, बल्कि परिणामी ara::core::Future ऑब्जेक्ट के माध्यम से प्रेषित की जाती है, जो त्रुटि की स्थिति में संबंधित ara::core::FutureErrc या एरर कोड्स को समाहित करता है [SWS_CM_00196]। निर्दिष्ट त्रुटि कारणों में अन्य बातों के अलावा शामिल हैं:
CommunicationFailure: नेटवर्क बाइंडिंग एक सुधारने योग्य (recoverable) संचार त्रुटि या सुरक्षित कनेक्शन की विफलता की रिपोर्ट करता है; संचार टाइमआउट के मामले में, यह रिमोट सर्वर पर एक अनिश्चित स्थिति का कारण बन सकता है [SWS_CM_00196]।
ComErrc::kServiceNotAvailable: सर्विस इंस्टेंस पिछले परिनियोजन (deployment) के बाद अब उपलब्ध नहीं है [SWS_CM_00196]।
ComErrc::kUnknownApplicationError: एक रिमोट सर्विस एक गैर-कॉन्फ़िगर की गई एप्लिकेशन त्रुटि की रिपोर्ट करती है [SWS_CM_00196]।
ComE2EErrc::kUnspecifiedE2EError: रिमोट सर्विस एक अनिर्दिष्ट एंड-टू-एंड त्रुटि की रिपोर्ट करती है [SWS_CM_00196]।
ComErrc::kMinimumSendIntervalViolationError: कॉल अनुरोध इंटरफ़ेस तत्व के लिए कॉन्फ़िगर किए गए न्यूनतम ट्रांसमिशन अंतराल minimumSendInterval द्वारा अनुमत गति से अधिक तेज़ था [SWS_CM_00196]।
अनुमति उल्लंघन (InsufficientPermissionsViolation): यदि कॉलर के पास आवश्यक अनुमतियों का अभाव है, तो Grant Enforcement द्वारा निष्पादन अस्वीकार कर दिया जाता है [SWS_CM_00196]।
विनिर्देश के अनुसार इन एप्लिकेशन और संचार त्रुटियों के लिए रोलबैक सिमेंटिक्स (rollback_semantics) परिभाषित हैं [SWS_CM_00196]।
यह मार्गदर्शिका पूरी तरह से AUTOSAR Adaptive रिलीज़ R25-11 के विनिर्देशन आवश्यकताओं पर आधारित है।
Returns the state of the specific method class, which was determined by the last run of E2E_Check() function invoked during the last call of operator()
Initiate a method call (ClientServerOperation. fireAndForget ==FALSE). The method call will return immediately. The caller’s selection of a synchronous or asynchronous behavior to get the method output is achieved by the use of the returned ara::core::Future object which is used to query for method completion and result including possible error.
Returns the state of the specific method class, which was determined by the last run of E2E_Check() function invoked during the last call of operator()
Initiate a method call (ClientServerOperation. fireAndForget ==FALSE). The method call will return immediately. The caller’s selection of a synchronous or asynchronous behavior to get the method output is achieved by the use of the returned ara::core::Future object which is used to query for method completion and result including possible error.
The network binding reported a recoverable communications error or a secure communication failure. In case of a communication timeout this could lead to an uncertain state on the remote server side.
ComErrc::kUnknownApplicationError
rollback_semantics A remote service returned an unconfigured application error.
ComErrc::kServiceNotAvailable
rollback_semantics Service is not available after being previously offered via Offer Service()
ComE2EErrc::kUnspecifiedE2EError
rollback_semantics A remote service returned an unspecified E2E error.
ComErrc::kMinimumSendIntervalViolationError
rollback_semantics Minimum Send Interval violation, because a transmission request for a service instance element (event, field or method call) was issued faster than allowed, i.e., the configured minimum send interval ServiceInterfaceDeploymentElement. minimumSendInterval for the service instance element has not yet expired.
Request a governed re-review of this record. The record is not changed immediately.
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल