summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-06-20 03:26:56 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-06-20 03:26:56 +0000
commiteb2ad7c29c77760d8b894e9f8ae9f5cdd7341b45 (patch)
treeaf43e395416d2147cc648e96d4e2c4f80d67a6c1
parenta3d0abb40d3a69b0b4383574c50601a485c19eb6 (diff)
downloadATCD-eb2ad7c29c77760d8b894e9f8ae9f5cdd7341b45.tar.gz
ChangeLogTag: Thu Jun 19 22:24:47 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--TAO/tao/BD_String_Argument_T.cpp238
-rw-r--r--TAO/tao/BD_String_Argument_T.h2
-rw-r--r--TAO/tao/Basic_Argument_T.cpp95
-rw-r--r--TAO/tao/Basic_Argument_T.h38
-rw-r--r--TAO/tao/Special_Basic_Argument_T.cpp131
-rw-r--r--TAO/tao/Special_Basic_Argument_T.h44
6 files changed, 322 insertions, 226 deletions
diff --git a/TAO/tao/BD_String_Argument_T.cpp b/TAO/tao/BD_String_Argument_T.cpp
index 9323deed576..797f5ce16ab 100644
--- a/TAO/tao/BD_String_Argument_T.cpp
+++ b/TAO/tao/BD_String_Argument_T.cpp
@@ -37,7 +37,9 @@ TAO::In_BD_String_Argument_T<S,to_S,from_S,BOUND>::interceptor_param (
template<typename S, typename to_S, typename from_S, size_t BOUND>
CORBA::Boolean
-TAO::In_BD_String_Argument_T<S,to_S,from_S,BOUND>::interceptor_replace (CORBA::Any & any)
+TAO::In_BD_String_Argument_T<S,to_S,from_S,BOUND>::interceptor_replace (
+ CORBA::Any & any
+ )
{
return any >>= to_S (this->x_, BOUND);
}
@@ -80,21 +82,30 @@ TAO::Inout_BD_String_Argument_T<S,to_S,from_S,BOUND>::interceptor_param (
template<typename S, typename to_S, typename from_S, size_t BOUND>
CORBA::Boolean
-TAO::Inout_BD_String_Argument_T<S,to_S,from_S,BOUND>::interceptor_replace (CORBA::Any & any)
+TAO::Inout_BD_String_Argument_T<S,to_S,from_S,BOUND>::interceptor_replace (
+ CORBA::Any & any
+ )
{
return any >>= to_S (this->x_, BOUND);
}
// ==============================================================
-template<typename S, typename S_out, typename to_S, typename from_S, size_t BOUND>
-TAO::Out_BD_String_Argument_T<S,S_out,to_S,from_S,BOUND>::Out_BD_String_Argument_T (
- S *& x
- )
- : x_ (x)
+template<typename S,
+ typename S_out,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
+TAO::Out_BD_String_Argument_T<S,S_out,to_S,from_S,BOUND>::
+Out_BD_String_Argument_T (S_out x)
+ : x_ (x.ptr ())
{}
-template<typename S, typename S_out, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_out,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
TAO::Out_BD_String_Argument_T<S,S_out,to_S,from_S,BOUND>::demarshal (
TAO_InputCDR & cdr
@@ -105,46 +116,70 @@ TAO::Out_BD_String_Argument_T<S,S_out,to_S,from_S,BOUND>::demarshal (
// ============================================================
-template<typename S, typename S_var, typename to_S, typename from_S, size_t BOUND>
-TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::Ret_BD_String_Argument_T (
- void
- )
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
+TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::
+Ret_BD_String_Argument_T (void)
{
}
-template<typename S, typename S_var, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::demarshal (
TAO_InputCDR & cdr
)
{
- return cdr >> to_S (this->x_, BOUND);
+ return cdr >> to_S (this->x_.out (), BOUND);
}
-template<typename S, typename S_var, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
void
TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::interceptor_result (
CORBA::Any * any
)
{
- (*any) <<= from_S (this->x_, BOUND);
+ (*any) <<= from_S (this->x_.in (), BOUND);
}
-template<typename S, typename S_var, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::interceptor_replace (CORBA::Any & any)
+TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::
+interceptor_replace (CORBA::Any & any)
{
- return any >>= to_S (this->x_, BOUND);
+ return any >>= to_S (this->x_.out (), BOUND);
}
-template<typename S, typename S_var, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
S *
TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::excp (void)
{
return this->x_.ptr ();
}
-template<typename S, typename S_var, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
S *
TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::retn (void)
{
@@ -153,24 +188,31 @@ TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::retn (void)
// ============================================================
-template<typename S, typename to_S, typename from_S, size_t BOUND>
-TAO::In_BD_String_SArgument_T<S,to_S,from_S,BOUND>::In_BD_String_SArgument_T (
- void
- )
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
+TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
+In_BD_String_SArgument_T (void)
{}
template<typename S, typename to_S, typename from_S, size_t BOUND>
CORBA::Boolean
-TAO::In_BD_String_SArgument_T<S,to_S,from_S,BOUND>::demarshal (
+TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::demarshal (
TAO_InputCDR & cdr
)
{
return cdr >> to_S (this->x_.out (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
void
-TAO::In_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_param (
+TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::interceptor_param (
Dynamic::Parameter & p
)
{
@@ -178,128 +220,196 @@ TAO::In_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_param (
p.mode = CORBA::PARAM_IN;
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::In_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_replace (CORBA::Any & any)
+TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
+interceptor_replace (CORBA::Any & any)
{
return any >>= to_S (this->x_.out (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
const S *
-TAO::In_BD_String_SArgument_T<S,to_S,from_S,BOUND>::arg (void) const
+TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::arg (void) const
{
return this->x_.in ();
}
// ===========================================================
-template<typename S, typename to_S, typename from_S, size_t BOUND>
-TAO::Inout_BD_String_SArgument_T<S,to_S,from_S,BOUND>::
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
+TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
Inout_BD_String_SArgument_T (void)
{}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Inout_BD_String_SArgument_T<S,to_S,from_S,BOUND>::marshal (
+TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::marshal (
TAO_OutputCDR & cdr
)
{
return cdr << from_S (this->x_.in (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Inout_BD_String_SArgument_T<S,to_S,from_S,BOUND>::demarshal (
+TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::demarshal (
TAO_InputCDR & cdr
)
{
return cdr >> to_S (this->x_.out (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
void
-TAO::Inout_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_param (
- Dynamic::Parameter & p
- )
+TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
+interceptor_param (Dynamic::Parameter & p)
{
p.argument <<= from_S (this->x_.in (), BOUND);
p.mode = CORBA::PARAM_INOUT;
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Inout_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_replace (CORBA::Any & any)
+TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
+interceptor_replace (CORBA::Any & any)
{
return any >>= to_S (this->x_.in (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
S *&
-TAO::Inout_BD_String_SArgument_T<S,to_S,from_S,BOUND>::arg (void)
+TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::arg (void)
{
return this->x_.inout ();
}
// ==============================================================
-template<typename S, typename to_S, typename from_S, size_t BOUND>
-TAO::Out_BD_String_SArgument_T<S,to_S,from_S,BOUND>::
+template<typename S,
+ typename S_var,
+ typename S_out,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
+TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND>::
Out_BD_String_SArgument_T (void)
{}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename S_out,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Out_BD_String_SArgument_T<S,to_S,from_S,BOUND>::marshal (
+TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND>::marshal (
TAO_OutputCDR &cdr
)
{
return cdr << from_S (this->x_.in (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename S_out,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
S_out
-TAO::Out_BD_String_SArgument_T<S,to_S,from_S,BOUND>::arg (void)
+TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND>::arg (void)
{
return this->x_.out ();
}
// ============================================================
-template<typename S, typename to_S, typename from_S, size_t BOUND>
-TAO::Ret_BD_String_SArgument_T<S,to_S,from_S,BOUND>::
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
+TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
Ret_BD_String_SArgument_T (void)
{
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Ret_BD_String_SArgument_T<S,to_S,from_S,BOUND>::marshal (
+TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::marshal (
TAO_OutputCDR & cdr
)
{
return cdr << from_S (this->x_.in (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
void
-TAO::Ret_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_result (
- CORBA::Any * any
- )
+TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
+interceptor_result (CORBA::Any * any)
{
(*any) <<= from_S (this->x_.in (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
CORBA::Boolean
-TAO::Ret_BD_String_SArgument_T<S,to_S,from_S,BOUND>::interceptor_replace (CORBA::Any & any)
+TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::
+interceptor_replace (CORBA::Any & any)
{
return any >>= to_S (this->x_.out (), BOUND);
}
-template<typename S, typename to_S, typename from_S, size_t BOUND>
+template<typename S,
+ typename S_var,
+ typename to_S,
+ typename from_S,
+ size_t BOUND>
S *&
-TAO::Ret_BD_String_SArgument_T<S,to_S,from_S,BOUND>::arg (void)
+TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::arg (void)
{
return this->x_.out ();
}
diff --git a/TAO/tao/BD_String_Argument_T.h b/TAO/tao/BD_String_Argument_T.h
index 58a6733fbce..35b3faca420 100644
--- a/TAO/tao/BD_String_Argument_T.h
+++ b/TAO/tao/BD_String_Argument_T.h
@@ -141,7 +141,7 @@ namespace TAO
const S * arg (void) const;
private:
- S * x_;
+ S_var x_;
};
/**
diff --git a/TAO/tao/Basic_Argument_T.cpp b/TAO/tao/Basic_Argument_T.cpp
index e102408930d..2416bfe041d 100644
--- a/TAO/tao/Basic_Argument_T.cpp
+++ b/TAO/tao/Basic_Argument_T.cpp
@@ -22,13 +22,6 @@ TAO::In_Basic_Argument_T<S>::marshal (TAO_OutputCDR & cdr)
}
template<typename S>
-CORBA::Boolean
-TAO::In_Basic_Argument_T<S>::demarshal (TAO_InputCDR &)
-{
- return 1;
-}
-
-template<typename S>
void
TAO::In_Basic_Argument_T<S>::interceptor_param (Dynamic::Parameter & p)
{
@@ -36,6 +29,13 @@ TAO::In_Basic_Argument_T<S>::interceptor_param (Dynamic::Parameter & p)
p.mode = CORBA::PARAM_IN;
}
+template<typename S>
+CORBA::Boolean
+TAO::In_Basic_Argument_T<S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= this->x_;
+}
+
// ===========================================================
template<typename S>
@@ -65,6 +65,13 @@ TAO::Inout_Basic_Argument_T<S>::interceptor_param (Dynamic::Parameter & p)
p.mode = CORBA::PARAM_INOUT;
}
+template<typename S>
+CORBA::Boolean
+TAO::Inout_Basic_Argument_T<S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= this->x_;
+}
+
// ==============================================================
template<typename S>
@@ -74,13 +81,6 @@ TAO::Out_Basic_Argument_T<S>::Out_Basic_Argument_T (S & x)
template<typename S>
CORBA::Boolean
-TAO::Out_Basic_Argument_T<S>::marshal (TAO_OutputCDR &)
-{
- return 1;
-}
-
-template<typename S>
-CORBA::Boolean
TAO::Out_Basic_Argument_T<S>::demarshal (TAO_InputCDR & cdr)
{
return cdr >> this->x_;
@@ -95,13 +95,6 @@ TAO::Ret_Basic_Argument_T<S>::Ret_Basic_Argument_T (void)
template<typename S>
CORBA::Boolean
-TAO::Ret_Basic_Argument_T<S>::marshal (TAO_OutputCDR &)
-{
- return 1;
-}
-
-template<typename S>
-CORBA::Boolean
TAO::Ret_Basic_Argument_T<S>::demarshal (TAO_InputCDR & cdr)
{
return cdr >> this->x_;
@@ -115,7 +108,15 @@ TAO::Ret_Basic_Argument_T<S>::interceptor_result (CORBA::Any * any)
}
template<typename S>
-TAO::Ret_Basic_Argument_T<S>::operator S () const
+CORBA::Boolean
+TAO::Ret_Basic_Argument_T<S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= this->x_;
+}
+
+template<typename S>
+S
+TAO::Ret_Basic_Argument_T<S>::excp (void)
{
return this->x_;
}
@@ -135,13 +136,6 @@ TAO::In_Basic_SArgument_T<S>::In_Basic_SArgument_T (void)
template<typename S>
CORBA::Boolean
-TAO::In_Basic_SArgument_T<S>::marshal (TAO_OutputCDR &)
-{
- return 1;
-}
-
-template<typename S>
-CORBA::Boolean
TAO::In_Basic_SArgument_T<S>::demarshal (TAO_InputCDR &cdr)
{
return cdr >> this->x_;
@@ -156,7 +150,15 @@ TAO::In_Basic_SArgument_T<S>::interceptor_param (Dynamic::Parameter & p)
}
template<typename S>
-TAO::In_Basic_SArgument_T<S>::operator S () const
+CORBA::Boolean
+TAO::In_Basic_SArgument_T<S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= this->x_;
+}
+
+template<typename S>
+S
+TAO::In_Basic_SArgument_T<S>::arg (void) const
{
return this->x_;
}
@@ -190,7 +192,15 @@ TAO::Inout_Basic_SArgument_T<S>::interceptor_param (Dynamic::Parameter & p)
}
template<typename S>
-TAO::Inout_Basic_SArgument_T<S>::operator S & ()
+CORBA::Boolean
+TAO::Inout_Basic_SArgument_T<S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= this->x_;
+}
+
+template<typename S>
+S &
+TAO::Inout_Basic_SArgument_T<S>::arg (void)
{
return this->x_;
}
@@ -209,10 +219,10 @@ TAO::Out_Basic_SArgument_T<S>::marshal (TAO_OutputCDR &cdr)
}
template<typename S>
-CORBA::Boolean
-TAO::Out_Basic_SArgument_T<S>::demarshal (TAO_InputCDR &)
+S &
+TAO::Out_Basic_SArgument_T<S>::arg (void)
{
- return 1;
+ return this->x_;
}
// ============================================================
@@ -230,13 +240,6 @@ TAO::Ret_Basic_SArgument_T<S>::marshal (TAO_OutputCDR & cdr)
}
template<typename S>
-CORBA::Boolean
-TAO::Ret_Basic_SArgument_T<S>::demarshal (TAO_InputCDR &)
-{
- return 1;
-}
-
-template<typename S>
void
TAO::Ret_Basic_SArgument_T<S>::interceptor_result (CORBA::Any * any)
{
@@ -244,15 +247,15 @@ TAO::Ret_Basic_SArgument_T<S>::interceptor_result (CORBA::Any * any)
}
template<typename S>
-TAO::Ret_Basic_SArgument_T<S> &
-TAO::Ret_Basic_SArgument_T<S>::operator= (const S & rhs)
+CORBA::Boolean
+TAO::Ret_Basic_SArgument_T<S>::interceptor_replace (CORBA::Any & any)
{
- this->x_ = rhs;
- return *this;
+ return any >>= this->x_;
}
template<typename S>
-TAO::Ret_Basic_SArgument_T<S>::operator S () const
+S &
+TAO::Ret_Basic_SArgument_T<S>::arg (void)
{
return this->x_;
}
diff --git a/TAO/tao/Basic_Argument_T.h b/TAO/tao/Basic_Argument_T.h
index af3fe4f7894..9dcae9db3fb 100644
--- a/TAO/tao/Basic_Argument_T.h
+++ b/TAO/tao/Basic_Argument_T.h
@@ -37,8 +37,9 @@ namespace TAO
In_Basic_Argument_T (S const & x);
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
- virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void interceptor_param (Dynamic::Parameter &s);
+
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
private:
S const & x_;
@@ -58,7 +59,9 @@ namespace TAO
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void interceptor_param (Dynamic::Parameter &s);
+
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
private:
mutable S & x_;
@@ -76,7 +79,6 @@ namespace TAO
public:
Out_Basic_Argument_T (S & x);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
private:
@@ -95,11 +97,12 @@ namespace TAO
public:
Ret_Basic_Argument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
+
virtual void interceptor_result (CORBA::Any *);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
- operator S () const;
+ S excp (void);
S retn (void);
private:
@@ -118,11 +121,12 @@ namespace TAO
public:
In_Basic_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void interceptor_param (Dynamic::Parameter &s);
- operator S () const;
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
+
+ S arg (void) const;
private:
S x_;
@@ -142,9 +146,11 @@ namespace TAO
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void interceptor_param (Dynamic::Parameter &s);
- operator S & ();
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
+
+ S & arg (void);
private:
S x_;
@@ -163,10 +169,8 @@ namespace TAO
Out_Basic_SArgument_T (void);
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
- virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (CORBA::Any &);
- operator S & ();
+ S & arg (void);
private:
S x_;
@@ -185,11 +189,11 @@ namespace TAO
Ret_Basic_SArgument_T (void);
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
- virtual CORBA::Boolean demarshal (TAO_InputCDR &);
+
virtual void interceptor_result (CORBA::Any *);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
- Ret_Basic_SArgument_T<S> & operator= (const S & rhs);
- operator S () const;
+ S & arg (void);
private:
S x_;
diff --git a/TAO/tao/Special_Basic_Argument_T.cpp b/TAO/tao/Special_Basic_Argument_T.cpp
index 0f4b7c81c29..44b11743bbc 100644
--- a/TAO/tao/Special_Basic_Argument_T.cpp
+++ b/TAO/tao/Special_Basic_Argument_T.cpp
@@ -24,15 +24,8 @@ TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::marshal (TAO_OutputCDR & cdr)
}
template<typename S, typename to_S, typename from_S>
-CORBA::Boolean
-TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::demarshal (TAO_InputCDR &)
-{
- return 1;
-}
-
-template<typename S, typename to_S, typename from_S>
void
-TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
+TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::interceptor_param (
Dynamic::Parameter & p
)
{
@@ -40,6 +33,13 @@ TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
p.mode = CORBA::PARAM_IN;
}
+template<typename S, typename to_S, typename from_S>
+CORBA::Boolean
+TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= to_S (this->x_);
+}
+
// ===========================================================
template<typename S, typename to_S, typename from_S>
@@ -68,7 +68,7 @@ TAO::Inout_Special_Basic_Argument_T<S,to_S,from_S>::demarshal (
template<typename S, typename to_S, typename from_S>
void
-TAO::Inout_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
+TAO::Inout_Special_Basic_Argument_T<S,to_S,from_S>::interceptor_param (
Dynamic::Parameter & p
)
{
@@ -76,6 +76,13 @@ TAO::Inout_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
p.mode = CORBA::PARAM_INOUT;
}
+template<typename S, typename to_S, typename from_S>
+CORBA::Boolean
+TAO::Inout_Special_Basic_Argument_T<S,to_S,from_S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= to_S (this->x_);
+}
+
// ==============================================================
template<typename S, typename to_S, typename from_S>
@@ -86,13 +93,6 @@ Out_Special_Basic_Argument_T (S & x)
template<typename S, typename to_S, typename from_S>
CORBA::Boolean
-TAO::Out_Special_Basic_Argument_T<S,to_S,from_S>::marshal (TAO_OutputCDR &)
-{
- return 1;
-}
-
-template<typename S, typename to_S, typename from_S>
-CORBA::Boolean
TAO::Out_Special_Basic_Argument_T<S,to_S,from_S>::demarshal (
TAO_InputCDR & cdr
)
@@ -100,14 +100,6 @@ TAO::Out_Special_Basic_Argument_T<S,to_S,from_S>::demarshal (
return cdr >> to_S (this->x_);
}
-template<typename S, typename to_S, typename from_S>
-void
-TAO::Out_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
- Dynamic::Parameter &
- )
-{
-}
-
// ============================================================
template<typename S, typename to_S, typename from_S>
@@ -118,15 +110,6 @@ Ret_Special_Basic_Argument_T (void)
template<typename S, typename to_S, typename from_S>
CORBA::Boolean
-TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::marshal (
- TAO_OutputCDR &
- )
-{
- return 1;
-}
-
-template<typename S, typename to_S, typename from_S>
-CORBA::Boolean
TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::demarshal (
TAO_InputCDR & cdr
)
@@ -136,7 +119,7 @@ TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::demarshal (
template<typename S, typename to_S, typename from_S>
void
-TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
+TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::interceptor_result (
CORBA::Any * any
)
{
@@ -144,7 +127,15 @@ TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::add_to_interceptor (
}
template<typename S, typename to_S, typename from_S>
-TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::operator S ()
+CORBA::Boolean
+TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= to_S (this->x_);
+}
+
+template<typename S, typename to_S, typename from_S>
+S
+TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::excp (void)
{
return this->x_;
}
@@ -165,13 +156,6 @@ In_Special_Basic_SArgument_T (void)
template<typename S, typename to_S, typename from_S>
CORBA::Boolean
-TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::marshal (TAO_OutputCDR &)
-{
- return 1;
-}
-
-template<typename S, typename to_S, typename from_S>
-CORBA::Boolean
TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::demarshal (
TAO_InputCDR & cdr
)
@@ -181,7 +165,7 @@ TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::demarshal (
template<typename S, typename to_S, typename from_S>
void
-TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
+TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::interceptor_param (
Dynamic::Parameter & p
)
{
@@ -190,7 +174,15 @@ TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
}
template<typename S, typename to_S, typename from_S>
-TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::operator S () const
+CORBA::Boolean
+TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= to_S (this->x_);
+}
+
+template<typename S, typename to_S, typename from_S>
+S
+TAO::In_Special_Basic_SArgument_T<S,to_S,from_S>::arg (void) const
{
return this->x_;
}
@@ -222,7 +214,7 @@ TAO::Inout_Special_Basic_SArgument_T<S,to_S,from_S>::demarshal (
template<typename S, typename to_S, typename from_S>
void
-TAO::Inout_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
+TAO::Inout_Special_Basic_SArgument_T<S,to_S,from_S>::interceptor_param (
Dynamic::Parameter & p
)
{
@@ -231,7 +223,15 @@ TAO::Inout_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
}
template<typename S, typename to_S, typename from_S>
-TAO::Inout_Special_Basic_SArgument_T<S,to_S,from_S>::operator S & ()
+CORBA::Boolean
+TAO::Inout_Special_Basic_SArgument_T <S,to_S,from_S>::interceptor_replace (CORBA::Any & any)
+{
+ return any >>= to_S (this->x_);
+}
+
+template<typename S, typename to_S, typename from_S>
+S &
+TAO::Inout_Special_Basic_SArgument_T<S,to_S,from_S>::arg (void)
{
return this->x_;
}
@@ -253,22 +253,8 @@ TAO::Out_Special_Basic_SArgument_T<S,to_S,from_S>::marshal (
}
template<typename S, typename to_S, typename from_S>
-CORBA::Boolean
-TAO::Out_Special_Basic_SArgument_T<S,to_S,from_S>::demarshal (TAO_InputCDR &)
-{
- return 1;
-}
-
-template<typename S, typename to_S, typename from_S>
-void
-TAO::Out_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
- Dynamic::Parameter &
- )
-{
-}
-
-template<typename S, typename to_S, typename from_S>
-TAO::Out_Special_Basic_SArgument_T<S,to_S,from_S>::operator S & ()
+S &
+TAO::Out_Special_Basic_SArgument_T<S,to_S,from_S>::arg (void)
{
return this->x_;
}
@@ -291,17 +277,8 @@ TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::marshal (
}
template<typename S, typename to_S, typename from_S>
-CORBA::Boolean
-TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::demarshal (
- TAO_InputCDR &
- )
-{
- return 1;
-}
-
-template<typename S, typename to_S, typename from_S>
void
-TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
+TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::interceptor_result (
CORBA::Any * any
)
{
@@ -309,15 +286,15 @@ TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::add_to_interceptor (
}
template<typename S, typename to_S, typename from_S>
-TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S> &
-TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::operator= (S & rhs)
+CORBA::Boolean
+TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::interceptor_replace (CORBA::Any & any)
{
- this->x_ = rhs;
- return *this;
+ return any >>= to_S (this->x_);
}
template<typename S, typename to_S, typename from_S>
-TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::operator S () const
+S &
+TAO::Ret_Special_Basic_SArgument_T<S,to_S,from_S>::arg (void)
{
return this->x_;
}
diff --git a/TAO/tao/Special_Basic_Argument_T.h b/TAO/tao/Special_Basic_Argument_T.h
index 1f320a2c754..3e3214588f6 100644
--- a/TAO/tao/Special_Basic_Argument_T.h
+++ b/TAO/tao/Special_Basic_Argument_T.h
@@ -21,7 +21,6 @@
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include "tao/Argument.h"
-#include "tao/DynamicC.h"
namespace TAO
{
@@ -38,8 +37,9 @@ namespace TAO
In_Special_Basic_Argument_T (S const & x);
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
- virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (Dynamic::Parameter &);
+
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
private:
S const & x_;
@@ -59,7 +59,9 @@ namespace TAO
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (Dynamic::Parameter &);
+
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
private:
mutable S & x_;
@@ -77,9 +79,7 @@ namespace TAO
public:
Out_Special_Basic_Argument_T (S & x);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (Dynamic::Parameter &);
private:
mutable S & x_;
@@ -97,11 +97,12 @@ namespace TAO
public:
Ret_Special_Basic_Argument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (CORBA::Any *);
- operator S ();
+ virtual void interceptor_result (CORBA::Any *);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
+
+ S excp (void);
S retn (void);
private:
@@ -120,11 +121,12 @@ namespace TAO
public:
In_Special_Basic_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (Dynamic::Parameter &);
- operator S () const;
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
+
+ S arg (void) const;
private:
S x_;
@@ -144,9 +146,11 @@ namespace TAO
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (Dynamic::Parameter &);
- operator S & ();
+ virtual void interceptor_param (Dynamic::Parameter &);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
+
+ S & arg (void);
private:
S x_;
@@ -165,10 +169,8 @@ namespace TAO
Out_Special_Basic_SArgument_T (void);
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
- virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (Dynamic::Parameter &);
- operator S & ();
+ S & arg (void);
private:
S x_;
@@ -187,11 +189,11 @@ namespace TAO
Ret_Special_Basic_SArgument_T (void);
virtual CORBA::Boolean marshal (TAO_OutputCDR &);
- virtual CORBA::Boolean demarshal (TAO_InputCDR &);
- virtual void add_to_interceptor (CORBA::Any *);
- Ret_Special_Basic_SArgument_T<S,to_S,from_S> & operator= (S & rhs);
- operator S () const;
+ virtual void interceptor_result (CORBA::Any *);
+ virtual CORBA::Boolean interceptor_replace (CORBA::Any &);
+
+ S & arg (void);
private:
S x_;