summaryrefslogtreecommitdiff
path: root/TAO/tao/UB_String_Argument_T.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/UB_String_Argument_T.cpp')
-rw-r--r--TAO/tao/UB_String_Argument_T.cpp217
1 files changed, 115 insertions, 102 deletions
diff --git a/TAO/tao/UB_String_Argument_T.cpp b/TAO/tao/UB_String_Argument_T.cpp
index f9f459b552b..6cb066d2b50 100644
--- a/TAO/tao/UB_String_Argument_T.cpp
+++ b/TAO/tao/UB_String_Argument_T.cpp
@@ -10,7 +10,7 @@ ACE_RCSID (tao,
"$Id$")
template<typename S>
-TAO::In_UB_String_Argument_T<S>::In_UB_String_Argument_T (S * const & x)
+TAO::In_UB_String_Argument_T<S>::In_UB_String_Argument_T (const S * x)
: x_ (x)
{}
@@ -22,18 +22,18 @@ TAO::In_UB_String_Argument_T<S>::marshal (TAO_OutputCDR & cdr)
}
template<typename S>
-CORBA::Boolean
-TAO::In_UB_String_Argument_T<S>::demarshal (TAO_InputCDR &)
+void
+TAO::In_UB_String_Argument_T<S>::interceptor_param (Dynamic::Parameter & p)
{
- return 1;
+ p.argument <<= this->x_;
+ p.mode = CORBA::PARAM_IN;
}
template<typename S>
-void
-TAO::In_UB_String_Argument_T<S>::add_to_interceptor (Dynamic::Parameter & p)
+CORBA::Boolean
+TAO::In_UB_String_Argument_T<S>::interceptor_replace (CORBA::Any & any)
{
- p.argument <<= this->x_;
- p.mode = CORBA::PARAM_IN;
+ return any >>= this->x_;
}
// ===========================================================
@@ -54,204 +54,217 @@ template<typename S>
CORBA::Boolean
TAO::Inout_UB_String_Argument_T<S>::demarshal (TAO_InputCDR & cdr)
{
+ CORBA::string_free (this->x_);
return cdr >> this->x_;
}
template<typename S>
void
-TAO::Inout_UB_String_Argument_T<S>::add_to_interceptor (Dynamic::Parameter & p)
+TAO::Inout_UB_String_Argument_T<S>::interceptor_param (Dynamic::Parameter & p)
{
p.argument <<= this->x_;
p.mode = CORBA::PARAM_INOUT;
}
-// ==============================================================
-
-template<typename S>
-TAO::Out_UB_String_Argument_T<S>::Out_UB_String_Argument_T (S *& x)
- : x_ (x)
-{}
-
template<typename S>
CORBA::Boolean
-TAO::Out_UB_String_Argument_T<S>::marshal (TAO_OutputCDR &)
+TAO::Inout_UB_String_Argument_T<S>::interceptor_replace (CORBA::Any & any)
{
- return 1;
+ return any >>= this->x_;
}
-template<typename S>
+// ==============================================================
+
+template<typename S, typename S_out>
+TAO::Out_UB_String_Argument_T<S,S_out>::Out_UB_String_Argument_T (S_out & x)
+ : x_ (x.ptr ())
+{}
+
+template<typename S, typename S_out>
CORBA::Boolean
-TAO::Out_UB_String_Argument_T<S>::demarshal (TAO_InputCDR & cdr)
+TAO::Out_UB_String_Argument_T<S,S_out>::demarshal (TAO_InputCDR & cdr)
{
return cdr >> this->x_;
}
-template<typename S>
-void
-TAO::Out_UB_String_Argument_T<S>::add_to_interceptor (Dynamic::Parameter &)
+// ============================================================
+
+template<typename S, typename S_var>
+TAO::Ret_UB_String_Argument_T<S,S_var>::Ret_UB_String_Argument_T (void)
{
}
-// ============================================================
+template<typename S, typename S_var>
+CORBA::Boolean
+TAO::Ret_UB_String_Argument_T<S,S_var>::demarshal (TAO_InputCDR & cdr)
+{
+ return cdr >> this->x_.out ();
+}
-template<typename S>
-TAO::Ret_UB_String_Argument_T<S>::Ret_UB_String_Argument_T (void)
+template<typename S, typename S_var>
+void
+TAO::Ret_UB_String_Argument_T<S,S_var>::interceptor_result (CORBA::Any * any)
{
+ (*any) <<= this->x_.in ();
}
-template<typename S>
+template<typename S, typename S_var>
CORBA::Boolean
-TAO::Ret_UB_String_Argument_T<S>::demarshal (TAO_InputCDR & cdr)
+TAO::Ret_UB_String_Argument_T<S,S_var>::interceptor_replace (CORBA::Any & any)
{
- return cdr >> this->x_;
+ return any >>= this->x_;
}
-template<typename S>
-void
-TAO::Ret_UB_String_Argument_T<S>::add_to_interceptor (CORBA::Any * any)
+template<typename S, typename S_var>
+S *
+TAO::Ret_UB_String_Argument_T<S,S_var>::excp (void)
{
- (*any) <<= this->x_;
+ return this->x_.ptr ();
}
-template<typename S>
-TAO::Ret_UB_String_Argument_T<S>::operator S * () const
+template<typename S, typename S_var>
+S *
+TAO::Ret_UB_String_Argument_T<S,S_var>::retn (void)
{
- return this->x_;
+ return this->x_._retn ();
}
// ============================================================
-template<typename S>
-TAO::In_UB_String_SArgument_T<S>::In_UB_String_SArgument_T (void)
+template<typename S, typename S_var>
+TAO::In_UB_String_SArgument_T<S,S_var>::In_UB_String_SArgument_T (void)
{}
-template<typename S>
+template<typename S, typename S_var>
CORBA::Boolean
-TAO::In_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR &)
+TAO::In_UB_String_SArgument_T<S,S_var>::demarshal (TAO_InputCDR &cdr)
{
- return 1;
+ return cdr >> this->x_.out ();
}
-template<typename S>
-CORBA::Boolean
-TAO::In_UB_String_SArgument_T<S>::demarshal (TAO_InputCDR &cdr)
+template<typename S, typename S_var>
+void
+TAO::In_UB_String_SArgument_T<S,S_var>::interceptor_param (
+ Dynamic::Parameter & p
+ )
{
- return cdr >> this->x_;
+ p.argument <<= this->x_.in ();
+ p.mode = CORBA::PARAM_IN;
}
-template<typename S>
-void
-TAO::In_UB_String_SArgument_T<S>::add_to_interceptor (Dynamic::Parameter & p)
+template<typename S, typename S_var>
+CORBA::Boolean
+TAO::In_UB_String_SArgument_T<S,S_var>::interceptor_replace (CORBA::Any & any)
{
- p.argument <<= this->x_;
- p.mode = CORBA::PARAM_IN;
+ return any >>= this->x_.out ();
}
-template<typename S>
-TAO::In_UB_String_SArgument_T<S>::operator S * () const
+template<typename S, typename S_var>
+const S *
+TAO::In_UB_String_SArgument_T<S,S_var>::arg (void) const
{
- return this->x_;
+ return this->x_.in ();
}
// ===========================================================
-template<typename S>
-TAO::Inout_UB_String_SArgument_T<S>::Inout_UB_String_SArgument_T (void)
+template<typename S, typename S_var>
+TAO::Inout_UB_String_SArgument_T<S,S_var>::Inout_UB_String_SArgument_T (void)
{}
-template<typename S>
+template<typename S, typename S_var>
CORBA::Boolean
-TAO::Inout_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR & cdr)
+TAO::Inout_UB_String_SArgument_T<S,S_var>::marshal (TAO_OutputCDR & cdr)
{
- return cdr << this->x_;
+ return cdr << this->x_.in ();
}
-template<typename S>
+template<typename S, typename S_var>
CORBA::Boolean
-TAO::Inout_UB_String_SArgument_T<S>::demarshal (TAO_InputCDR & cdr)
+TAO::Inout_UB_String_SArgument_T<S,S_var>::demarshal (TAO_InputCDR & cdr)
{
- return cdr >> this->x_;
+ return cdr >> this->x_.out ();
}
-template<typename S>
+template<typename S, typename S_var>
void
-TAO::Inout_UB_String_SArgument_T<S>::add_to_interceptor (
+TAO::Inout_UB_String_SArgument_T<S,S_var>::interceptor_param (
Dynamic::Parameter & p
)
{
- p.argument <<= this->x_;
+ p.argument <<= this->x_.in ();
p.mode = CORBA::PARAM_INOUT;
}
-template<typename S>
-TAO::Inout_UB_String_SArgument_T<S>::operator S *& ()
+template<typename S, typename S_var>
+CORBA::Boolean
+TAO::Inout_UB_String_SArgument_T<S,S_var>::interceptor_replace (CORBA::Any & any)
{
- return this->x_;
+ return any >>= this->x_.out ();
+}
+
+template<typename S, typename S_var>
+S *&
+TAO::Inout_UB_String_SArgument_T<S,S_var>::arg (void)
+{
+ return this->x_.inout ();
}
// ==============================================================
-template<typename S>
-TAO::Out_UB_String_SArgument_T<S>::Out_UB_String_SArgument_T (void)
+template<typename S, typename S_var, typename S_out>
+TAO::Out_UB_String_SArgument_T<S,S_var,S_out>::Out_UB_String_SArgument_T (
+ void
+ )
{}
-template<typename S>
-CORBA::Boolean
-TAO::Out_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR &cdr)
-{
- return cdr << this->x_;
-}
-
-template<typename S>
+template<typename S, typename S_var, typename S_out>
CORBA::Boolean
-TAO::Out_UB_String_SArgument_T<S>::demarshal (TAO_InputCDR &)
-{
- return 1;
-}
-
-template<typename S>
-void
-TAO::Out_UB_String_SArgument_T<S>::add_to_interceptor (Dynamic::Parameter &)
+TAO::Out_UB_String_SArgument_T<S,S_var,S_out>::marshal (TAO_OutputCDR &cdr)
{
+ return cdr << this->x_.in ();
}
-template<typename S>
-TAO::Out_UB_String_SArgument_T<S>::operator S *& ()
+template<typename S, typename S_var, typename S_out>
+S_out
+TAO::Out_UB_String_SArgument_T<S,S_var,S_out>::arg (void)
{
- return this->x_;
+ return this->x_.out ();
}
// ============================================================
-template<typename S>
-TAO::Ret_UB_String_SArgument_T<S>::Ret_UB_String_SArgument_T (void)
+template<typename S, typename S_var>
+TAO::Ret_UB_String_SArgument_T<S,S_var>::Ret_UB_String_SArgument_T (void)
{
}
-template<typename S>
+template<typename S, typename S_var>
CORBA::Boolean
-TAO::Ret_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR & cdr)
+TAO::Ret_UB_String_SArgument_T<S,S_var>::marshal (TAO_OutputCDR & cdr)
{
- return cdr << this->x_;
+ return cdr << this->x_.in ();
}
-template<typename S>
+template<typename S, typename S_var>
void
-TAO::Ret_UB_String_SArgument_T<S>::add_to_interceptor (CORBA::Any * any)
+TAO::Ret_UB_String_SArgument_T<S,S_var>::interceptor_result (CORBA::Any * any)
{
- (*any) <<= this->x_;
+ (*any) <<= this->x_.in ();
}
-template<typename S>
-TAO::Ret_UB_String_SArgument_T<S>::operator S * () const
+template<typename S, typename S_var>
+CORBA::Boolean
+TAO::Ret_UB_String_SArgument_T<S,S_var>::interceptor_replace (CORBA::Any & any)
{
- return this->x_;
+ return any >>= this->x_.out ();
}
-template<typename S>
-TAO::Ret_UB_String_SArgument_T<S>::operator S *& ()
+template<typename S, typename S_var>
+S *&
+TAO::Ret_UB_String_SArgument_T<S,S_var>::arg (void)
{
- return this->x_;
+ return this->x_.out ();
}
#endif /* TAO_UB_STRING_ARGUMENT_T_C */