org.omg.PortableServer

## Class ServantActivatorPOA

- java.lang.Object
- - org.omg.PortableServer.Servant
  - - org.omg.PortableServer.ServantActivatorPOA

- All Implemented Interfaces:
    InvokeHandler, ServantActivatorOperations, ServantManagerOperations

      public abstract class ServantActivatorPOA
      extends Servant
      implements ServantActivatorOperations, InvokeHandler

  When the POA has the RETAIN policy it uses servant managers that are ServantActivators.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ServantActivatorPOA()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `String[]` | `_all_interfaces(POA poa, byte[] objectId)` Used by the ORB to obtain complete type information from the servant.
    `OutputStream` | `_invoke(String $method, InputStream in, ResponseHandler $rh)` Invoked by the ORB to dispatch a request to the servant.
    `ServantActivator` | `_this()`
    `ServantActivator` | `_this(ORB orb)`

    - ### Methods inherited from class org.omg.PortableServer.Servant

      `_default_POA, _get_delegate, _get_interface_def, _is_a, _non_existent, _object_id, _orb, _poa, _set_delegate, _this_object, _this_object`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.omg.PortableServer.ServantActivatorOperations

      `etherealize, incarnate`

- - ### Constructor Detail

    - #### ServantActivatorPOA

          public ServantActivatorPOA()

  - ### Method Detail

    - #### _invoke

          public OutputStream _invoke(String $method,
                             InputStream in,
                             ResponseHandler $rh)

      Description copied from interface: `InvokeHandler`
      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.

      Specified by:
        `_invoke` in interface `InvokeHandler`
      Parameters:
        `$method` - The method name.
        `in` - The `InputStream` containing the marshalled arguments.
        `$rh` - The `ResponseHandler` which the servant uses to construct a proper reply
      Returns:
        The `OutputStream` created by the ResponseHandler which contains the marshalled reply

    - #### _all_interfaces

          public String[] _all_interfaces(POA poa,
                                 byte[] objectId)

      Description copied from class: `Servant`
      Used by the ORB to obtain complete type information from the servant.
      Specified by:
        `_all_interfaces` in class `Servant`
      Parameters:
        `poa` - POA with which the servant is associated.
        `objectId` - is the id corresponding to the object associated with this servant.
      Returns:
        list of type information for the object.

    - #### _this

          public ServantActivator _this()

    - #### _this

          public ServantActivator _this(ORB orb)

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, 2017, Oracle and/or its affiliates. All rights reserved.