Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# ImR_Forwarder Class Reference

Implementation Repository Forwarder. More...

`#include <Forwarder.h>`

Inheritance diagram for ImR_Forwarder:

[legend]
Collaboration diagram for ImR_Forwarder:

[legend]
List of all members.

## Public Methods
| ImR_Forwarder (ImplRepo_i *ir_impl)
| Constructor. More...
virtual PortableServer::Servant | preinvoke (const PortableServer::ObjectId &oid, PortableServer::POA_ptr poa, const char *operation, PortableServer::ServantLocator::Cookie &cookie ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableServer::ForwardRequest)
| Called before the invocation begins. More...
virtual void | postinvoke (const PortableServer::ObjectId &oid, PortableServer::POA_ptr poa, const char *operation, PortableServer::ServantLocator::Cookie cookie, PortableServer::Servant servant ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
| Called after the invocation finishes. More...
## Private Attributes
ImplRepo_i * | imr_impl_
| Where we find out where to forward to. More...
PortableServer::Current_var | poa_current_var_
| POA reference. More...

## Detailed Description

Implementation Repository Forwarder.

This class is provides a ServantLocator implementation that is used to handle arbitrary calls and forward them to the correct place.

## Constructor & Destructor Documentation

ImR_Forwarder::ImR_Forwarder | ( | ImplRepo_i * | imr_impl | ) |

| Constructor. This constructor takes in orb and ImplRepo_i pointers to store for later use. It also grabs a reference to the POACurrent object for use in preinvoke.

## Member Function Documentation

void ImR_Forwarder::postinvoke | ( | const PortableServer::ObjectId & | oid,
|  | PortableServer::POA_ptr | poa,
|  | const char * | operation,
|  | PortableServer::ServantLocator::Cookie | cookie,
|  | PortableServer::Servant servant | ACE_ENV_ARG_DECL_NOT_USED
| ) | throw (CORBA::SystemException)`[virtual]`

| Called after the invocation finishes. The postinvoke method just deletes the passed in servant.

virtual PortableServer::Servant ImR_Forwarder::preinvoke | ( | const PortableServer::ObjectId & | oid,
|  | PortableServer::POA_ptr | poa,
|  | const char * | operation,
|  | PortableServer::ServantLocator::Cookie &cookie | ACE_ENV_ARG_DECL
| ) | throw (CORBA::SystemException, PortableServer::ForwardRequest)`[virtual]`

| Called before the invocation begins.

## Member Data Documentation

ImplRepo_i* ImR_Forwarder::imr_impl_`[private]`

| Where we find out where to forward to.

PortableServer::Current_var ImR_Forwarder::poa_current_var_`[private]`

| POA reference.

The documentation for this class was generated from the following files:

- Forwarder.h
- Forwarder.cpp