#include <PolicyS.h>
Inheritance diagram for POA_CORBA::Policy:
Public Types | |
typedef ::CORBA::Policy | _stub_type |
typedef ::CORBA::Policy_ptr | _stub_ptr_type |
typedef ::CORBA::Policy_var | _stub_var_type |
Public Member Functions | |
Policy (const Policy &rhs) | |
virtual | ~Policy (void) |
virtual CORBA::Boolean | _is_a (const char *logical_type_id) |
Local implementation of the CORBA::Object::_is_a method. | |
virtual void | _dispatch (TAO_ServerRequest &req, void *servant_upcall) |
::CORBA::Policy * | _this () |
virtual const char * | _interface_repository_id (void) const |
Get this interface's repository id (TAO specific). | |
virtual CORBA::PolicyType | policy_type ()=0 throw ( CORBA::SystemException ) |
virtual::CORBA::Policy_ptr | copy ()=0 throw ( CORBA::SystemException ) |
virtual void | destroy ()=0 throw ( CORBA::SystemException ) |
Static Public Member Functions | |
void | _is_a_skel (TAO_ServerRequest &req, void *servant_upcall, void *servant) |
void | _non_existent_skel (TAO_ServerRequest &req, void *servant_upcall, void *servant) |
void | _interface_skel (TAO_ServerRequest &req, void *servant_upcall, void *servant) |
void | _component_skel (TAO_ServerRequest &req, void *servant_upcall, void *servant) |
void | _get_policy_type_skel (TAO_ServerRequest &server_request, void *servant_upcall, void *servant) |
void | copy_skel (TAO_ServerRequest &server_request, void *servant_upcall, void *servant) |
void | destroy_skel (TAO_ServerRequest &server_request, void *servant_upcall, void *servant) |
Protected Member Functions | |
Policy (void) |
|
|
|
|
|
|
|
Definition at line 414 of file PolicyS.cpp. References tao_CORBA_Policy_optable.
00415 : TAO_ServantBase () 00416 { 00417 this->optable_ = &tao_CORBA_Policy_optable; 00418 } |
|
Definition at line 420 of file PolicyS.cpp.
00421 : TAO_Abstract_ServantBase (rhs), 00422 TAO_ServantBase (rhs) 00423 { 00424 } |
|
Definition at line 426 of file PolicyS.cpp.
00427 { 00428 } |
|
|
|
Dispatches a request to the object: find the operation, cast the type to the most derived type, demarshall all the parameters from the request and finally invokes the operation, storing the results and out parameters (if any) or the exceptions thrown into request. Implements TAO_ServantBase. Definition at line 1041 of file PolicyS.cpp. References ACE_ENV_ARG_PARAMETER, and TAO_ServantBase::synchronous_upcall_dispatch().
01046 { 01047 this->synchronous_upcall_dispatch (req, 01048 servant_upcall, 01049 this 01050 ACE_ENV_ARG_PARAMETER); 01051 } |
|
|
|
Get this interface's repository id (TAO specific).
Implements TAO_ServantBase. Definition at line 1033 of file PolicyS.cpp.
01034 { 01035 return "IDL:omg.org/CORBA/Policy:1.0"; 01036 } |
|
Definition at line 886 of file PolicyS.cpp. References TAO_ServantBase::_get_interface(), ACE_CHECK, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, TAO_IFR_Client_Adapter::dispose(), TAO_ServerRequest::init_reply(), ACE_Dynamic_Service< TYPE >::instance(), TAO_IFR_Client_Adapter::interfacedef_cdr_insert(), and TAO_ServerRequest::outgoing().
00892 { 00893 TAO_IFR_Client_Adapter *_tao_adapter = 00894 ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance ( 00895 TAO_ORB_Core::ifr_client_adapter_name () 00896 ); 00897 00898 if (_tao_adapter == 0) 00899 { 00900 ACE_THROW (CORBA::INTF_REPOS (CORBA::OMGVMCID | 1, 00901 CORBA::COMPLETED_NO)); 00902 } 00903 00904 POA_CORBA::Policy * const impl = 00905 static_cast<POA_CORBA::Policy *> (servant); 00906 CORBA::InterfaceDef_ptr _tao_retval = 00907 impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER); 00908 ACE_CHECK; 00909 00910 server_request.init_reply (); 00911 TAO_OutputCDR &_tao_out = *server_request.outgoing (); 00912 00913 CORBA::Boolean const _tao_result = 00914 _tao_adapter->interfacedef_cdr_insert ( 00915 _tao_out, 00916 _tao_retval 00917 ); 00918 00919 _tao_adapter->dispose (_tao_retval); 00920 00921 if (_tao_result == 0) 00922 { 00923 ACE_THROW (CORBA::MARSHAL ()); 00924 } 00925 } |
|
Local implementation of the CORBA::Object::_is_a method.
Reimplemented from TAO_ServantBase. Definition at line 1015 of file PolicyS.cpp. References ACE_OS::strcmp().
01019 { 01020 return 01021 ( 01022 !ACE_OS::strcmp ( 01023 value, 01024 "IDL:omg.org/CORBA/Policy:1.0" 01025 ) || 01026 !ACE_OS::strcmp ( 01027 value, 01028 "IDL:omg.org/CORBA/Object:1.0" 01029 ) 01030 ); 01031 } |
|
|
|
|
|
Definition at line 1057 of file PolicyS.cpp. References TAO_ServantBase::_create_stub(), CORBA::Object::_nil(), ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_NEW_RETURN, CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer, TAO_Stub_Auto_Ptr::release(), TAO_Stub::servant_orb_var(), and TAO::Narrow_Utils< T >::unchecked_narrow().
01058 { 01059 TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER); 01060 ACE_CHECK_RETURN (0); 01061 01062 TAO_Stub_Auto_Ptr safe_stub (stub); 01063 CORBA::Object_ptr tmp = CORBA::Object::_nil (); 01064 01065 CORBA::Boolean _tao_opt_colloc = 01066 stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects (); 01067 01068 ACE_NEW_RETURN ( 01069 tmp, 01070 CORBA::Object (stub, _tao_opt_colloc, this), 01071 0 01072 ); 01073 01074 CORBA::Object_var obj = tmp; 01075 (void) safe_stub.release (); 01076 01077 typedef ::CORBA::Policy STUB_SCOPED_NAME; 01078 return 01079 TAO::Narrow_Utils<STUB_SCOPED_NAME>::unchecked_narrow ( 01080 obj.in (), 01081 CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer 01082 ); 01083 } |
|
|
|
|
|
|
|
|
|
|