Interface InvokeHandler
-
- All Known Subinterfaces:
- Tie
- All Known Implementing Classes:
- BindingIteratorPOA, NamingContextExtPOA, NamingContextPOA, ServantActivatorPOA, ServantLocatorPOA
public interface InvokeHandler
This interface provides a dispatching mechanism for an incoming call. It is invoked by the ORB to dispatch a request to a servant.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description OutputStream
_invoke(String method, InputStream input, ResponseHandler handler)
Invoked by the ORB to dispatch a request to the servant.
-
-
-
Method Detail
_invoke
OutputStream _invoke(String method, InputStream input, ResponseHandler handler) throws SystemException
Invoked by the ORB to dispatch a request to the servant. ORB passes the method name, an InputStream containing the marshalled arguments, and a ResponseHandler which the servant uses to construct a proper reply. Only CORBA SystemException may be thrown by this method. The method must return an OutputStream created by the ResponseHandler which contains the marshalled reply. A servant must not retain a reference to the ResponseHandler beyond the lifetime of a method invocation. Servant behaviour is defined as follows:1. Determine correct method, and unmarshal parameters from InputStream.
2. Invoke method implementation.
3. If no user exception, create a normal reply using ResponseHandler.
4. If user exception occurred, create exception reply using ResponseHandler.
5. Marshal reply into OutputStream returned by ResponseHandler.
6. Return OutputStream to ORB.
- Parameters:
-
method
- The method name. -
input
- TheInputStream
containing the marshalled arguments. -
handler
- TheResponseHandler
which the servant uses to construct a proper reply - Returns:
-
The
OutputStream
created by the ResponseHandler which contains the marshalled reply - Throws:
-
SystemException
- is thrown when invocation fails due to a CORBA system exception.
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.