blob: 76548d1dc1f438e91cca71b5caf641d9a8bb080b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
// -*- C++ -*-
#include "Server_ORBInitializer.h"
#include "tao/ORB_Constants.h"
ACE_RCSID (Collocated_Forwarding,
Server_ORBInitializer,
"$Id$")
#if TAO_HAS_INTERCEPTORS == 1
#include "Server_Request_Interceptor.h"
Server_ORBInitializer::Server_ORBInitializer (CORBA::ULong request_pass_count)
: request_pass_count_ (request_pass_count)
, server_interceptor_ ()
{
}
void
Server_ORBInitializer::pre_init (
PortableInterceptor::ORBInitInfo_ptr)
{
}
void
Server_ORBInitializer::post_init (
PortableInterceptor::ORBInitInfo_ptr info)
{
PortableInterceptor::ServerRequestInterceptor_ptr interceptor;
// Install the server request interceptor.
ACE_NEW_THROW_EX (interceptor,
Server_Request_Interceptor (this->request_pass_count_),
CORBA::NO_MEMORY (
CORBA::SystemException::_tao_minor_code (
TAO::VMCID,
ENOMEM),
CORBA::COMPLETED_NO));
this->server_interceptor_ = interceptor;
info->add_server_request_interceptor (interceptor);
}
PortableInterceptor::ServerRequestInterceptor_ptr
Server_ORBInitializer::server_interceptor (void)
{
return
PortableInterceptor::ServerRequestInterceptor::_duplicate (
this->server_interceptor_.in ());
}
#endif /* TAO_HAS_INTERCEPTORS == 1 */
|