OpenJDK 8 - PortableRemoteObject

क्लास पोर्टेबलRemoteObject




openjdk

क्लास पोर्टेबलRemoteObject

public class PortableRemoteObject
extends Object

सर्वर कार्यान्वयन ऑब्जेक्ट या तो javax.rmi.PortableRemoteObject से इनहेरिट कर सकते हैं या वे एक दूरस्थ इंटरफ़ेस लागू कर सकते हैं और फिर खुद को सर्वर ऑब्जेक्ट के रूप में पंजीकृत करने के लिए ExportObject विधि का उपयोग कर सकते हैं। TheStub विधि एक सर्वर कार्यान्वयन लेता है और एक स्टब देता है जिसका उपयोग उस सर्वर ऑब्जेक्ट तक पहुंचने के लिए किया जा सकता है। कनेक्ट विधि दूरस्थ संचार के लिए एक दूरस्थ वस्तु तैयार करती है। UnexportObject विधि का उपयोग सर्वर ऑब्जेक्ट को डीरेगिस्टर करने के लिए किया जाता है, जिससे यह कचरा संग्रहण के लिए उपलब्ध हो सके। संकीर्ण विधि ऑब्जेक्ट संदर्भ या सार इंटरफ़ेस प्रकार लेती है और इसे दिए गए इंटरफ़ेस के अनुरूप संकीर्ण करने का प्रयास करती है। यदि ऑपरेशन सफल होता है तो परिणाम निर्दिष्ट प्रकार का एक ऑब्जेक्ट होगा, अन्यथा एक अपवाद फेंक दिया जाएगा।

कंस्ट्रक्टर्स

PortableRemoteObject

protected PortableRemoteObject()
                        throws RemoteException

exportObject(this) कॉल करके ऑब्जेक्ट को प्रारंभ करता है।

फेंकता:
RemoteException - यदि निर्यात विफल रहता है।

तरीके

exportObject

public static void exportObject(Remote obj)
                         throws RemoteException

दूरस्थ कॉल प्राप्त करने के लिए तैयार सर्वर ऑब्जेक्ट बनाता है। ध्यान दें कि PortableRemoteObject के उपवर्गों को इस पद्धति को कॉल करने की आवश्यकता नहीं है, क्योंकि इसे कंस्ट्रक्टर द्वारा कहा जाता है।

पैरामीटर:
obj - सर्वर वस्तु निर्यात करने के लिए।
फेंकता:
RemoteException - यदि निर्यात विफल रहता है।

toStub

public static Remote toStub(Remote obj)
                     throws NoSuchObjectException

दिए गए सर्वर ऑब्जेक्ट के लिए एक स्टब लौटाता है।

पैरामीटर:
obj - सर्वर ऑब्जेक्ट जिसके लिए स्टब आवश्यक है। या तो PortableRemoteObject का उपवर्ग होना चाहिए या पहले exportObject(java.rmi.Remote) को कॉल करने का लक्ष्य रहा है।
यह दिखाता है:
वस्तु के लिए सबसे व्युत्पन्न ठूंठ।
फेंकता:
NoSuchObjectException - यदि कोई स्टब दिए गए सर्वर ऑब्जेक्ट के लिए स्थित नहीं हो सकता है।

unexportObject

public static void unexportObject(Remote obj)
                           throws NoSuchObjectException

डेरेगिस्ट्स रनटाइम से सर्वर ऑब्जेक्ट बनाता है, जिससे ऑब्जेक्ट कचरा संग्रहण के लिए उपलब्ध हो सके।

पैरामीटर:
obj - अप्रस्तुत वस्तु।
फेंकता:
NoSuchObjectException - यदि दूरस्थ ऑब्जेक्ट वर्तमान में निर्यात नहीं किया गया है।

संकीर्ण

public static Object narrow(Object narrowFrom,
                            Class narrowTo)
                     throws ClassCastException

यह सुनिश्चित करने के लिए जाँच करता है कि दूरस्थ या अमूर्त इंटरफ़ेस प्रकार का ऑब्जेक्ट वांछित प्रकार के लिए डाला जा सकता है।

पैरामीटर:
narrowFrom - जाँच करने के लिए वस्तु।
narrowTo - वांछित प्रकार।
यह दिखाता है:
एक वस्तु जो वांछित प्रकार के लिए डाली जा सकती है।
फेंकता:
ClassCastException - यदि नैरोफ्रॉम को नैकटो में नहीं डाला जा सकता है।

जुडिये

public static void connect(Remote target,
                           Remote source)
                    throws RemoteException

दूरस्थ संचार के लिए एक दूरस्थ वस्तु तैयार करता है। यह आमतौर पर अंतर्निहित रूप से तब होता है जब ऑब्जेक्ट को दूरस्थ विधि कॉल पर एक तर्क के रूप में भेजा या प्राप्त किया जाता है, लेकिन कुछ परिस्थितियों में यह स्पष्ट कॉल करके इस क्रिया को करने के लिए उपयोगी है। अधिक जानकारी के लिए Stub.connect(org.omg.CORBA.ORB) विधि देखें।

पैरामीटर:
target - कनेक्ट करने के लिए वस्तु।
source - पहले से जुड़ी हुई वस्तु।
फेंकता:
RemoteException - यदि source जुड़ा नहीं है या यदि target पहले से ही source से भिन्न ORB से जुड़ा है।