summaryrefslogtreecommitdiff
path: root/TAO/tao/PolicyS.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/PolicyS.cpp')
-rw-r--r--TAO/tao/PolicyS.cpp59
1 files changed, 23 insertions, 36 deletions
diff --git a/TAO/tao/PolicyS.cpp b/TAO/tao/PolicyS.cpp
index 3e022a5d9a1..dbd2a47d92f 100644
--- a/TAO/tao/PolicyS.cpp
+++ b/TAO/tao/PolicyS.cpp
@@ -182,52 +182,39 @@ void POA_CORBA::Policy::_is_a_skel (
CORBA::Environment &ACE_TRY_ENV
)
{
- static const TAO_Param_Data_Skel CORBA_Policy_is_a_paramdata [] =
- {
- {CORBA::_tc_boolean, 0, 0},
- {CORBA::_tc_string, CORBA::ARG_IN, 0}
- };
- static const TAO_Call_Data_Skel CORBA_Policy_is_a_calldata =
- {"_is_a", 1, 2, CORBA_Policy_is_a_paramdata};
- POA_CORBA::Policy_ptr _tao_impl = (POA_CORBA::Policy_ptr) _tao_object_reference;
- CORBA::Boolean _tao_retval;
- CORBA::String_var _tao_value;
- _tao_server_request.demarshal (
- ACE_TRY_ENV,
- &CORBA_Policy_is_a_calldata,
- &_tao_retval,
- &_tao_value.inout ()
- );
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA::Policy *_tao_impl = (POA_CORBA::Policy *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = 0;
+ CORBA::String_var value;
+ if (!((_tao_in >> value.out ())))
+ ACE_THROW (CORBA::MARSHAL ());
+
+ _tao_retval = _tao_impl->_is_a (value.in (), ACE_TRY_ENV);
ACE_CHECK;
- _tao_retval = _tao_impl->_is_a (_tao_value.in (), ACE_TRY_ENV);
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
ACE_CHECK;
- _tao_server_request.marshal (
- ACE_TRY_ENV,
- &CORBA_Policy_is_a_calldata,
- &_tao_retval,
- &_tao_value.inout ()
- );
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!((_tao_out << CORBA::Any::from_boolean (_tao_retval))))
+ ACE_THROW (CORBA::MARSHAL ());
}
void POA_CORBA::Policy::_non_existent_skel (
CORBA::ServerRequest &_tao_server_request,
- void * /* _tao_object_reference */ ,
+ void * _tao_object_reference ,
void * /*context*/,
CORBA::Environment &ACE_TRY_ENV
)
{
- static const TAO_Param_Data_Skel CORBA_Policy_non_existent_paramdata [] =
- {
- {CORBA::_tc_boolean, 0, 0}
- };
- static const TAO_Call_Data_Skel CORBA_Policy_non_existent_calldata =
- {"_non_existent", 1, 1, CORBA_Policy_non_existent_paramdata};
- CORBA::Boolean _tao_retval = 0;
- _tao_server_request.marshal (
- ACE_TRY_ENV,
- &CORBA_Policy_non_existent_calldata,
- &_tao_retval
- );
+ POA_CORBA::Policy *_tao_impl = (POA_CORBA::Policy *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!((_tao_out << CORBA::Any::from_boolean (_tao_retval))))
+ ACE_THROW (CORBA::MARSHAL ());
}
void POA_CORBA::Policy::_dispatch (CORBA::ServerRequest &req, void *context, CORBA::Environment &ACE_TRY_ENV)