summaryrefslogtreecommitdiff
path: root/TAO/tao/PortableServer/Servant_Base.i
blob: dcff57157eb5801ce20fc4de90cce89da1eec7a6 (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
// $Id$

ACE_INLINE u_long
TAO_Servant_Hash::operator () (PortableServer::Servant servant) const
{
  return u_long (servant);
}

ACE_INLINE TAO_Stub *
TAO_Local_ServantBase::_create_stub (CORBA_Environment & /*ACE_TRY_ENV*/)
{
#if 0
  PortableServer::ObjectId_var invalid_oid =
    PortableServer::string_to_ObjectId ("invalid");

  TAO_ObjectKey tmp_key (invalid_oid->length (),
                         invalid_oid->length (),
                         invalid_oid->get_buffer (),
                         0);

  // It is ok to use TAO_ORB_Core_instance here since the locality
  // constrained servant does not really register with a POA or get
  // exported remotely.
  //
  // The correct thing to do is to probably use ORB of the default
  // POA. The unfortunate part is that calling default_POA() requires
  // the creation of a local stub, hence causing a infinite loop.
  return TAO_ORB_Core_instance ()->orb ()->create_stub_object (tmp_key,
                                                               this->_interface_repository_id (),
                                                               ACE_TRY_ENV);
#else
  //  ACE_UNUSED_ARG (ACE_TRY_ENV);
  return 0;
#endif
}