📄 messengers.cpp
字号:
// -*- C++ -*-
//
// $Id$
// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
// TAO and the TAO IDL Compiler have been developed by:
// Center for Distributed Object Computing
// Washington University
// St. Louis, MO
// USA
// http://www.cs.wustl.edu/~schmidt/doc-center.html
// and
// Distributed Object Computing Laboratory
// University of California at Irvine
// Irvine, CA
// USA
// http://doc.ece.uci.edu/
// and
// Institute for Software Integrated Systems
// Vanderbilt University
// Nashville, TN
// USA
// http://www.isis.vanderbilt.edu/
//
// Information about TAO is available at:
// http://www.cs.wustl.edu/~schmidt/TAO.html
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_codegen.cpp:588
#ifndef _TAO_IDL_MESSENGERS_CPP_
#define _TAO_IDL_MESSENGERS_CPP_
#include "MessengerS.h"
#include "tao/PortableServer/Operation_Table_Perfect_Hash.h"
#include "tao/PortableServer/Upcall_Command.h"
#include "tao/PortableServer/Upcall_Wrapper.h"
#include "tao/PortableServer/Object_SArgument_T.h"
#include "tao/PortableServer/Special_Basic_SArguments.h"
#include "tao/PortableServer/UB_String_SArguments.h"
#include "tao/PortableServer/TypeCode_SArg_Traits.h"
#include "tao/PortableServer/Object_SArg_Traits.h"
#include "tao/PortableServer/get_arg.h"
#include "tao/Special_Basic_Arguments.h"
#include "tao/UB_String_Arguments.h"
#include "tao/TAO_Server_Request.h"
#include "tao/ORB_Core.h"
#include "tao/Profile.h"
#include "tao/Stub.h"
#include "tao/IFR_Client_Adapter.h"
#include "tao/Object_T.h"
#include "tao/Typecode.h"
#include "tao/DynamicC.h"
#include "tao/CDR.h"
#include "tao/operation_details.h"
#include "tao/PortableInterceptor.h"
#include "tao/Special_Basic_Arguments.h"
#include "tao/UB_String_Arguments.h"
#include "ace/Dynamic_Service.h"
#include "ace/Malloc_Allocator.h"
#if defined (__BORLANDC__)
#pragma option -w-rvl -w-rch -w-ccc -w-aus
#endif /* __BORLANDC__ */
#if !defined (__ACE_INLINE__)
#include "MessengerS.inl"
#endif /* !defined INLINE */
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_arg_traits.cpp:68
// Arg traits specializations.
namespace TAO
{
}
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_arg_traits.cpp:68
// Arg traits specializations.
namespace TAO
{
}
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_interface.cpp:1456
class TAO_Messenger_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: gperf -m -M -J -c -C -D -E -T -f 0 -F 0,0 -a -o -t -p -K opname -L C++ -Z TAO_Messenger_Perfect_Hash_OpTable -N lookup */
unsigned int
TAO_Messenger_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
{
static const unsigned char asso_values[] =
{
#if defined (ACE_MVS)
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 0,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 0,
18, 18, 18, 5, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 0, 0, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18,
#else
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 0, 18, 0, 18, 18,
18, 5, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 0, 0, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18,
#endif /* ACE_MVS */
};
return len + asso_values[(int) str[len - 1]] + asso_values[(int) str[0]];
}
const struct TAO_operation_db_entry *
TAO_Messenger_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
{
enum
{
TOTAL_KEYWORDS = 5,
MIN_WORD_LENGTH = 5,
MAX_WORD_LENGTH = 13,
MIN_HASH_VALUE = 5,
MAX_HASH_VALUE = 17,
HASH_VALUE_RANGE = 13,
DUPLICATES = 0,
WORDLIST_SIZE = 10
};
static const struct TAO_operation_db_entry wordlist[] =
{
{"",0,0},{"",0,0},{"",0,0},{"",0,0},{"",0,0},
{"_is_a", &POA_Messenger::_is_a_skel, 0},
{"",0,0},{"",0,0},{"",0,0},{"",0,0},
{"_component", &POA_Messenger::_component_skel, 0},
{"",0,0},{"",0,0},
{"_non_existent", &POA_Messenger::_non_existent_skel, 0},
{"",0,0},
{"_interface", &POA_Messenger::_interface_skel, 0},
{"",0,0},
{"send_message", &POA_Messenger::send_message_skel, 0},
};
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_Messenger_Perfect_Hash_OpTable tao_Messenger_optable;
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:853
TAO::Collocation_Proxy_Broker *
_TAO_Messenger_Proxy_Broker_Factory_function (CORBA::Object_ptr)
{
return reinterpret_cast<TAO::Collocation_Proxy_Broker *> (0xdead); // Dummy
}
int
_TAO_Messenger_Proxy_Broker_Factory_Initializer (size_t)
{
_TAO_Messenger_Proxy_Broker_Factory_function_pointer =
_TAO_Messenger_Proxy_Broker_Factory_function;
return 0;
}
static int
_TAO_Messenger_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
_TAO_Messenger_Proxy_Broker_Factory_Initializer (
reinterpret_cast<size_t> (_TAO_Messenger_Proxy_Broker_Factory_Initializer)
);
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:103
POA_Messenger::POA_Messenger (void)
: TAO_ServantBase ()
{
this->optable_ = &tao_Messenger_optable;
}
POA_Messenger::POA_Messenger (const POA_Messenger& rhs)
: TAO_Abstract_ServantBase (rhs),
TAO_ServantBase (rhs)
{
}
POA_Messenger::~POA_Messenger (void)
{
}
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_operation/upcall_command_ss.cpp:127
class send_message_Messenger
: public TAO::Upcall_Command
{
public:
inline send_message_Messenger (
POA_Messenger * servant,
TAO_Operation_Details const * operation_details,
TAO::Argument * const args[])
: servant_ (servant)
, operation_details_ (operation_details)
, args_ (args)
{
}
virtual void execute (ACE_ENV_SINGLE_ARG_DECL)
{
TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_arg_type retval =
TAO::Portable_Server::get_ret_arg< ::ACE_InputCDR::to_boolean, TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_arg_type> (
this->operation_details_,
this->args_);
TAO::SArg_Traits< CORBA::Char *>::in_arg_type arg_1 =
TAO::Portable_Server::get_in_arg< CORBA::Char *, TAO::SArg_Traits< CORBA::Char *>::in_arg_type> (
this->operation_details_,
this->args_,
1);
TAO::SArg_Traits< CORBA::Char *>::in_arg_type arg_2 =
TAO::Portable_Server::get_in_arg< CORBA::Char *, TAO::SArg_Traits< CORBA::Char *>::in_arg_type> (
this->operation_details_,
this->args_,
2);
TAO::SArg_Traits< CORBA::Char *>::inout_arg_type arg_3 =
TAO::Portable_Server::get_inout_arg< CORBA::Char *, TAO::SArg_Traits< CORBA::Char *>::inout_arg_type> (
this->operation_details_,
this->args_,
3);
retval =
this->servant_->send_message (
arg_1
, arg_2
, arg_3
ACE_ENV_ARG_PARAMETER);
}
private:
POA_Messenger * const servant_;
TAO_Operation_Details const * const operation_details_;
TAO::Argument * const * const args_;
};
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_operation/operation_ss.cpp:192
void POA_Messenger::send_message_skel (
TAO_ServerRequest & server_request,
void * TAO_INTERCEPTOR (servant_upcall),
void * servant
ACE_ENV_ARG_DECL
)
{
#if TAO_HAS_INTERCEPTORS == 1
static CORBA::TypeCode_ptr const * const exceptions = 0;
static size_t const nexceptions = 0;
#endif /* TAO_HAS_INTERCEPTORS */
TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_val retval;
TAO::SArg_Traits< CORBA::Char *>::in_arg_val _tao_user_name;
TAO::SArg_Traits< CORBA::Char *>::in_arg_val _tao_subject;
TAO::SArg_Traits< CORBA::Char *>::inout_arg_val _tao_message;
TAO::Argument * const args[] =
{
&retval,
&_tao_user_name,
&_tao_subject,
&_tao_message
};
static size_t const nargs = 4;
POA_Messenger * const impl =
static_cast<POA_Messenger *> (servant);
send_message_Messenger command (
impl,
server_request.operation_details (),
args);
TAO::Upcall_Wrapper upcall_wrapper;
upcall_wrapper.upcall (server_request
, args
, nargs
, command
#if TAO_HAS_INTERCEPTORS == 1
, servant_upcall
, exceptions
, nexceptions
#endif /* TAO_HAS_INTERCEPTORS == 1 */
ACE_ENV_ARG_PARAMETER);
ACE_CHECK;
}
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:169
// TAO_IDL - Generated from
// D:\tao\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_operation/upcall_command_ss.cpp:127
class _is_a_Messenger_Upcall_Command
: public TAO::Upcall_Command
{
public:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -