📄 domains.cpp
字号:
this->synchronous_upcall_dispatch (req,
servant_upcall,
this
ACE_ENV_ARG_PARAMETER);
}
// TAO_IDL - Generated from
// be/be_visitor_interface/interface_ss.cpp:476
CORBA::DomainManager *
POA_CORBA::DomainManager::_this (ACE_ENV_SINGLE_ARG_DECL)
{
TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
ACE_CHECK_RETURN (0);
TAO_Stub_Auto_Ptr safe_stub (stub);
CORBA::Object_ptr tmp = CORBA::Object::_nil ();
if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
{
ACE_NEW_RETURN (
tmp,
CORBA::Object (
stub,
1,
this
),
0
);
}
else
{
ACE_NEW_RETURN (
tmp,
CORBA::Object (
stub,
0,
this
),
0
);
}
CORBA::Object_var obj = tmp;
(void) safe_stub.release ();
typedef ::CORBA::DomainManager STUB_SCOPED_NAME;
return
TAO::Narrow_Utils<STUB_SCOPED_NAME>::unchecked_narrow (
obj.in (),
CORBA__TAO_DomainManager_Proxy_Broker_Factory_function_pointer
);
}
// TAO_IDL - Generated from
// be/be_interface.cpp:1445
class TAO_CORBA_ConstructionPolicy_Perfect_Hash_OpTable : public TAO_Perfect_Hash_OpTable
{
private:
unsigned int hash (const char *str, unsigned int len);
public:
const TAO_operation_db_entry * lookup (const char *str, unsigned int len);
};
/* C++ code produced by gperf version 2.8 (ACE version) */
/* Command-line: /project/tangotmp/bala/work/ACE+TAO/main_merge/ACE_wrappers/bin/gperf -m -M -J -c -C -D -E -T -f 0 -F 0,0,0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ConstructionPolicy_Perfect_Hash_OpTable -N lookup */
unsigned int
TAO_CORBA_ConstructionPolicy_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
{
static const unsigned char asso_values[] =
{
#if defined (ACE_MVS)
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 0,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 0,
22, 0, 0, 5, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 0, 22,
22, 22, 22, 0, 22, 22, 22, 22, 22, 22,
22, 22, 22, 0, 22, 22, 22, 22, 0, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22,
#else
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 0, 22, 0, 22, 0,
0, 5, 22, 22, 22, 22, 22, 22, 22, 0,
22, 22, 22, 22, 0, 22, 0, 22, 22, 22,
22, 0, 22, 22, 22, 22, 22, 22,
#endif /* ACE_MVS */
};
return len + asso_values[(int) str[len - 1]] + asso_values[(int) str[0]];
}
const class TAO_operation_db_entry *
TAO_CORBA_ConstructionPolicy_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
{
enum
{
TOTAL_KEYWORDS = 8,
MIN_WORD_LENGTH = 4,
MAX_WORD_LENGTH = 19,
MIN_HASH_VALUE = 4,
MAX_HASH_VALUE = 21,
HASH_VALUE_RANGE = 18,
DUPLICATES = 0,
WORDLIST_SIZE = 12
};
static const class TAO_operation_db_entry wordlist[] =
{
{"",0,0,0},{"",0,0,0},{"",0,0,0},{"",0,0,0},
{"copy", &POA_CORBA::ConstructionPolicy::copy_skel, &POA_CORBA::_TAO_ConstructionPolicy_ThruPOA_Proxy_Impl::copy, &POA_CORBA::_TAO_ConstructionPolicy_Direct_Proxy_Impl::copy},
{"_is_a", &POA_CORBA::ConstructionPolicy::_is_a_skel, 0, 0},
{"",0,0,0},
{"destroy", &POA_CORBA::ConstructionPolicy::destroy_skel, &POA_CORBA::_TAO_ConstructionPolicy_ThruPOA_Proxy_Impl::destroy, &POA_CORBA::_TAO_ConstructionPolicy_Direct_Proxy_Impl::destroy},
{"",0,0,0},{"",0,0,0},
{"_component", &POA_CORBA::ConstructionPolicy::_component_skel, 0, 0},
{"",0,0,0},{"",0,0,0},
{"_non_existent", &POA_CORBA::ConstructionPolicy::_non_existent_skel, 0, 0},
{"",0,0,0},
{"_interface", &POA_CORBA::ConstructionPolicy::_interface_skel, 0, 0},
{"",0,0,0},{"",0,0,0},{"",0,0,0},
{"make_domain_manager", &POA_CORBA::ConstructionPolicy::make_domain_manager_skel, &POA_CORBA::_TAO_ConstructionPolicy_ThruPOA_Proxy_Impl::make_domain_manager, &POA_CORBA::_TAO_ConstructionPolicy_Direct_Proxy_Impl::make_domain_manager},
{"",0,0,0},
{"_get_policy_type", &POA_CORBA::ConstructionPolicy::_get_policy_type_skel, &POA_CORBA::_TAO_ConstructionPolicy_ThruPOA_Proxy_Impl::_get_policy_type, &POA_CORBA::_TAO_ConstructionPolicy_Direct_Proxy_Impl::_get_policy_type},
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
{
unsigned int key = hash (str, len);
if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
{
const char *s = wordlist[key].opname_;
if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
return &wordlist[key];
}
}
return 0;
}
static TAO_CORBA_ConstructionPolicy_Perfect_Hash_OpTable tao_CORBA_ConstructionPolicy_optable;
// TAO_IDL - Generated from
// be/be_visitor_interface/interceptors_ss.cpp:52
#if (TAO_HAS_INTERCEPTORS == 1)
// TAO_IDL - Generated from
// be/be_visitor_operation/interceptors_ss.cpp:74
class TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager : public TAO_ServerRequestInfo
{
public:
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager (
TAO_ServerRequest &_tao_server_request,
TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,
POA_CORBA::ConstructionPolicy *tao_impl,
CORBA::InterfaceDef_ptr object_type,
const CORBA::Boolean & constr_policy
ACE_ENV_ARG_DECL_WITH_DEFAULTS
);
virtual Dynamic::ParameterList * arguments (
ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS
)
ACE_THROW_SPEC ((CORBA::SystemException));
virtual Dynamic::ExceptionList * exceptions (
ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS
)
ACE_THROW_SPEC ((CORBA::SystemException));
virtual CORBA::Any * result (
ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS
)
ACE_THROW_SPEC ((CORBA::SystemException));
virtual char * target_most_derived_interface (
ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS
)
ACE_THROW_SPEC ((CORBA::SystemException));
virtual CORBA::Boolean target_is_a (
const char * id
ACE_ENV_ARG_DECL_WITH_DEFAULTS
)
ACE_THROW_SPEC ((CORBA::SystemException));
private:
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager (
const TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager &
);
void operator= (
const TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager &
);
private:
POA_CORBA::ConstructionPolicy *_tao_impl;
CORBA::InterfaceDef_ptr object_type_;
const CORBA::Boolean & constr_policy_;
};
// TAO_IDL - Generated from
// be/be_visitor_operation/interceptors_ss.cpp:438
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager (
TAO_ServerRequest &_tao_server_request,
TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
POA_CORBA::ConstructionPolicy *tao_impl,
CORBA::InterfaceDef_ptr object_type,
const CORBA::Boolean & constr_policy
ACE_ENV_ARG_DECL_NOT_USED
)
: TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
_tao_impl (tao_impl),
object_type_ (object_type),
constr_policy_ (constr_policy)
{}
Dynamic::ParameterList *
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::arguments (
ACE_ENV_SINGLE_ARG_DECL
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
// Generate the argument list on demand.
Dynamic::ParameterList *parameter_list =
TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
ACE_CHECK_RETURN (0);
Dynamic::ParameterList_var safe_parameter_list = parameter_list;
parameter_list->length (2);
CORBA::ULong len = 0;
(*parameter_list)[len].argument <<= this->object_type_;
(*parameter_list)[len].mode = CORBA::PARAM_IN;
len++;
(*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->constr_policy_);
(*parameter_list)[len].mode = CORBA::PARAM_IN;
len++;
return safe_parameter_list._retn ();
}
Dynamic::ExceptionList *
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::exceptions (
ACE_ENV_SINGLE_ARG_DECL
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
// Generate the exception list on demand.
Dynamic::ExceptionList *exception_list =
TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
ACE_CHECK_RETURN (0);
return exception_list;
}
CORBA::Any *
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::result (
ACE_ENV_SINGLE_ARG_DECL
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
// Generate the result on demand.
CORBA::Boolean tk_void_any = 1;
CORBA::Any *result_any =
TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
ACE_CHECK_RETURN (0);
return result_any;
}
char *
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::target_most_derived_interface (
ACE_ENV_SINGLE_ARG_DECL_NOT_USED
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
return
CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
}
CORBA::Boolean
TAO_ServerRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::target_is_a (
const char * id
ACE_ENV_ARG_DECL
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
}
#endif /* TAO_HAS_INTERCEPTORS */
///////////////////////////////////////////////////////////////////////
// Strategized Proxy Broker Implementation
//
// TAO_IDL - Generated from
// be/be_visitor_interface/strategized_proxy_broker_ss.cpp:40
// Factory function Implementation.
POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker *
POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker::the_TAO_ConstructionPolicy_Strategized_Proxy_Broker (void)
{
static POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker strategized_proxy_broker;
return &strategized_proxy_broker;
}
POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker::_TAO_ConstructionPolicy_Strategized_Proxy_Broker (void)
{
}
POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker::~_TAO_ConstructionPolicy_Strategized_Proxy_Broker (void)
{
}
TAO::Collocation_Strategy
POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker::get_strategy (
CORBA::Object_ptr obj
ACE_ENV_ARG_DECL
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
TAO::Collocation_Strategy strategy =
TAO_ORB_Core::collocation_strategy (obj ACE_ENV_ARG_PARAMETER);
ACE_CHECK_RETURN (TAO::TAO_CS_REMOTE_STRATEGY);
return strategy;
}
void
POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker::dispatch (
CORBA::Object_ptr obj,
CORBA::Object_out forward_obj,
TAO::Argument ** args,
int num_args,
const char * op,
size_t op_len,
TAO::Collocation_Strategy strategy
ACE_ENV_ARG_DECL
)
ACE_THROW_SPEC ((CORBA::Exception))
{
TAO_Object_Adapter::Servant_Upcall servant_upcall (
obj->_stubobj ()->servant_orb_var ()->orb_core ()
);
if (strategy == TAO::TAO_CS_THRU_POA_STRATEGY)
{
servant_upcall.prepare_for_upcall (
obj->_stubobj ()->object_key (),
op,
forward_obj
ACE_ENV_ARG_PARAMETER
);
ACE_CHECK;
servant_upcall.pre_invoke_collocated_request (
ACE_ENV_SINGLE_ARG_PARAMETER);
ACE_CHECK;
}
TAO_Collocated_Skeleton collocated_skel;
if (servant_upcall.servant ()->_find (op,
collocated_skel,
strategy,
op_len) == -1)
ACE_THROW (CORBA::BAD_OPERATION ());
ACE_TRY
{
collocated_skel (
servant_upcall.servant (),
args,
num_args
ACE_ENV_ARG_PARAMETER);
ACE_TRY_CHECK;
}
#if (TAO_HAS_MINIMUM_CORBA == 0)
ACE_CATCH (PortableServer::ForwardRequest, forward_request)
{
forward_obj =
CORBA::Object::_duplicate (forward_request.forward_reference.in ());
return;
}
#else
ACE_CATCHANY
{
ACE_UNUSED_ARG (forward_obj);
ACE_RE_THROW;
}
#endif /* TAO_HAS_MINIMUM_CORBA */
ACE_ENDTRY;
ACE_CHECK;
}
//
// End Strategized Proxy Broker Implementation
///////////////////////////////////////////////////////////////////////
// TAO_IDL - Generated from
// be/be_visitor_interface/interface_ss.cpp:600
TAO::Collocation_Proxy_Broker *
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Factory_function (CORBA::Object_ptr)
{
return
::POA_CORBA::_TAO_ConstructionPolicy_Strategized_Proxy_Broker::the_TAO_ConstructionPolicy_Strategized_Proxy_Broker();
}
int
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Factory_Initializer (size_t)
{
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Factory_function_pointer =
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Factory_function;
return 0;
}
static int
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Factory_Initializer (
ACE_reinterpret_cast (
size_t,
CORBA__TAO_ConstructionPolicy_Proxy_Broker_Factory_Initializer
)
);
///////////////////////////////////////////////////////////////////////
// ThruPOA Proxy Implementation
//
// TAO_IDL - Generated from
// be/be_visitor_interface/thru_poa_proxy_impl_ss.cpp:37
POA_CORBA::_TAO_ConstructionPolicy_ThruPOA_Proxy_Impl::_TAO_ConstructionPolicy_ThruPOA_Proxy_Impl (void)
{}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -