summaryrefslogtreecommitdiff
path: root/TAO/tao/PortableServer/BD_String_SArgument_T.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/PortableServer/BD_String_SArgument_T.h')
-rw-r--r--TAO/tao/PortableServer/BD_String_SArgument_T.h78
1 files changed, 30 insertions, 48 deletions
diff --git a/TAO/tao/PortableServer/BD_String_SArgument_T.h b/TAO/tao/PortableServer/BD_String_SArgument_T.h
index 4ad82f430bc..e4cd49d1ab6 100644
--- a/TAO/tao/PortableServer/BD_String_SArgument_T.h
+++ b/TAO/tao/PortableServer/BD_String_SArgument_T.h
@@ -23,6 +23,7 @@
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include "tao/Argument.h"
+#include "tao/Any_Insert_Policy_T.h"
namespace TAO
{
@@ -36,15 +37,16 @@ namespace TAO
typename S_var,
typename to_S,
typename from_S,
- size_t BOUND>
- class In_BD_String_SArgument_T : public Argument
+ size_t BOUND,
+ typename Insert_Policy>
+ class In_BD_String_SArgument_T : public InArgument, private Insert_Policy
{
public:
In_BD_String_SArgument_T (void);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_param (Dynamic::Parameter &);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
const S * arg (void) const;
@@ -62,16 +64,17 @@ namespace TAO
typename S_var,
typename to_S,
typename from_S,
- size_t BOUND>
- class Inout_BD_String_SArgument_T : public Argument
+ size_t BOUND,
+ typename Insert_Policy>
+ class Inout_BD_String_SArgument_T : public InoutArgument, private Insert_Policy
{
public:
Inout_BD_String_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
+ virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_param (Dynamic::Parameter &);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S *& arg (void);
@@ -90,15 +93,16 @@ namespace TAO
typename S_out,
typename to_S,
typename from_S,
- size_t BOUND>
- class Out_BD_String_SArgument_T : public Argument
+ size_t BOUND,
+ typename Insert_Policy>
+ class Out_BD_String_SArgument_T : public OutArgument, private Insert_Policy
{
public:
Out_BD_String_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
+ virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_param (Dynamic::Parameter &);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S *& arg (void);
@@ -116,15 +120,16 @@ namespace TAO
typename S_var,
typename to_S,
typename from_S,
- size_t BOUND>
- class Ret_BD_String_SArgument_T : public Argument
+ size_t BOUND,
+ typename Insert_Policy>
+ class Ret_BD_String_SArgument_T : public RetArgument, private Insert_Policy
{
public:
Ret_BD_String_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
+ virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_result (CORBA::Any *);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S *& arg (void);
@@ -143,7 +148,8 @@ namespace TAO
typename T_out,
typename to_T,
typename from_T,
- size_t BOUND>
+ size_t BOUND,
+ typename Insert_Policy>
struct BD_String_SArg_Traits_T
{
typedef T * ret_type;
@@ -155,23 +161,27 @@ namespace TAO
T_var,
to_T,
from_T,
- BOUND> in_arg_val;
+ BOUND,
+ Insert_Policy> in_arg_val;
typedef Inout_BD_String_SArgument_T<T,
T_var,
to_T,
from_T,
- BOUND> inout_arg_val;
+ BOUND,
+ Insert_Policy> inout_arg_val;
typedef Out_BD_String_SArgument_T<T,
T_var,
T_out,
to_T,
from_T,
- BOUND> out_arg_val;
+ BOUND,
+ Insert_Policy> out_arg_val;
typedef Ret_BD_String_SArgument_T<T,
T_var,
to_T,
from_T,
- BOUND> ret_val;
+ BOUND,
+ Insert_Policy> ret_val;
// Typedefs corresponding to return value of arg() method in both
// the client and server side argument class templates.
@@ -181,34 +191,6 @@ namespace TAO
typedef inout_type ret_arg_type;
};
-
- /**
- *
- * @brief Specializations for bounded (w)strings
- *
- */
-
- template<size_t BOUND>
- class BD_String_SArg_Traits
- : public BD_String_SArg_Traits_T<CORBA::Char,
- CORBA::String_var,
- CORBA::String_out,
- ACE_InputCDR::to_string,
- ACE_OutputCDR::from_string,
- BOUND>
- {
- };
-
- template<size_t BOUND>
- class BD_WString_SArg_Traits
- : public BD_String_SArg_Traits_T<CORBA::WChar,
- CORBA::WString_var,
- CORBA::WString_out,
- ACE_InputCDR::to_wstring,
- ACE_OutputCDR::from_wstring,
- BOUND>
- {
- };
}
#if defined (__ACE_INLINE__)