TAO_PI_Server 4.0.0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
TAO::ServerRequestInterceptor_Adapter_Impl Class Reference

ServerRequestInterceptor_Adapter_Impl. More...

#include <ServerInterceptorAdapter.h>

Inheritance diagram for TAO::ServerRequestInterceptor_Adapter_Impl:
Inheritance graph
[legend]
Collaboration diagram for TAO::ServerRequestInterceptor_Adapter_Impl:
Collaboration graph
[legend]

Public Member Functions

 ServerRequestInterceptor_Adapter_Impl ()
 Constructor.
 
- Public Member Functions inherited from TAO::ServerRequestInterceptor_Adapter
virtual ~ServerRequestInterceptor_Adapter ()
 
- Public Member Functions inherited from TAO::RequestInterceptor_Adapter
virtual ~RequestInterceptor_Adapter ()
 

PortableInterceptor Server Side Interception Points

Each of these methods corresponds to a server side interception point.

ServerRequestInterceptor_List interceptor_list_
 List of registered interceptors.
 
void receive_request_service_contexts (TAO_ServerRequest &server_request, TAO::Argument *const args[], size_t nargs, TAO::Portable_Server::Servant_Upcall *servant_upcall, CORBA::TypeCode_ptr const *exceptions, CORBA::ULong nexceptions)
 
void receive_request (TAO_ServerRequest &server_request, TAO::Argument *const args[], size_t nargs, TAO::Portable_Server::Servant_Upcall *servant_upcall, CORBA::TypeCode_ptr const *exceptions, CORBA::ULong nexceptions)
 This method an "intermediate" server side interception point.
 
void send_reply (TAO_ServerRequest &server_request, TAO::Argument *const args[], size_t nargs, TAO::Portable_Server::Servant_Upcall *servant_upcall, CORBA::TypeCode_ptr const *exceptions, CORBA::ULong nexceptions)
 
void send_exception (TAO_ServerRequest &server_request, TAO::Argument *const args[], size_t nargs, TAO::Portable_Server::Servant_Upcall *servant_upcall, CORBA::TypeCode_ptr const *exceptions, CORBA::ULong nexceptions)
 
void send_other (TAO_ServerRequest &server_request, TAO::Argument *const args[], size_t nargs, TAO::Portable_Server::Servant_Upcall *servant_upcall, CORBA::TypeCode_ptr const *exceptions, CORBA::ULong nexceptions)
 
virtual void add_interceptor (PortableInterceptor::ServerRequestInterceptor_ptr interceptor)
 Register an interceptor.
 
virtual void add_interceptor (PortableInterceptor::ServerRequestInterceptor_ptr interceptor, const CORBA::PolicyList &policies)
 List of registered interceptors.
 
virtual void destroy_interceptors ()
 List of registered interceptors.
 
virtual TAO::PICurrent_Impl * allocate_pi_current ()
 List of registered interceptors.
 
virtual void deallocate_pi_current (TAO::PICurrent_Impl *picurrent)
 List of registered interceptors.
 
virtual void execute_command (TAO_ServerRequest &server_request, TAO::Upcall_Command &command)
 List of registered interceptors.
 
void popTSC (TAO_ORB_Core *orb_core)
 List of registered interceptors.
 
void pushTSC (TAO_ORB_Core *orb_core)
 List of registered interceptors.
 

Detailed Description

ServerRequestInterceptor_Adapter_Impl.

A convenient helper class to invoke registered server request interceptor(s).

Constructor & Destructor Documentation

◆ ServerRequestInterceptor_Adapter_Impl()

TAO::ServerRequestInterceptor_Adapter_Impl::ServerRequestInterceptor_Adapter_Impl ( )

Constructor.

Member Function Documentation

◆ add_interceptor() [1/2]

void TAO::ServerRequestInterceptor_Adapter_Impl::add_interceptor ( PortableInterceptor::ServerRequestInterceptor_ptr interceptor)
virtual

Register an interceptor.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ add_interceptor() [2/2]

void TAO::ServerRequestInterceptor_Adapter_Impl::add_interceptor ( PortableInterceptor::ServerRequestInterceptor_ptr interceptor,
const CORBA::PolicyList & policies )
virtual

List of registered interceptors.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ allocate_pi_current()

TAO::PICurrent_Impl * TAO::ServerRequestInterceptor_Adapter_Impl::allocate_pi_current ( )
virtual

List of registered interceptors.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ deallocate_pi_current()

void TAO::ServerRequestInterceptor_Adapter_Impl::deallocate_pi_current ( TAO::PICurrent_Impl * picurrent)
virtual

List of registered interceptors.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ destroy_interceptors()

void TAO::ServerRequestInterceptor_Adapter_Impl::destroy_interceptors ( )
virtual

List of registered interceptors.

Implements TAO::RequestInterceptor_Adapter.

◆ execute_command()

void TAO::ServerRequestInterceptor_Adapter_Impl::execute_command ( TAO_ServerRequest & server_request,
TAO::Upcall_Command & command )
virtual

List of registered interceptors.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ popTSC()

void TAO::ServerRequestInterceptor_Adapter_Impl::popTSC ( TAO_ORB_Core * orb_core)
inlinevirtual

List of registered interceptors.

Implements TAO::RequestInterceptor_Adapter.

◆ pushTSC()

void TAO::ServerRequestInterceptor_Adapter_Impl::pushTSC ( TAO_ORB_Core * orb_core)
inlinevirtual

List of registered interceptors.

Implements TAO::RequestInterceptor_Adapter.

◆ receive_request()

void TAO::ServerRequestInterceptor_Adapter_Impl::receive_request ( TAO_ServerRequest & server_request,
TAO::Argument *const args[],
size_t nargs,
TAO::Portable_Server::Servant_Upcall * servant_upcall,
CORBA::TypeCode_ptr const * exceptions,
CORBA::ULong nexceptions )
virtual

This method an "intermediate" server side interception point.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ receive_request_service_contexts()

void TAO::ServerRequestInterceptor_Adapter_Impl::receive_request_service_contexts ( TAO_ServerRequest & server_request,
TAO::Argument *const args[],
size_t nargs,
TAO::Portable_Server::Servant_Upcall * servant_upcall,
CORBA::TypeCode_ptr const * exceptions,
CORBA::ULong nexceptions )
virtual

This method implements the "intermediate" server side interception point if the above #ifdef is set to 1 and a starting interception point if it is not set to 1.

Note
This method should have been the "starting" interception point according to the interceptor spec. This will be fixed once Bug 1369 is completely done.

NOTE: Yes, we have two versions of this. This is easier than messing around things in the same function, which is harder to read and could make the code buggier.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ send_exception()

void TAO::ServerRequestInterceptor_Adapter_Impl::send_exception ( TAO_ServerRequest & server_request,
TAO::Argument *const args[],
size_t nargs,
TAO::Portable_Server::Servant_Upcall * servant_upcall,
CORBA::TypeCode_ptr const * exceptions,
CORBA::ULong nexceptions )
virtual

This method implements one of the "ending" server side interception points.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ send_other()

void TAO::ServerRequestInterceptor_Adapter_Impl::send_other ( TAO_ServerRequest & server_request,
TAO::Argument *const args[],
size_t nargs,
TAO::Portable_Server::Servant_Upcall * servant_upcall,
CORBA::TypeCode_ptr const * exceptions,
CORBA::ULong nexceptions )
virtual

This method implements one of the "ending" server side interception points.

Implements TAO::ServerRequestInterceptor_Adapter.

◆ send_reply()

void TAO::ServerRequestInterceptor_Adapter_Impl::send_reply ( TAO_ServerRequest & server_request,
TAO::Argument *const args[],
size_t nargs,
TAO::Portable_Server::Servant_Upcall * servant_upcall,
CORBA::TypeCode_ptr const * exceptions,
CORBA::ULong nexceptions )
virtual

This method implements one of the "ending" server side interception points.

Implements TAO::ServerRequestInterceptor_Adapter.

Member Data Documentation

◆ interceptor_list_

ServerRequestInterceptor_List TAO::ServerRequestInterceptor_Adapter_Impl::interceptor_list_
private

List of registered interceptors.


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