summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-10-10 20:03:32 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-10-10 20:03:32 +0000
commit0feb9bb83c1035749b3f5ab4df01c5a7dce36924 (patch)
treec88a5d822d6e65d1fd494c10270c63168e9455b2
parent3c84363e0b1e4eaba87193e3aaf2de47c86b1882 (diff)
downloadATCD-0feb9bb83c1035749b3f5ab4df01c5a7dce36924.tar.gz
ChangeLogTag: Tue Oct 10 14:52:16 2000 Jeff Parsons <parsons@cs.wustl.edu>
-rw-r--r--TAO/TAO_IDL/be/be_visitor_argument/request_info_sh.cpp26
-rw-r--r--TAO/tao/Any.cpp278
-rw-r--r--TAO/tao/Any.h106
-rw-r--r--TAO/tao/Any.i12
-rw-r--r--TAO/tao/DomainC.cpp287
-rw-r--r--TAO/tao/DomainC.h60
-rw-r--r--TAO/tao/PortableServer/DomainS.cpp68
-rw-r--r--TAO/tao/PortableServer/DomainS.h10
-rw-r--r--TAO/tao/ifrfwd.h2
9 files changed, 475 insertions, 374 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_argument/request_info_sh.cpp b/TAO/TAO_IDL/be/be_visitor_argument/request_info_sh.cpp
index 0d0162d3c40..12c91f2361e 100644
--- a/TAO/TAO_IDL/be/be_visitor_argument/request_info_sh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_argument/request_info_sh.cpp
@@ -79,10 +79,10 @@ int be_visitor_args_request_info_sh::visit_array (be_array *node)
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << "const " << this->type_name (node)<< "_slice *";
+ *os << "const " << this->type_name (node) << "_slice *";
break;
case AST_Argument::dir_INOUT:
- *os << this->type_name (node)<< "_slice *";
+ *os << this->type_name (node) << "_slice *";
break;
case AST_Argument::dir_OUT:
*os << this->type_name (node, "_out");
@@ -117,10 +117,10 @@ int be_visitor_args_request_info_sh::visit_interface (be_interface *node)
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << this->type_name (node, "_ptr")<< " &";;
+ *os << this->type_name (node, "_ptr");
break;
- case AST_Argument::dir_INOUT: // inout
- *os << this->type_name (node, "_ptr") << " &";
+ case AST_Argument::dir_INOUT:
+ *os << this->type_name (node, "_ptr");
break;
case AST_Argument::dir_OUT:
*os << this->type_name (node, "_out");
@@ -136,10 +136,10 @@ int be_visitor_args_request_info_sh::visit_interface_fwd (be_interface_fwd *node
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << this->type_name (node, "_ptr")<< " &";
+ *os << this->type_name (node, "_ptr");
break;
- case AST_Argument::dir_INOUT: // inout
- *os << this->type_name (node, "_ptr") << " &";
+ case AST_Argument::dir_INOUT:
+ *os << this->type_name (node, "_ptr");
break;
case AST_Argument::dir_OUT:
*os << this->type_name (node, "_out");
@@ -155,7 +155,7 @@ int be_visitor_args_request_info_sh::visit_native (be_native *node)
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << this->type_name (node)<< " &";
+ *os << this->type_name (node) << " &";
break;
case AST_Argument::dir_INOUT:
*os << this->type_name (node) << " &";
@@ -192,10 +192,10 @@ int be_visitor_args_request_info_sh::visit_predefined_type (be_predefined_type *
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << this->type_name (node, "_ptr")<<" &";
+ *os << this->type_name (node, "_ptr");
break;
case AST_Argument::dir_INOUT:
- *os << this->type_name (node, "_ptr") << " &";
+ *os << this->type_name (node, "_ptr");
break;
case AST_Argument::dir_OUT:
*os << this->type_name (node, "_out");
@@ -207,7 +207,7 @@ int be_visitor_args_request_info_sh::visit_predefined_type (be_predefined_type *
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << this->type_name (node)<<" &";
+ *os << this->type_name (node) <<" &";
break;
case AST_Argument::dir_INOUT:
*os << this->type_name (node) << " &";
@@ -264,7 +264,7 @@ int be_visitor_args_request_info_sh::visit_string (be_string *node)
switch (this->direction ())
{
case AST_Argument::dir_IN:
- *os << "const CORBA::WChar *"<<" &";
+ *os << "const CORBA::WChar *" << " &";
break;
case AST_Argument::dir_INOUT:
*os << "CORBA::WChar *&";
diff --git a/TAO/tao/Any.cpp b/TAO/tao/Any.cpp
index 009348c2409..dcb23a11578 100644
--- a/TAO/tao/Any.cpp
+++ b/TAO/tao/Any.cpp
@@ -71,58 +71,6 @@ CORBA_Any::CORBA_Any (void)
{
}
-// The more common "Any" constructor has its own copy of a typecode,
-// and either holds or "consumes" an arbitrary data value satisfying
-// the normal binary interface rules.
-
-#if 0
-CORBA_Any::CORBA_Any (CORBA::TypeCode_ptr,
- void *,
- CORBA::Environment &ACE_TRY_ENV)
- : type_ (CORBA::TypeCode::_duplicate (CORBA::_tc_null)),
- byte_order_ (TAO_ENCAP_BYTE_ORDER),
- cdr_ (0),
- any_owns_data_ (0),
- value_ (0),
- destructor_ (0)
-{
- ACE_THROW (CORBA::NO_IMPLEMENT ());
-}
-
-CORBA_Any::CORBA_Any (CORBA::TypeCode_ptr,
- void *,
- CORBA::Boolean,
- CORBA::Environment &ACE_TRY_ENV)
- : type_ (CORBA::TypeCode::_duplicate (CORBA::_tc_null)),
- byte_order_ (TAO_ENCAP_BYTE_ORDER),
- cdr_ (0),
- any_owns_data_ (0),
- value_ (0),
- destructor_ (0)
-{
- ACE_THROW (CORBA::NO_IMPLEMENT ());
-}
-
-// All-at-once replacement of the contents of an "Any."
-
-void
-CORBA_Any::replace (CORBA::TypeCode_ptr,
- const void *,
- CORBA::Boolean,
- CORBA::Environment &ACE_TRY_ENV)
-{
- ACE_THROW (CORBA::NO_IMPLEMENT ());
-}
-
-void
-CORBA_Any::replace (CORBA::TypeCode_ptr,
- const void *,
- CORBA::Environment &ACE_TRY_ENV)
-{
- ACE_THROW (CORBA::NO_IMPLEMENT ());
-}
-#endif /* 0 */
-
CORBA_Any::CORBA_Any (CORBA::TypeCode_ptr tc,
CORBA::Environment &)
: type_ (CORBA::TypeCode::_duplicate (tc)),
@@ -132,7 +80,6 @@ CORBA_Any::CORBA_Any (CORBA::TypeCode_ptr tc,
value_ (0),
destructor_ (0)
{
- // ACE_THROW (CORBA::NO_IMPLEMENT ());
}
// Constructor using a message block.
@@ -178,9 +125,11 @@ CORBA_Any::CORBA_Any (const CORBA_Any &src)
CORBA_Any &
CORBA_Any::operator= (const CORBA_Any &src)
{
- // check if it is a self assignment
+ // Check if it is a self assignment
if (this == &src)
- return *this;
+ {
+ return *this;
+ }
// Decrement the refcount on the Message_Block we hold, it does not
// matter if we own the data or not, because we always own the
@@ -204,17 +153,21 @@ CORBA_Any::operator= (const CORBA_Any &src)
}
this->byte_order_ = src.byte_order_;
- ACE_NEW_RETURN (this->cdr_, ACE_Message_Block, *this);
- ACE_CDR::consolidate (this->cdr_, src.cdr_);
+
+ ACE_NEW_RETURN (this->cdr_,
+ ACE_Message_Block,
+ *this);
+
+ ACE_CDR::consolidate (this->cdr_,
+ src.cdr_);
return *this;
}
// Destructor for an "Any" deep-frees memory if needed.
-
CORBA_Any::~CORBA_Any (void)
{
- // decrement the refcount on the Message_Block we hold, it does not
+ // Decrement the refcount on the Message_Block we hold, it does not
// matter if we own the data or not, because we always own the
// message block (i.e. it is always cloned or duplicated.
@@ -243,8 +196,12 @@ CORBA_Any::_tao_replace (CORBA::TypeCode_ptr tc,
this->type_ = CORBA::TypeCode::_duplicate (tc);
this->byte_order_ = byte_order;
- ACE_NEW (this->cdr_, ACE_Message_Block);
- ACE_CDR::consolidate (this->cdr_, mb);
+
+ ACE_NEW (this->cdr_,
+ ACE_Message_Block);
+
+ ACE_CDR::consolidate (this->cdr_,
+ mb);
// We can save the decode operation if there's no need to extract
// the object.
}
@@ -296,7 +253,6 @@ CORBA_Any::_tao_replace (CORBA::TypeCode_ptr tc,
}
// Free internal data.
-
void
CORBA_Any::free_value (void)
{
@@ -364,7 +320,10 @@ CORBA_Any::_tao_decode (TAO_InputCDR &cdr,
ptr_arith_t offset = ptr_arith_t (begin) % ACE_CDR::MAX_ALIGNMENT;
mb.rd_ptr (offset);
mb.wr_ptr (offset + size);
- ACE_OS::memcpy (mb.rd_ptr (), begin, size);
+
+ ACE_OS::memcpy (mb.rd_ptr (),
+ begin,
+ size);
// Stick it into the Any. It gets duplicated there.
this->_tao_replace (this->type_.in (),
@@ -372,7 +331,7 @@ CORBA_Any::_tao_decode (TAO_InputCDR &cdr,
&mb);
}
-// insertion operators
+// Insertion operators.
void
CORBA_Any::operator<<= (CORBA::Short s)
@@ -464,9 +423,9 @@ CORBA_Any::operator<<= (CORBA::LongDouble d)
stream.begin ());
}
-// insertion of Any - copying
+// Insertion of Any - copying.
void
-CORBA_Any::operator<<= (const CORBA_Any& a)
+CORBA_Any::operator<<= (const CORBA_Any &a)
{
TAO_OutputCDR stream;
stream << a;
@@ -475,16 +434,16 @@ CORBA_Any::operator<<= (const CORBA_Any& a)
stream.begin ());
}
-// insertion of Any - non-copying
+// Insertion of Any - non-copying.
void
CORBA::Any::_tao_any_destructor (void *x)
{
- CORBA::Any *tmp = ACE_static_cast (CORBA::Any*,x);
+ CORBA::Any *tmp = ACE_static_cast (CORBA::Any *, x);
delete tmp;
}
void
-CORBA::Any::operator<<= (CORBA::Any* a)
+CORBA::Any::operator<<= (CORBA::Any *a)
{
TAO_OutputCDR stream;
stream << *a;
@@ -548,7 +507,7 @@ CORBA_Any::operator<<= (CORBA::TypeCode_ptr tc)
stream.begin ());
}
-// Insertion of CORBA::Exception - copying
+// Insertion of CORBA::Exception - copying.
void
CORBA_Any::operator<<= (const CORBA_Exception &exception)
{
@@ -574,7 +533,7 @@ CORBA_Any::operator<<= (const CORBA_Exception &exception)
ACE_CHECK;
}
-// Insertion of CORBA::Exception - non-copying
+// Insertion of CORBA::Exception - non-copying.
void
CORBA_Any::operator<<= (CORBA_Exception *exception)
{
@@ -614,12 +573,13 @@ CORBA::Any::operator<<= (const CORBA::Object_ptr obj)
}
// Insertion of CORBA object - non-copying.
-
void
CORBA::Any::operator<<= (CORBA::Object_ptr *objptr)
{
if (objptr == 0)
- return; // @@ Should we raise an exception?
+ {
+ return; // @@ Should we raise an exception?
+ }
TAO_OutputCDR stream;
stream << *objptr;
@@ -629,7 +589,6 @@ CORBA::Any::operator<<= (CORBA::Object_ptr *objptr)
}
// Insertion of from_string.
-
void
CORBA_Any::operator<<= (from_string s)
{
@@ -639,7 +598,7 @@ CORBA_Any::operator<<= (from_string s)
// If the inserted string is bounded, we create a typecode.
static CORBA::Long _oc_string [] =
{
- // CDR typecode octets
+ // CDR typecode octets.
TAO_ENCAP_BYTE_ORDER, // native endian + padding; "tricky"
0 // ... unbounded string to start with
};
@@ -650,6 +609,7 @@ CORBA_Any::operator<<= (from_string s)
{
// Bounded string.
_oc_string [1] = s.bound_;
+
// @@ It seems like this could be leaked!
ACE_NEW (tc,
CORBA::TypeCode (CORBA::tk_string,
@@ -660,10 +620,12 @@ CORBA_Any::operator<<= (from_string s)
}
else
{
- tc = CORBA::_tc_string; // unbounded.
+ // Unbounded.
+ tc = CORBA::_tc_string;
}
char *tmp;
+
// Non-copying.
if (s.nocopy_)
{
@@ -691,7 +653,7 @@ CORBA_Any::operator<<= (from_wstring ws)
// If the inserted string is bounded, we create a typecode.
static CORBA::Long _oc_wstring [] =
{
- // CDR typecode octets
+ // CDR typecode octets.
TAO_ENCAP_BYTE_ORDER, // native endian + padding; "tricky"
0 // ... unbounded string to start with
};
@@ -702,6 +664,7 @@ CORBA_Any::operator<<= (from_wstring ws)
{
// Bounded string.
_oc_wstring [1] = ws.bound_;
+
// @@ TODO It seems like this is leaked!
ACE_NEW (tc,
CORBA::TypeCode (CORBA::tk_wstring,
@@ -712,7 +675,8 @@ CORBA_Any::operator<<= (from_wstring ws)
}
else
{
- tc = CORBA::_tc_wstring; // unbounded.
+ // Unbounded.
+ tc = CORBA::_tc_wstring;
}
CORBA::WChar *tmp;
@@ -736,7 +700,7 @@ CORBA_Any::operator<<= (from_wstring ws)
// Extraction: these are safe and hence we have to check that the
// typecode of the Any is equal to the one we are trying to extract
-// into
+// into.
CORBA::Boolean
CORBA_Any::operator>>= (CORBA::Short &s) const
@@ -780,10 +744,13 @@ CORBA_Any::operator>>= (CORBA::UShort &s) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_ushort (s);
}
ACE_CATCHANY
@@ -809,10 +776,13 @@ CORBA_Any::operator>>= (CORBA::Long &l) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_long (l);
}
ACE_CATCHANY
@@ -838,10 +808,13 @@ CORBA_Any::operator>>= (CORBA::ULong &l) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_ulong (l);
}
ACE_CATCHANY
@@ -867,10 +840,13 @@ CORBA_Any::operator>>= (CORBA::LongLong &l) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_longlong (l);
}
ACE_CATCHANY
@@ -937,10 +913,13 @@ CORBA_Any::operator>>= (CORBA::Float &f) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_float (f);
}
ACE_CATCHANY
@@ -966,10 +945,13 @@ CORBA_Any::operator>>= (CORBA::Double &d) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_double (d);
}
ACE_CATCHANY
@@ -995,10 +977,13 @@ CORBA_Any::operator>>= (CORBA::LongDouble &ld) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
return stream.read_longdouble (ld);
}
ACE_CATCHANY
@@ -1024,15 +1009,16 @@ CORBA_Any::operator>>= (CORBA::Any &a) const
ACE_TRY_CHECK;
if (!result)
- return 0;
-
- if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
if (stream >> a)
- return 1;
+ {
+ return 1;
+ }
}
ACE_CATCHANY
{
@@ -1058,7 +1044,9 @@ CORBA_Any::operator>>= (const CORBA::Any *&a) const
ACE_TRY_CHECK;
if (!equivalent)
- return 0;
+ {
+ return 0;
+ }
if (this->any_owns_data_ && this->value_)
{
@@ -1072,8 +1060,11 @@ CORBA_Any::operator>>= (const CORBA::Any *&a) const
CORBA::Any_var tmp = x;
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
+
if (!(stream >> tmp.inout ()))
- return 0;
+ {
+ return 0;
+ }
ACE_const_cast(CORBA::Any*,
this)->_tao_replace (CORBA::_tc_any,
@@ -1114,7 +1105,9 @@ CORBA_Any::operator>>= (const char *&s) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
if (this->any_owns_data_ && this->value_)
{
@@ -1126,8 +1119,11 @@ CORBA_Any::operator>>= (const char *&s) const
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
CORBA::String_var tmp;
+
if (!stream.read_string (tmp.out ()))
- return 0;
+ {
+ return 0;
+ }
ACE_const_cast(CORBA::Any*,
this)->_tao_replace (CORBA::_tc_string,
@@ -1176,7 +1172,9 @@ CORBA_Any::operator>>= (const CORBA::WChar *&s) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
if (this->any_owns_data_ && this->value_)
{
@@ -1187,8 +1185,11 @@ CORBA_Any::operator>>= (const CORBA::WChar *&s) const
TAO_InputCDR stream (this->cdr_,
this->byte_order_);
CORBA::WString_var tmp;
+
if (!stream.read_wstring (tmp.out ()))
- return 0;
+ {
+ return 0;
+ }
ACE_const_cast(CORBA::Any*,
this)->_tao_replace (CORBA::_tc_wstring,
@@ -1229,7 +1230,9 @@ CORBA_Any::operator>>= (CORBA::TypeCode_ptr &tc) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
if (this->any_owns_data_ && this->value_)
{
@@ -1242,7 +1245,9 @@ CORBA_Any::operator>>= (CORBA::TypeCode_ptr &tc) const
CORBA::TypeCode_var tmp;
if (!(stream >> tmp.inout ()))
- return 0;
+ {
+ return 0;
+ }
ACE_const_cast(CORBA::Any*,
this)->_tao_replace (CORBA::_tc_TypeCode,
@@ -1278,10 +1283,13 @@ CORBA_Any::operator>>= (to_boolean b) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream ((ACE_Message_Block *) this->cdr_,
this->byte_order_);
+
return stream.read_boolean (b.ref_);
}
ACE_CATCHANY
@@ -1307,10 +1315,13 @@ CORBA_Any::operator>>= (to_octet o) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream ((ACE_Message_Block *) this->cdr_,
this->byte_order_);
+
return stream.read_octet (o.ref_);
}
ACE_CATCHANY
@@ -1336,10 +1347,13 @@ CORBA_Any::operator>>= (to_char c) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream ((ACE_Message_Block *) this->cdr_,
this->byte_order_);
+
return stream.read_char (c.ref_);
}
ACE_CATCHANY
@@ -1365,10 +1379,13 @@ CORBA_Any::operator>>= (to_wchar wc) const
ACE_TRY_CHECK;
if (!result)
- return 0;
+ {
+ return 0;
+ }
TAO_InputCDR stream ((ACE_Message_Block *) this->cdr_,
this->byte_order_);
+
return stream.read_wchar (wc.ref_);
}
ACE_CATCHANY
@@ -1405,12 +1422,17 @@ CORBA_Any::operator>>= (to_string s) const
}
if (kind != CORBA::tk_string)
- return 0;
+ {
+ return 0;
+ }
CORBA::ULong bound = tcvar->length (ACE_TRY_ENV);
ACE_TRY_CHECK;
+
if (s.bound_ != bound)
- return 0;
+ {
+ return 0;
+ }
if (this->any_owns_data_ && this->value_)
{
@@ -1421,8 +1443,11 @@ CORBA_Any::operator>>= (to_string s) const
TAO_InputCDR stream ((ACE_Message_Block *) this->cdr_,
this->byte_order_);
CORBA::String_var tmp;
+
if (!stream.read_string (tmp.out ()))
- return 0;
+ {
+ return 0;
+ }
ACE_const_cast(CORBA::Any*,
this)->_tao_replace (CORBA::_tc_string,
@@ -1467,12 +1492,17 @@ CORBA_Any::operator>>= (to_wstring ws) const
}
if (kind != CORBA::tk_wstring)
- return 0;
+ {
+ return 0;
+ }
CORBA::ULong bound = tcvar->length (ACE_TRY_ENV);
ACE_TRY_CHECK;
+
if (ws.bound_ != bound)
- return 0;
+ {
+ return 0;
+ }
if (this->any_owns_data_ && this->value_)
{
@@ -1483,8 +1513,11 @@ CORBA_Any::operator>>= (to_wstring ws) const
TAO_InputCDR stream ((ACE_Message_Block *) this->cdr_,
this->byte_order_);
CORBA::WString_var tmp;
+
if (!stream.read_wstring (tmp.out ()))
- return 0;
+ {
+ return 0;
+ }
ACE_const_cast(CORBA::Any*,
this)->_tao_replace (CORBA::_tc_string,
@@ -1518,6 +1551,7 @@ CORBA_Any::operator>>= (to_object obj) const
CORBA::TypeCode_var tcvar =
CORBA::TypeCode::_duplicate (this->type_.in ());
+
while (kind == CORBA::tk_alias)
{
tcvar = tcvar->content_type (ACE_TRY_ENV);
@@ -1528,7 +1562,9 @@ CORBA_Any::operator>>= (to_object obj) const
}
if (kind != CORBA::tk_objref)
- return 0;
+ {
+ return 0;
+ }
// It is hard to apply this optimization, because value_ points
// to a derived class from CORBA::Object, and with multiple
@@ -1558,7 +1594,9 @@ CORBA_Any::operator>>= (to_object obj) const
TAO_ORB_Core_instance ());
if (stream >> obj.ref_)
- return 1;
+ {
+ return 1;
+ }
}
ACE_CATCHANY
{
@@ -1601,7 +1639,9 @@ operator<< (TAO_OutputCDR& cdr,
CORBA::TypeCode_var tc = x.type ();
if (!(cdr << tc.in ()))
- return 0;
+ {
+ return 0;
+ }
ACE_TRY_NEW_ENV
{
@@ -1626,8 +1666,11 @@ operator>> (TAO_InputCDR &cdr,
CORBA::Any &x)
{
CORBA::TypeCode_var tc;
+
if (!(cdr >> tc.out ()))
- return 0;
+ {
+ return 0;
+ }
ACE_TRY_NEW_ENV
{
@@ -1682,10 +1725,13 @@ CORBA_Any_var::operator= (CORBA::Any *p)
if (this->ptr_ != p)
{
if (this->ptr_ != 0)
- delete (this->ptr_);
+ {
+ delete (this->ptr_);
+ }
this->ptr_ = p;
}
+
return *this;
}
@@ -1699,7 +1745,9 @@ CORBA_Any_var::operator= (const CORBA::Any_var& r)
*this);
if (this->ptr_ != 0)
- delete this->ptr_;
+ {
+ delete this->ptr_;
+ }
this->ptr_ = tmp;
diff --git a/TAO/tao/Any.h b/TAO/tao/Any.h
index badedeb2f4f..40a48e12427 100644
--- a/TAO/tao/Any.h
+++ b/TAO/tao/Any.h
@@ -105,95 +105,95 @@ public:
// =type safe insertion
void operator<<= (CORBA::Short);
- // insert a short
+ // Insert a short.
void operator<<= (CORBA::UShort);
- // insert an unsigned short
+ // Insert an unsigned short.
void operator<<= (CORBA::Long);
- // insert a long
+ // Insert a long.
void operator<<= (CORBA::ULong);
- // insert an unsigned long
+ // Insert an unsigned long.
void operator<<= (CORBA::LongLong);
- // insert a long long
+ // Insert a long long.
void operator<<= (CORBA::ULongLong);
- // insert an unsigned long long
+ // Insert an unsigned long long.
void operator<<= (CORBA::Float);
- // insert a float
+ // Insert a float.
void operator<<= (CORBA::Double);
- // insert a double
+ // Insert a double.
void operator<<= (CORBA::LongDouble);
- // insert a long double
+ // Insert a long double.
void operator<<= (const CORBA_Any&);
- // insert an Any, copying
+ // Insert an Any, copying.
void operator<<= (CORBA_Any_ptr);
- // insert an Any, non-copying
+ // Insert an Any, non-copying.
void operator<<= (const char*);
- // insert unbounded string
+ // Insert unbounded string
void operator<<= (const CORBA::WChar*);
- // insert unbounded wide string
+ // Insert unbounded wide string.
void operator<<= (CORBA::TypeCode_ptr);
- // insert a TypeCode
+ // Insert a TypeCode.
void operator<<= (const CORBA::Object_ptr);
- // insert an object reference, copying.
+ // Insert an object reference, copying.
void operator<<= (CORBA::Object_ptr *);
- // insert an object reference, non-copying. Any assumes the ownership
+ // Insert an object reference, non-copying. Any assumes the ownership
// of the object.
- // =type safe extraction
+ // =Type safe extraction.
CORBA::Boolean operator>>= (CORBA::Short&) const;
- // extract a short
+ // Extract a short.
CORBA::Boolean operator>>= (CORBA::UShort&) const;
- // extract an unsigned short
+ // Extract an unsigned short.
CORBA::Boolean operator>>= (CORBA::Long&) const;
- // extract a long
+ // Extract a long.
CORBA::Boolean operator>>= (CORBA::ULong&) const;
- // extract an unsigned long
+ // Extract an unsigned long.
CORBA::Boolean operator>>= (CORBA::LongLong&) const;
- // extract a long long
+ // Extract a long long.
CORBA::Boolean operator>>= (CORBA::ULongLong&) const;
- // extract an unsigned long long
+ // Extract an unsigned long long.
CORBA::Boolean operator>>= (CORBA::Float&) const;
- // extract a float
+ // Extract a float.
CORBA::Boolean operator>>= (CORBA::Double&) const;
- // extract a double
+ // Extract a double.
CORBA::Boolean operator>>= (CORBA::LongDouble&) const;
- // extract a long double
+ // Extract a long double.
CORBA::Boolean operator>>= (CORBA_Any&) const; // non-spec
CORBA::Boolean operator>>= (const CORBA_Any*&) const;
- // extract an Any
+ // Extract an Any.
CORBA::Boolean operator>>= (CORBA::TypeCode_ptr&) const;
- // extract a TypeCode
+ // Extract a TypeCode.
CORBA::Boolean operator>>= (const char*&) const;
- // extract an unbounded string
+ // Extract an unbounded string
CORBA::Boolean operator>>= (const CORBA::WChar*&) const;
- // extract an unbounded wide string
+ // Extract an unbounded wide string.
// = Special types.
@@ -210,28 +210,28 @@ public:
typedef ACE_OutputCDR::from_wstring from_wstring;
void operator<<= (from_boolean);
- // insert a boolean
+ // Insert a boolean.
void operator<<= (from_char);
- // insert a char
+ // Insert a char.
void operator<<= (from_wchar);
- // insert a wchar
+ // Insert a wchar.
void operator<<= (from_octet);
- // insert an octet
+ // Insert an octet.
void operator<<= (from_string);
- // insert a bounded string
+ // Insert a bounded string.
void operator<<= (from_wstring);
- // insert a bounded wide string
+ // Insert a bounded wide string.
void operator<<= (const CORBA_Exception &exception);
- // insert an exception into the Any (copying)
+ // Insert an exception into the Any (copying)
void operator<<= (CORBA_Exception *exception);
- // insert an exception into the Any (non-copying)
+ // Insert an exception into the Any (non-copying).
// = Special types.
@@ -281,32 +281,6 @@ public:
// ORBOS/90-01-11, pg 672: For C++ mapping using the CORBA_Environment
// parameter, two forms of the replace method are provided.
-#if 0
- CORBA_Any (CORBA::TypeCode_ptr type,
- void *value,
- CORBA::Boolean any_owns_data,
- CORBA::Environment &ACE_TRY_ENV
- = TAO_default_environment ());
- CORBA_Any (CORBA::TypeCode_ptr type,
- void *value,
- CORBA::Environment &ACE_TRY_ENV
- = TAO_default_environment ());
- // Obsolete. Raises CORBA::NO_IMPLEMENT.
-
- void replace (CORBA::TypeCode_ptr type,
- const void *value,
- CORBA::Boolean any_owns_data,
- CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
- // Obsolete. Raises CORBA::NO_IMPLEMENT.
-
- void replace (CORBA::TypeCode_ptr type,
- const void *value,
- CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
- // Obsolete. Raises CORBA::NO_IMPLEMENT.
-#endif
-
CORBA::TypeCode_ptr type (void) const;
// Return TypeCode of the element stored in the Any.
@@ -553,6 +527,8 @@ TAO_Export void operator<<= (CORBA_Any_var &,
CORBA::Any::from_octet);
TAO_Export void operator<<= (CORBA_Any_var &,
CORBA::Any::from_string);
+TAO_Export void operator<<= (CORBA_Any_var &,
+ CORBA::Any::from_wstring);
// These are not required by the spec, but will make users
// of other ORBs that are used to them more comfortable.
@@ -591,6 +567,8 @@ TAO_Export CORBA::Boolean operator>>= (CORBA_Any_var &,
TAO_Export CORBA::Boolean operator>>= (CORBA_Any_var &,
CORBA::Any::to_string);
TAO_Export CORBA::Boolean operator>>= (CORBA_Any_var &,
+ CORBA::Any::to_wstring);
+TAO_Export CORBA::Boolean operator>>= (CORBA_Any_var &,
CORBA::Any::to_object);
#endif /* __ACE_INLINE__ */
diff --git a/TAO/tao/Any.i b/TAO/tao/Any.i
index e660d9ba247..7b368c0bfcf 100644
--- a/TAO/tao/Any.i
+++ b/TAO/tao/Any.i
@@ -210,6 +210,12 @@ operator <<= (CORBA_Any_var &lhs, CORBA::Any::from_string rhs)
lhs.inout () <<= rhs;
}
+ACE_INLINE void
+operator <<= (CORBA_Any_var &lhs, CORBA::Any::from_wstring rhs)
+{
+ lhs.inout () <<= rhs;
+}
+
// *************************************************************
// CORBA_Any_var extraction operators
// *************************************************************
@@ -317,6 +323,12 @@ operator >>= (CORBA_Any_var &lhs, CORBA::Any::to_string rhs)
}
ACE_INLINE CORBA::Boolean
+operator >>= (CORBA_Any_var &lhs, CORBA::Any::to_wstring rhs)
+{
+ return lhs.inout () >>= rhs;
+}
+
+ACE_INLINE CORBA::Boolean
operator >>= (CORBA_Any_var &lhs, CORBA::Any::to_object rhs)
{
return lhs.inout () >>= rhs;
diff --git a/TAO/tao/DomainC.cpp b/TAO/tao/DomainC.cpp
index 36dd9aa1123..079f9c46d9d 100644
--- a/TAO/tao/DomainC.cpp
+++ b/TAO/tao/DomainC.cpp
@@ -230,8 +230,10 @@ void *CORBA_DomainManager::_tao_QueryInterface (ptr_arith_t type)
&CORBA_DomainManager::_narrow))
retv = ACE_reinterpret_cast (void*, this);
else if (type == ACE_reinterpret_cast (ptr_arith_t, &CORBA::Object::_narrow))
- retv = ACE_reinterpret_cast (void *,
- ACE_static_cast (CORBA::Object_ptr, this));
+ retv = ACE_reinterpret_cast (
+ void *,
+ ACE_static_cast (CORBA::Object_ptr, this)
+ );
if (retv)
this->_add_ref ();
@@ -245,52 +247,65 @@ const char* CORBA_DomainManager::_interface_repository_id (void) const
#if (TAO_HAS_INTERCEPTORS == 1)
-CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy (const char *_tao_operation,
-IOP::ServiceContextList &_tao_service_context_list,
-CORBA::Object *_tao_target,CORBA::PolicyType& policy_type,
-CORBA::Environment &)
- : TAO_ClientRequest_Info (_tao_operation, _tao_service_context_list, _tao_target),policy_type_ (policy_type)
+
+CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy (
+ const char *_tao_operation,
+ IOP::ServiceContextList &_tao_service_context_list,
+ CORBA::Object *_tao_target,
+ CORBA::PolicyType &policy_type,
+ CORBA::Environment &
+ )
+ : TAO_ClientRequest_Info (
+ _tao_operation,
+ _tao_service_context_list,
+ _tao_target
+ ),
+ policy_type_ (policy_type)
{}
Dynamic::ParameterList *
CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::arguments (CORBA::Environment &)
ACE_THROW_SPEC ((CORBA::SystemException))
{
- // Generate the arg list on demand
+ // Generate the arg list on demand
CORBA::ULong length = 0;
- length = this->parameter_list_.length ();
- this->parameter_list_.length (length + 1);
- this->parameter_list_[length].argument <<= this->policy_type_;
+ length = this->parameter_list_.length ();
+ this->parameter_list_.length (length + 1);
+ this->parameter_list_[length].argument <<= this->policy_type_;
- this->parameter_list_[length].mode = Dynamic::PARAM_IN;
+ this->parameter_list_[length].mode = Dynamic::PARAM_IN;
- return &this->parameter_list_;
+ return &this->parameter_list_;
}
- Dynamic::ExceptionList *
- CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::exceptions (CORBA::Environment &)
- ACE_THROW_SPEC ((CORBA::SystemException))
- {
- // Generate the exception list on demand
- return 0;
+Dynamic::ExceptionList *
+CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::exceptions (
+ CORBA::Environment &
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand
+ return 0;
}
- CORBA::Any *
- CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::result (CORBA::Environment &)
- ACE_THROW_SPEC ((CORBA::SystemException))
- {
- // Generate the result on demand :
- this->result_val_ <<= this->result_;
+CORBA::Any *
+CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::result (
+ CORBA::Environment &
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand :
+ this->result_val_ <<= this->result_;
return &this->result_val_;
- }
+}
void
CORBA_DomainManager::TAO_ClientRequest_Info_CORBA_DomainManager_get_domain_policy::result (CORBA::Policy_ptr result)
- {
+{
// update the result
- this->result_ = result;
- }
+ this->result_ = result;
+}
#endif /* TAO_HAS_INTERCEPTORS */
@@ -383,11 +398,12 @@ void CORBA_ConstructionPolicy::make_domain_manager (
))
{
#if (TAO_HAS_INTERFACE_REPOSITORY == 0)
+
ACE_UNUSED_ARG (object_type);
ACE_UNUSED_ARG (constr_policy);
ACE_THROW (CORBA::NO_IMPLEMENT ());
-#else // TAO_HAS_INTERFACE_REPOSITORY
+#else // TAO_HAS_INTERFACE_REPOSITORY
TAO_Stub *istub = this->_stubobj ();
if (istub == 0)
@@ -402,79 +418,87 @@ void CORBA_ConstructionPolicy::make_domain_manager (
);
#if (TAO_HAS_INTERCEPTORS == 1)
- TAO_ClientRequestInterceptor_Adapter
- _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
- ACE_CHECK;
- CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager ri ("make_domain_manager",
-_tao_call.service_info (),
- this , object_type , constr_policy ,
- ACE_TRY_ENV);
- ACE_CHECK;
+
+ TAO_ClientRequestInterceptor_Adapter _tao_vfr (
+ istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV)
+ );
+ ACE_CHECK;
+ CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager ri (
+ "make_domain_manager",
+ _tao_call.service_info (),
+ this,
+ object_type,
+ constr_policy,
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
ACE_TRY
{
#endif /* TAO_HAS_INTERCEPTORS */
- for (;;)
- {
- _tao_call.start (ACE_TRY_ENV);
- TAO_INTERCEPTOR_CHECK;
-
- TAO_INTERCEPTOR (
- ri.request_id (_tao_call.request_id ());
- _tao_vfr.send_request (
- &ri,
- ACE_TRY_ENV
- )
- );
- TAO_INTERCEPTOR_CHECK;
- CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
-
- _tao_call.prepare_header (
- ACE_static_cast (CORBA::Octet, _tao_response_flag), ACE_TRY_ENV
- );
- TAO_INTERCEPTOR_CHECK;
-
- TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
- if (!(
- (_tao_out << object_type) &&
- (_tao_out << CORBA::Any::from_boolean (constr_policy))
- ))
- TAO_INTERCEPTOR_THROW (CORBA::MARSHAL());
- int _invoke_status =
- _tao_call.invoke (0, 0, ACE_TRY_ENV);
- TAO_INTERCEPTOR_CHECK;
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ ri.request_id (_tao_call.request_id ());
+ _tao_vfr.send_request (
+ &ri,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
- if (_invoke_status == TAO_INVOKE_RESTART)
- continue;
- if (_invoke_status != TAO_INVOKE_OK)
- {
- TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN(TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
- }
+ _tao_call.prepare_header (
+ ACE_static_cast (CORBA::Octet, _tao_response_flag), ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << object_type) &&
+ (_tao_out << CORBA::Any::from_boolean (constr_policy))
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL());
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN(TAO_DEFAULT_MINOR_CODE,
+ CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.receive_reply (
+ &ri,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+ }
- TAO_INTERCEPTOR (
- _tao_vfr.receive_reply (
- &ri,
- ACE_TRY_ENV
- )
- );
- TAO_INTERCEPTOR_CHECK;
- break;
+#if (TAO_HAS_INTERCEPTORS == 1)
}
-#if (TAO_HAS_INTERCEPTORS == 1)
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.receive_exception (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
- }
-ACE_CATCHANY
- {
- ri.exception (&ACE_ANY_EXCEPTION);
- _tao_vfr.receive_exception (
- &ri,
- ACE_TRY_ENV
- );
- ACE_RE_THROW;
- }
-ACE_ENDTRY;
-ACE_CHECK;
#endif /* TAO_HAS_INTERCEPTORS */
#endif /* TAO_HAS_INTERFACE_REPOSITORY */
@@ -526,51 +550,66 @@ const char* CORBA_ConstructionPolicy::_interface_repository_id (void) const
#if (TAO_HAS_INTERCEPTORS == 1) && (TAO_HAS_INTERFACE_REPOSITORY == 1)
-CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (const char *_tao_operation,
-IOP::ServiceContextList &_tao_service_context_list,
-CORBA::Object *_tao_target,IR_InterfaceDef* object_type,CORBA::Boolean constr_policy,
-CORBA::Environment &)
- : TAO_ClientRequest_Info (_tao_operation, _tao_service_context_list, _tao_target),object_type_ (object_type),constr_policy_ (constr_policy)
+
+CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (
+ const char *_tao_operation,
+ IOP::ServiceContextList &_tao_service_context_list,
+ CORBA::Object *_tao_target,
+ IR_InterfaceDef *object_type,
+ CORBA::Boolean &constr_policy,
+ CORBA::Environment &
+ )
+ : TAO_ClientRequest_Info (
+ _tao_operation,
+ _tao_service_context_list,
+ _tao_target
+ ),
+ object_type_ (object_type),
+ constr_policy_ (constr_policy)
{}
Dynamic::ParameterList *
CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::arguments (CORBA::Environment &)
ACE_THROW_SPEC ((CORBA::SystemException))
{
- // Generate the arg list on demand
+ // Generate the arg list on demand
CORBA::ULong length = 0;
- length = this->parameter_list_.length ();
- this->parameter_list_.length (length + 1);
- this->parameter_list_[length].argument <<= this->object_type_;
+ length = this->parameter_list_.length ();
+ this->parameter_list_.length (length + 1);
+ this->parameter_list_[length].argument <<= this->object_type_;
- this->parameter_list_[length].mode = Dynamic::PARAM_IN;
- length = this->parameter_list_.length ();
- this->parameter_list_.length (length + 1);
- this->parameter_list_[length].argument <<= CORBA::Any::from_boolean (this->constr_policy_ );
- this->parameter_list_[length].mode = Dynamic::PARAM_IN;
+ this->parameter_list_[length].mode = Dynamic::PARAM_IN;
+ length = this->parameter_list_.length ();
+ this->parameter_list_.length (length + 1);
+ this->parameter_list_[length].argument <<= CORBA::Any::from_boolean (this->constr_policy_ );
+ this->parameter_list_[length].mode = Dynamic::PARAM_IN;
- return &this->parameter_list_;
+ return &this->parameter_list_;
}
- Dynamic::ExceptionList *
- CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::exceptions (CORBA::Environment &)
- ACE_THROW_SPEC ((CORBA::SystemException))
- {
- // Generate the exception list on demand
- return 0;
+Dynamic::ExceptionList *
+CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::exceptions (
+ CORBA::Environment &
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand
+ return 0;
}
- CORBA::Any *
- CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::result (CORBA::Environment &)
- ACE_THROW_SPEC ((CORBA::SystemException))
- {
- // Generate the result on demand :
- CORBA::TypeCode tc (CORBA::tk_void);
- this->result_val_.type (&tc);
+CORBA::Any *
+CORBA_ConstructionPolicy::TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::result (
+ CORBA::Environment &
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand :
+ CORBA::TypeCode tc (CORBA::tk_void);
+ this->result_val_.type (&tc);
- return &this->result_val_;
- }
+ return &this->result_val_;
+}
#endif /* TAO_HAS_INTERCEPTORS && TAO_HAS_INTERFACE_REPOSITORY */
diff --git a/TAO/tao/DomainC.h b/TAO/tao/DomainC.h
index 69f7135ac74..ce6be1cb9b6 100644
--- a/TAO/tao/DomainC.h
+++ b/TAO/tao/DomainC.h
@@ -322,46 +322,56 @@ protected:
private:
CORBA_ConstructionPolicy (const CORBA_ConstructionPolicy &);
void operator= (const CORBA_ConstructionPolicy &);
+
#if (TAO_HAS_INTERCEPTORS == 1) && (TAO_HAS_INTERFACE_REPOSITORY == 1)
- // Generation of interceptors related RequestInfo classes per operation.
+ // Generation of interceptors related RequestInfo classes per operation.
// This needed to be able to store the arguments, exceptiosn, constexts
// and build the lists dynamically on demand so that unnecessary time overhead
// of building these lists when they arent used is avoided.
- class TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager : public TAO_ClientRequest_Info
+ class TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager
+ : public TAO_ClientRequest_Info
{
public:
friend class CORBA_ConstructionPolicy;
TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (
- const char *_tao_operation,
- IOP::ServiceContextList &_tao_service_context_list,
- CORBA::Object *_tao_target , IR_InterfaceDef* object_type , CORBA::Boolean constr_policy ,
+ const char *_tao_operation,
+ IOP::ServiceContextList &_tao_service_context_list,
+ CORBA::Object *_tao_target,
+ IR_InterfaceDef *object_type,
+ CORBA::Boolean &constr_policy,
CORBA::Environment &ACE_TRY_ENV =
- TAO_default_environment ()
- );
+ TAO_default_environment ()
+ );
- virtual Dynamic::ParameterList * arguments (
- CORBA::Environment &ACE_TRY_ENV =
- TAO_default_environment ())
- ACE_THROW_SPEC ((CORBA::SystemException));
+ virtual Dynamic::ParameterList * arguments (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
virtual Dynamic::ExceptionList * exceptions (
- CORBA::Environment &ACE_TRY_ENV =
- TAO_default_environment ())
- ACE_THROW_SPEC ((CORBA::SystemException));
-
-virtual CORBA::Any * result (
- CORBA::Environment &ACE_TRY_ENV =
- TAO_default_environment ())
- ACE_THROW_SPEC ((CORBA::SystemException));
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ virtual CORBA::Any * result (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
-private:
-TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (const TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager &);
-void operator= (const TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager &);
-IR_InterfaceDef* & object_type_;
-CORBA::Boolean & constr_policy_;
-};
+ private:
+ TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (
+ const TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager &
+ );
+ void operator= (
+ const TAO_ClientRequest_Info_CORBA_ConstructionPolicy_make_domain_manager &
+ );
+ IR_InterfaceDef *object_type_;
+ CORBA::Boolean &constr_policy_;
+ };
#endif /* TAO_HAS_INTERCEPTORS && TAO_HAS_INTERFACE_REPOSITORY */
diff --git a/TAO/tao/PortableServer/DomainS.cpp b/TAO/tao/PortableServer/DomainS.cpp
index cf691bad13e..9ec89248e7f 100644
--- a/TAO/tao/PortableServer/DomainS.cpp
+++ b/TAO/tao/PortableServer/DomainS.cpp
@@ -1026,50 +1026,64 @@ void POA_CORBA__tao_thru_poa_collocated_ConstructionPolicy::make_domain_manager
}
#if (TAO_HAS_INTERCEPTORS == 1) && (TAO_HAS_INTERFACE_REPOSITORY == 1)
-POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (const char *_tao_operation,
-IOP::ServiceContextList &_tao_service_context_list,IR_InterfaceDef* object_type,CORBA::Boolean constr_policy,
-CORBA::Environment &)
- : TAO_ServerRequest_Info (_tao_operation, _tao_service_context_list),object_type_ (object_type),constr_policy_ (constr_policy)
+
+POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (
+ const char *_tao_operation,
+ IOP::ServiceContextList &_tao_service_context_list,
+ IR_InterfaceDef_ptr object_type,
+ CORBA::Boolean &constr_policy,
+ CORBA::Environment &
+ )
+ : TAO_ServerRequest_Info (
+ _tao_operation,
+ _tao_service_context_list
+ ),
+ object_type_ (object_type),
+ constr_policy_ (constr_policy)
{}
Dynamic::ParameterList *
POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::arguments (CORBA::Environment &)
ACE_THROW_SPEC ((CORBA::SystemException))
{
- // Generate the arg list on demand
+ // Generate the arg list on demand
CORBA::ULong length = 0;
- length = this->parameter_list_.length ();
- this->parameter_list_.length (length + 1);
- this->parameter_list_[length].argument <<= this->object_type_;
+ length = this->parameter_list_.length ();
+ this->parameter_list_.length (length + 1);
+ this->parameter_list_[length].argument <<= this->object_type_;
- this->parameter_list_[length].mode = Dynamic::PARAM_IN;
- length = this->parameter_list_.length ();
- this->parameter_list_.length (length + 1);
- this->parameter_list_[length].argument <<= CORBA::Any::from_boolean (this->constr_policy_ );
- this->parameter_list_[length].mode = Dynamic::PARAM_IN;
+ this->parameter_list_[length].mode = Dynamic::PARAM_IN;
+ length = this->parameter_list_.length ();
+ this->parameter_list_.length (length + 1);
+ this->parameter_list_[length].argument <<= CORBA::Any::from_boolean (this->constr_policy_);
+ this->parameter_list_[length].mode = Dynamic::PARAM_IN;
- return &this->parameter_list_;
+ return &this->parameter_list_;
}
- Dynamic::ExceptionList *
- POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::exceptions (CORBA::Environment &)
- ACE_THROW_SPEC ((CORBA::SystemException))
- {
- // Generate the exception list on demand
- return 0;
+Dynamic::ExceptionList *
+POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::exceptions (
+ CORBA::Environment &
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand
+ return 0;
}
- CORBA::Any *
- POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::result (CORBA::Environment &)
- ACE_THROW_SPEC ((CORBA::SystemException))
- {
- // Generate the result on demand
- CORBA::TypeCode tc (CORBA::tk_void);
+CORBA::Any *
+POA_CORBA_ConstructionPolicy::TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager::result (
+ CORBA::Environment &
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand
+ CORBA::TypeCode tc (CORBA::tk_void);
this->result_val_.type (&tc);
return &this->result_val_;
- }
+}
#endif /* TAO_HAS_INTERCEPTORS && TAO_HAS_INTERFACE_REPOSITORY */
diff --git a/TAO/tao/PortableServer/DomainS.h b/TAO/tao/PortableServer/DomainS.h
index 32e86144b41..0a0fdf4ec46 100644
--- a/TAO/tao/PortableServer/DomainS.h
+++ b/TAO/tao/PortableServer/DomainS.h
@@ -382,10 +382,10 @@ public:
public:
friend class POA_CORBA_ConstructionPolicy;
TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager (
- const char * _tao_operation,
+ const char *_tao_operation,
IOP::ServiceContextList &_tao_service_context_list,
- IR_InterfaceDef* object_type,
- CORBA::Boolean constr_policy,
+ IR_InterfaceDef_ptr object_type,
+ CORBA::Boolean &constr_policy,
CORBA::Environment &ACE_TRY_ENV =
TAO_default_environment ()
);
@@ -415,8 +415,8 @@ public:
void operator= (
const TAO_ServerRequest_Info_CORBA_ConstructionPolicy_make_domain_manager &
);
- IR_InterfaceDef* & object_type_;
- CORBA::Boolean & constr_policy_;
+ IR_InterfaceDef_ptr object_type_;
+ CORBA::Boolean &constr_policy_;
};
#endif /* TAO_HAS_INTERCEPTORS */
diff --git a/TAO/tao/ifrfwd.h b/TAO/tao/ifrfwd.h
index b4b5082ac45..6124799f184 100644
--- a/TAO/tao/ifrfwd.h
+++ b/TAO/tao/ifrfwd.h
@@ -450,7 +450,7 @@ TAO_NAMESPACE IR
typedef CORBA::String_out ContextIdentifier_out;
TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ContextIdentifier;
- enum TAO_Export DefinitionKind
+ enum DefinitionKind
{
dk_none,
dk_all,