org.omg.CORBA.portable

## 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
`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` - The `InputStream` containing the marshalled arguments.
  `handler` - The `ResponseHandler` 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.