#ifndef TAO_BD_STRING_SARGUMENT_T_CPP #define TAO_BD_STRING_SARGUMENT_T_CPP #if defined (ACE_TEMPLATES_REQUIRE_PRAGMA) #include "tao/PortableServer/BD_String_SArgument_T.h" #endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */ #include "tao/SystemException.h" #if !defined (__ACE_INLINE__) #include "tao/PortableServer/BD_String_SArgument_T.inl" #endif /* __ACE_INLINE__ */ TAO_BEGIN_VERSIONED_NAMESPACE_DECL template class Insert_Policy> CORBA::Boolean TAO::In_BD_String_SArgument_T::demarshal ( TAO_InputCDR & cdr) { CORBA::Boolean const demarshalled = cdr >> this->x_.out (); if (this->x_.in () != 0 && ACE_OS::strlen (this->x_.in ()) > BOUND) { throw ::CORBA::BAD_PARAM (); } return demarshalled; } #if TAO_HAS_INTERCEPTORS == 1 template class Insert_Policy> void TAO::In_BD_String_SArgument_T::interceptor_value ( CORBA::Any *any) const { typedef typename S_var::s_traits::from_type from_type; Insert_Policy::any_insert ( any, from_type (this->x_.in (), BOUND)); } #endif /* TAO_HAS_INTERCEPTORS */ // =========================================================== template class Insert_Policy> CORBA::Boolean TAO::Inout_BD_String_SArgument_T::marshal ( TAO_OutputCDR & cdr) { if (this->x_.in () != 0 && ACE_OS::strlen (this->x_.in ()) > BOUND) { throw ::CORBA::BAD_PARAM (); } return cdr << this->x_.in (); } template class Insert_Policy> CORBA::Boolean TAO::Inout_BD_String_SArgument_T::demarshal ( TAO_InputCDR & cdr) { CORBA::Boolean const demarshalled = cdr >> this->x_.out (); if (this->x_.in () != 0 && ACE_OS::strlen (this->x_.in ()) > BOUND) { throw ::CORBA::BAD_PARAM (); } return demarshalled; } #if TAO_HAS_INTERCEPTORS == 1 template class Insert_Policy> void TAO::Inout_BD_String_SArgument_T:: interceptor_value (CORBA::Any *any) const { typedef typename S_var::s_traits::from_type from_type; Insert_Policy::any_insert ( any, from_type (this->x_.in (), BOUND)); } #endif /* TAO_HAS_INTERCEPTORS */ // ============================================================== template class Insert_Policy> CORBA::Boolean TAO::Out_BD_String_SArgument_T::marshal ( TAO_OutputCDR &cdr) { if (this->x_.in () != 0 && ACE_OS::strlen (this->x_.in ()) > BOUND) { throw ::CORBA::BAD_PARAM (); } return cdr << this->x_.in (); } #if TAO_HAS_INTERCEPTORS == 1 template class Insert_Policy> void TAO::Out_BD_String_SArgument_T:: interceptor_value (CORBA::Any *any) const { typedef typename S_var::s_traits::from_type from_type; Insert_Policy::any_insert ( any, from_type (this->x_.in (), BOUND)); } #endif /* TAO_HAS_INTERCEPTORS */ // ============================================================ template class Insert_Policy> CORBA::Boolean TAO::Ret_BD_String_SArgument_T::marshal ( TAO_OutputCDR & cdr ) { if (this->x_.in () != 0 && ACE_OS::strlen (this->x_.in ()) > BOUND) { throw ::CORBA::BAD_PARAM (); } return cdr << this->x_.in (); } #if TAO_HAS_INTERCEPTORS == 1 template class Insert_Policy> void TAO::Ret_BD_String_SArgument_T:: interceptor_value (CORBA::Any *any) const { typedef typename S_var::s_traits::from_type from_type; Insert_Policy::any_insert ( any, from_type (this->x_.in (), BOUND) ); } #endif /* TAO_HAS_INTERCEPTORS */ TAO_END_VERSIONED_NAMESPACE_DECL #endif /* TAO_BD_STRING_SARGUMENT_T_CPP */