summaryrefslogtreecommitdiff
path: root/TAO/tao/DynUnion_i.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/DynUnion_i.cpp')
-rw-r--r--TAO/tao/DynUnion_i.cpp1699
1 files changed, 512 insertions, 1187 deletions
diff --git a/TAO/tao/DynUnion_i.cpp b/TAO/tao/DynUnion_i.cpp
index c241308ca64..c157d4da09b 100644
--- a/TAO/tao/DynUnion_i.cpp
+++ b/TAO/tao/DynUnion_i.cpp
@@ -24,71 +24,43 @@
TAO_DynUnion_i::TAO_DynUnion_i (const CORBA_Any& any)
{
- ACE_DECLARE_NEW_CORBA_ENV;
- ACE_TRY
- {
- int tk = TAO_DynAny_i::unalias (any.type (),
- ACE_TRY_ENV);
- ACE_TRY_CHECK;
-
- if (tk == CORBA::tk_union)
- {
- // Initialize the typecode holder
- this->type_ = any.type ();
+ CORBA::Environment env;
- this->set_from_any (any,
- ACE_TRY_ENV);
- ACE_TRY_CHECK;
- }
- else
- {
- ACE_THROW (CORBA_ORB_InconsistentTypeCode ());
- }
- }
- ACE_CATCHANY
+ if (TAO_DynAny_i::unalias (any.type (),
+ env)
+ == CORBA::tk_union)
{
- // do nothing
+ // Initialize the typecode holder
+ this->type_ = any.type ();
+
+ this->set_from_any (any, env);
}
- ACE_ENDTRY;
- ACE_CHECK;
+ else
+ env.exception (new CORBA_ORB_InconsistentTypeCode);
}
TAO_DynUnion_i::TAO_DynUnion_i (CORBA_TypeCode_ptr tc)
{
- ACE_DECLARE_NEW_CORBA_ENV;
- ACE_TRY
- {
- int tk = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_TRY_CHECK;
+ CORBA::Environment env;
- if (tk == CORBA::tk_union)
- {
- // Initialize the typecode holder
- this->type_ = CORBA::TypeCode::_duplicate (tc);
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_union)
+ {
+ // Initialize the typecode holder
+ this->type_ = CORBA::TypeCode::_duplicate (tc);
- CORBA::TypeCode_ptr disc_tc = tc->discriminator_type (ACE_TRY_ENV);
- ACE_TRY_CHECK;
+ CORBA::TypeCode_ptr disc_tc = tc->discriminator_type (env);
- // Get a typecode into the discriminator holder.
- this->discriminator_ = TAO_DynAny_i::create_dyn_any (disc_tc,
- ACE_TRY_ENV);
- ACE_TRY_CHECK;
+ // Get a typecode into the discriminator holder.
+ this->discriminator_ = TAO_DynAny_i::create_dyn_any (disc_tc,
+ env);
- // To be filled in by from_any() or assign().
- this->member_ = 0;
- }
- else
- {
- ACE_THROW (CORBA_ORB_InconsistentTypeCode ());
- }
+ // To be filled in by from_any() or assign().
+ this->member_ = 0;
}
- ACE_CATCHANY
- {
- // do nothing
- }
- ACE_ENDTRY;
- ACE_CHECK;
+ else
+ env.exception (new CORBA_ORB_InconsistentTypeCode);
}
TAO_DynUnion_i::~TAO_DynUnion_i (void)
@@ -102,9 +74,9 @@ TAO_DynUnion_i::~TAO_DynUnion_i (void)
// value, if one exists.
CORBA::Boolean
-TAO_DynUnion_i::set_as_default (CORBA::Environment& ACE_TRY_ENV)
+TAO_DynUnion_i::set_as_default (CORBA::Environment& env)
{
- if ((CORBA::Long) this->current_index_ == this->type_->default_index (ACE_TRY_ENV))
+ if ((CORBA::Long) this->current_index_ == this->type_->default_index (env))
return 1;
else
return 0;
@@ -127,16 +99,10 @@ TAO_DynUnion_i::discriminator (CORBA::Environment &)
}
CORBA::TCKind
-TAO_DynUnion_i::discriminator_kind (CORBA::Environment& ACE_TRY_ENV)
+TAO_DynUnion_i::discriminator_kind (CORBA::Environment& env)
{
- CORBA_TypeCode_ptr tc = this->type_->discriminator_type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (CORBA::tk_null);
-
- CORBA::TCKind retval = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (CORBA::tk_null);
-
- return retval;
+ return TAO_DynAny_i::unalias (this->type_->discriminator_type (env),
+ env);
}
CORBA_DynAny_ptr
@@ -146,13 +112,10 @@ TAO_DynUnion_i::member (CORBA::Environment &)
}
char*
-TAO_DynUnion_i::member_name (CORBA::Environment& ACE_TRY_ENV)
+TAO_DynUnion_i::member_name (CORBA::Environment& env)
{
- const char *retval = this->type_->member_name (this->current_index_,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-
- return CORBA::string_dup (retval);
+ return CORBA::string_dup (this->type_->member_name (this->current_index_,
+ env));
}
// If a valid member name is supplied, this function creates a new
@@ -160,50 +123,33 @@ TAO_DynUnion_i::member_name (CORBA::Environment& ACE_TRY_ENV)
void
TAO_DynUnion_i::member_name (const char* member_name,
- CORBA::Environment& ACE_TRY_ENV)
+ CORBA::Environment& env)
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
i++)
{
- const char *temp = this->type_->member_name (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (!ACE_OS::strcmp (member_name,
- temp))
+ if (!ACE_OS::strcmp (member_name,
+ this->type_->member_name (i,
+ env)))
{
// No sense doing anything if we're just "resetting" to the
// current member.
if (i == this->current_index_)
- {
- return;
- }
+ return;
else
{
- CORBA_TypeCode_ptr member_type =
- this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
this->member_ =
- TAO_DynAny_i::create_dyn_any (member_type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr disc_any =
- this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (this->type_->member_type (i,
+ env),
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*disc_any,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
@@ -212,71 +158,42 @@ TAO_DynUnion_i::member_name (const char* member_name,
}
CORBA::TCKind
-TAO_DynUnion_i::member_kind (CORBA::Environment& ACE_TRY_ENV)
+TAO_DynUnion_i::member_kind (CORBA::Environment& env)
{
- CORBA_TypeCode_ptr tc = this->type_->member_type (this->current_index_,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (CORBA::tk_null);
-
- CORBA::TCKind retval = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (CORBA::tk_null);
-
- return retval;
+ return TAO_DynAny_i::unalias (this->type_->member_type (this->current_index_,
+ env),
+ env);
}
// Common functions
void
TAO_DynUnion_i::assign (CORBA_DynAny_ptr dyn_any,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
// *dyn_any->to_any raises Invalid if arg is bad.
- CORBA_TypeCode_ptr tc = dyn_any->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::Boolean equal = this->type_->equal (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (equal)
- {
- CORBA_Any_ptr any_ptr = dyn_any->to_any (ACE_TRY_ENV);
- ACE_CHECK;
-
- this->from_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (this->type_->equal (dyn_any->type (env),
+ env))
+ this->from_any (*dyn_any->to_any (env),
+ env);
else
- {
- ACE_THROW (CORBA_DynAny::Invalid ());
- }
+ env.exception (new CORBA_DynAny::Invalid);
}
CORBA_DynAny_ptr
-TAO_DynUnion_i::copy (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::copy (CORBA::Environment &env)
{
- CORBA_Any_ptr a = this->to_any (ACE_TRY_ENV);
- ACE_CHECK_RETURN (CORBA_DynAny::_nil ());
-
- CORBA_DynAny_ptr retval =
- TAO_DynAny_i::create_dyn_any (*a,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (CORBA_DynAny::_nil ());
-
- return retval;
+ CORBA_Any_ptr a = this->to_any (env);
+ return TAO_DynAny_i::create_dyn_any (*a,
+ env);
}
void
-TAO_DynUnion_i::destroy (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::destroy (CORBA::Environment &env)
{
// Free the two DynAnys.
- this->member_->destroy (ACE_TRY_ENV);
- ACE_CHECK;
-
- this->discriminator_->destroy (ACE_TRY_ENV);
- ACE_CHECK;
+ this->member_->destroy (env);
+ this->discriminator_->destroy (env);
// Free the top level
delete this;
@@ -284,33 +201,25 @@ TAO_DynUnion_i::destroy (CORBA::Environment &ACE_TRY_ENV)
void
TAO_DynUnion_i::from_any (const CORBA_Any& any,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA::Boolean equal = this->type_.in ()->equal (any.type (),
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (equal)
- {
- this->set_from_any (any,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (this->type_.in ()->equal (any.type (),
+ env))
+ this->set_from_any (any,
+ env);
else
- {
- ACE_THROW (CORBA_DynAny::Invalid ());
- }
+ env.exception (new CORBA_DynAny::Invalid);
}
CORBA::Any_ptr
TAO_DynUnion_i::to_any (CORBA::Environment& ACE_TRY_ENV)
{
// Both Dynanys must have been initialied.
- if (this->member_.in () == 0
+ if (this->member_.in () == 0
|| this->discriminator_.in () == 0)
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ ACE_TRY_ENV.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
TAO_OutputCDR out_cdr;
@@ -319,13 +228,11 @@ TAO_DynUnion_i::to_any (CORBA::Environment& ACE_TRY_ENV)
CORBA_TypeCode_ptr disc_tc =
this->discriminator_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
CORBA_Any_var disc_any =
this->discriminator_->to_any (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
- ACE_Message_Block *disc_mb =
+ ACE_Message_Block *disc_mb =
disc_any->_tao_get_cdr ();
TAO_InputCDR disc_cdr (disc_mb);
@@ -333,17 +240,14 @@ TAO_DynUnion_i::to_any (CORBA::Environment& ACE_TRY_ENV)
out_cdr.append (disc_tc,
&disc_cdr,
ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
// Add the member to the CDR stream.
CORBA_TypeCode_ptr member_tc =
this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
CORBA_Any_var member_any =
this->member_->to_any (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
ACE_Message_Block *member_mb =
member_any->_tao_get_cdr ();
@@ -353,22 +257,17 @@ TAO_DynUnion_i::to_any (CORBA::Environment& ACE_TRY_ENV)
out_cdr.append (member_tc,
&member_cdr,
ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
// Make the Any.
TAO_InputCDR in_cdr (out_cdr);
CORBA_Any *retval;
- CORBA_TypeCode_ptr tc = this->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-
ACE_NEW_THROW_EX (retval,
- CORBA_Any (tc,
+ CORBA_Any (this->type (ACE_TRY_ENV),
0,
in_cdr.start ()),
CORBA::NO_MEMORY ());
ACE_CHECK_RETURN (0);
-
return retval;
}
@@ -385,70 +284,45 @@ TAO_DynUnion_i::current_component (CORBA::Environment &)
}
CORBA::Boolean
-TAO_DynUnion_i::next (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::next (CORBA::Environment &env)
{
- CORBA::ULong count = this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-
- if (this->current_index_ + 1 == count)
- {
- return 0;
- }
+ if (this->current_index_ + 1 == this->type_->member_count (env))
+ return 0;
++this->current_index_;
if (!CORBA::is_nil (this->member_.in ()))
- {
- this->member_->destroy (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
- }
-
- CORBA_TypeCode_ptr tc = this->type_->member_type (this->current_index_,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
+ this->member_->destroy (env);
this->member_ =
- TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-
+ TAO_DynAny_i::create_dyn_any (this->type_->member_type (this->current_index_,
+ env),
+ env);
return 1;
}
CORBA::Boolean
TAO_DynUnion_i::seek (CORBA::Long slot,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA::ULong count = this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-
- if (slot < 0 || slot >= (CORBA::Long) count)
- {
- return 0;
- }
+ if (slot < 0
+ || slot >= (CORBA::Long) this->type_->member_count (env))
+ return 0;
this->current_index_ = slot;
if (!CORBA::is_nil (this->member_.in ()))
- {
- this->member_->destroy (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
- }
-
- CORBA_TypeCode_ptr tc = this->type_->member_type (this->current_index_,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
+ this->member_->destroy (env);
this->member_ =
- TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-
+ TAO_DynAny_i::create_dyn_any (this->type_->member_type (this->current_index_,
+ env),
+ env);
return 1;
}
void
-TAO_DynUnion_i::rewind (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::rewind (CORBA::Environment &env)
{
if (this->current_index_ == 0)
return;
@@ -456,19 +330,12 @@ TAO_DynUnion_i::rewind (CORBA::Environment &ACE_TRY_ENV)
this->current_index_ = 0;
if (!CORBA::is_nil (this->member_.in ()))
- {
- this->member_->destroy (ACE_TRY_ENV);
- ACE_CHECK;
- }
-
- CORBA_TypeCode_ptr tc = this->type_->member_type (this->current_index_,
- ACE_TRY_ENV);
- ACE_CHECK;
+ this->member_->destroy (env);
this->member_ =
- TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
+ TAO_DynAny_i::create_dyn_any (this->type_->member_type (this->current_index_,
+ env),
+ env);
}
// Insert and get functions
@@ -481,26 +348,17 @@ TAO_DynUnion_i::rewind (CORBA::Environment &ACE_TRY_ENV)
void
TAO_DynUnion_i::insert_boolean (CORBA::Boolean value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_boolean)
- {
- this->member_->insert_boolean (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_boolean)
+ this->member_->insert_boolean (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -508,64 +366,43 @@ TAO_DynUnion_i::insert_boolean (CORBA::Boolean value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_boolean)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_boolean)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_boolean (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_octet (CORBA::Octet value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_octet)
- {
- this->member_->insert_octet (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_octet)
+ this->member_->insert_octet (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -573,64 +410,43 @@ TAO_DynUnion_i::insert_octet (CORBA::Octet value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_octet)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_octet)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_octet (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_char (CORBA::Char value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_char)
- {
- this->member_->insert_char (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_char)
+ this->member_->insert_char (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -638,64 +454,42 @@ TAO_DynUnion_i::insert_char (CORBA::Char value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_char)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_char)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_char (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_short (CORBA::Short value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_short)
- {
- this->member_->insert_short (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_short)
+ this->member_->insert_short (value, env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -703,64 +497,42 @@ TAO_DynUnion_i::insert_short (CORBA::Short value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_short)
+ env);
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_short)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_short (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_long (CORBA::Long value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_long)
- {
- this->member_->insert_long (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_long)
+ this->member_->insert_long (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -768,129 +540,86 @@ TAO_DynUnion_i::insert_long (CORBA::Long value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- if (try_kind == CORBA::tk_long)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_long)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_long (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_ushort (CORBA::UShort value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_ushort)
- {
- this->member_->insert_ushort (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_ushort)
+ this->member_->insert_ushort (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
i++)
{
- CORBA::TypeCode_ptr tc =
- this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ CORBA::TypeCode_ptr tc = this->type_->member_type (i,
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_ushort)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_ushort)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_ushort (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_ulong (CORBA::ULong value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_ulong)
- {
- this->member_->insert_ulong (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_ulong)
+ this->member_->insert_ulong (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -898,64 +627,43 @@ TAO_DynUnion_i::insert_ulong (CORBA::ULong value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_ulong)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_ulong)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_ulong (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_float (CORBA::Float value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_float)
- {
- this->member_->insert_float (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_float)
+ this->member_->insert_float (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -963,64 +671,43 @@ TAO_DynUnion_i::insert_float (CORBA::Float value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_float)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_float)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_float (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_double (CORBA::Double value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_double)
- {
- this->member_->insert_double (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_double)
+ this->member_->insert_double (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1028,64 +715,43 @@ TAO_DynUnion_i::insert_double (CORBA::Double value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_double)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_double)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_double (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_string (const char* value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_string)
- {
- this->member_->insert_string (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_string)
+ this->member_->insert_string (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1093,64 +759,42 @@ TAO_DynUnion_i::insert_string (const char* value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_string)
+ env);
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_string)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_string (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_reference (CORBA::Object_ptr value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_objref)
- {
- this->member_->insert_reference (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_objref)
+ this->member_->insert_reference (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1158,64 +802,43 @@ TAO_DynUnion_i::insert_reference (CORBA::Object_ptr value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- if (try_kind == CORBA::tk_objref)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_objref)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_reference (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_typecode (CORBA::TypeCode_ptr value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_TypeCode)
- {
- this->member_->insert_typecode (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_TypeCode)
+ this->member_->insert_typecode (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1223,64 +846,43 @@ TAO_DynUnion_i::insert_typecode (CORBA::TypeCode_ptr value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- if (try_kind == CORBA::tk_TypeCode)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_TypeCode)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_typecode (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_longlong (CORBA::LongLong value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_longlong)
- {
- this->member_->insert_longlong (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_longlong)
+ this->member_->insert_longlong (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1288,64 +890,42 @@ TAO_DynUnion_i::insert_longlong (CORBA::LongLong value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_longlong)
+ env);
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_longlong)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_longlong (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_ulonglong (CORBA::ULongLong value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_ulonglong)
- {
- this->member_->insert_ulonglong (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_ulonglong)
+ this->member_->insert_ulonglong (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1353,64 +933,42 @@ TAO_DynUnion_i::insert_ulonglong (CORBA::ULongLong value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_ulonglong)
+ env);
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_ulonglong)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_ulonglong (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_wchar (CORBA::WChar value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_wchar)
- {
- this->member_->insert_wchar (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_wchar)
+ this->member_->insert_wchar (value,
+ env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1418,64 +976,42 @@ TAO_DynUnion_i::insert_wchar (CORBA::WChar value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_wchar)
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_wchar)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_wchar (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
void
TAO_DynUnion_i::insert_any (const CORBA::Any& value,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
- CORBA_TypeCode_ptr type = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (type,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (kind == CORBA::tk_any)
- {
- this->member_->insert_any (value,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
+ if (TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_any)
+ this->member_->insert_any (value, env);
else
{
CORBA::ULong count =
- this->type_->member_count (ACE_TRY_ENV);
- ACE_CHECK;
+ this->type_->member_count (env);
for (CORBA::ULong i = 0;
i < count;
@@ -1483,461 +1019,274 @@ TAO_DynUnion_i::insert_any (const CORBA::Any& value,
{
CORBA::TypeCode_ptr tc =
this->type_->member_type (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA::TCKind try_kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- if (try_kind == CORBA::tk_any)
+ env);
+ if (TAO_DynAny_i::unalias (tc,
+ env)
+ == CORBA::tk_any)
{
this->member_ =
TAO_DynAny_i::create_dyn_any (tc,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->member_->insert_any (value,
- ACE_TRY_ENV);
- ACE_CHECK;
-
- CORBA_Any_ptr any_ptr = this->type_->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ env);
this->discriminator_ =
- TAO_DynAny_i::create_dyn_any (*any_ptr,
- ACE_TRY_ENV);
- ACE_CHECK;
-
+ TAO_DynAny_i::create_dyn_any (*this->type_->member_label (i,
+ env),
+ env);
this->current_index_ = i;
return;
}
}
- ACE_THROW (CORBA_DynAny::InvalidValue ());
+ env.exception (new CORBA_DynAny::InvalidValue);
}
}
// Get functions
CORBA::Boolean
-TAO_DynUnion_i::get_boolean (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_boolean (CORBA::Environment &env)
{
- CORBA::Boolean retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_boolean))
- {
- retval = this->member_->get_boolean (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_boolean)
+ return this->member_->get_boolean (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Octet
-TAO_DynUnion_i::get_octet (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_octet (CORBA::Environment &env)
{
- CORBA::Octet retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_octet))
- {
- retval = this->member_->get_octet (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_octet)
+ return this->member_->get_octet (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Char
-TAO_DynUnion_i::get_char (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_char (CORBA::Environment &env)
{
- CORBA::Char retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_char))
- {
- retval = this->member_->get_char (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_char)
+ return this->member_->get_char (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Short
-TAO_DynUnion_i::get_short (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_short (CORBA::Environment &env)
{
- CORBA::Short retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_short))
- {
- retval = this->member_->get_short (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_short)
+ return this->member_->get_short (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Long
-TAO_DynUnion_i::get_long (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_long (CORBA::Environment &env)
{
- CORBA::Long retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_long))
- {
- retval = this->member_->get_long (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_long)
+ return this->member_->get_long (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::UShort
-TAO_DynUnion_i::get_ushort(CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_ushort(CORBA::Environment &env)
{
- CORBA::UShort retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_ushort))
- {
- retval = this->member_->get_ushort (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_ushort)
+ return this->member_->get_ushort (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::ULong
-TAO_DynUnion_i::get_ulong (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_ulong (CORBA::Environment &env)
{
- CORBA::ULong retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_ulong))
- {
- retval = this->member_->get_ulong (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_ulong)
+ return this->member_->get_ulong (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Float
-TAO_DynUnion_i::get_float (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_float (CORBA::Environment &env)
{
- CORBA::Float retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_float))
- {
- retval = this->member_->get_float (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_float)
+ return this->member_->get_float (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Double
-TAO_DynUnion_i::get_double (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_double (CORBA::Environment &env)
{
- CORBA::Double retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_double))
- {
- retval = this->member_->get_double (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_double)
+ return this->member_->get_double (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::String
-TAO_DynUnion_i::get_string (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_string (CORBA::Environment &env)
{
- CORBA::String retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_string))
- {
- retval = this->member_->get_string (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_string)
+ return this->member_->get_string (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::TypeCode_ptr
-TAO_DynUnion_i::get_typecode (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_typecode (CORBA::Environment &env)
{
- CORBA::TypeCode_ptr retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_TypeCode))
- {
- retval = this->member_->get_typecode (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_TypeCode)
+ return this->member_->get_typecode (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Object_ptr
-TAO_DynUnion_i::get_reference (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_reference (CORBA::Environment &env)
{
- CORBA::Object_ptr retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_objref))
- {
- retval = this->member_->get_reference (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_objref)
+ return this->member_->get_reference (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::LongLong
-TAO_DynUnion_i::get_longlong (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_longlong (CORBA::Environment &env)
{
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_longlong)
+ return this->member_->get_longlong (env);
+ else
+ {
+ env.exception (new CORBA_DynAny::Invalid);
+
#if defined (ACE_LACKS_LONGLONG_T)
- CORBA::LongLong retval = {0, 0};
+ CORBA::LongLong tmp = {0, 0};
+ return tmp;
#else /* ! ACE_LACKS_LONGLONG_T */
- CORBA::LongLong retval = 0;
+ return 0;
#endif /* ! ACE_LACKS_LONGLONG_T */
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_longlong))
- {
- retval = this->member_->get_longlong (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
- else
- {
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- retval);
}
}
CORBA::ULongLong
-TAO_DynUnion_i::get_ulonglong (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_ulonglong (CORBA::Environment &env)
{
- CORBA::ULongLong retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_ulonglong))
- {
- retval = this->member_->get_ulonglong (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_ulonglong)
+ return this->member_->get_ulonglong (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::WChar
-TAO_DynUnion_i::get_wchar (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_wchar (CORBA::Environment &env)
{
- CORBA::WChar retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_wchar))
- {
- retval = this->member_->get_wchar (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_wchar)
+ return this->member_->get_wchar (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
CORBA::Any_ptr
-TAO_DynUnion_i::get_any (CORBA::Environment &ACE_TRY_ENV)
+TAO_DynUnion_i::get_any (CORBA::Environment &env)
{
- CORBA::Any_ptr retval = 0;
-
- CORBA_TypeCode_ptr tc = this->member_->type (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- CORBA::TCKind kind = TAO_DynAny_i::unalias (tc,
- ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- if (this->member_.in () && (kind == CORBA::tk_any))
- {
- retval = this->member_->get_any (ACE_TRY_ENV);
- ACE_CHECK_RETURN (retval);
-
- return retval;
- }
+ if (this->member_.in ()
+ && TAO_DynAny_i::unalias (this->member_->type (env),
+ env)
+ == CORBA::tk_any)
+ return this->member_->get_any (env);
else
{
- ACE_THROW_RETURN (CORBA_DynAny::Invalid (),
- 0);
+ env.exception (new CORBA_DynAny::Invalid);
+ return 0;
}
}
@@ -2090,57 +1439,45 @@ TAO_DynUnion_i::get_extractor (CORBA::TCKind kind,
// argument.
void
TAO_DynUnion_i::set_from_any (const CORBA_Any& any,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::Environment &env)
{
// Get the CDR stream of the argument.
ACE_Message_Block* mb = any._tao_get_cdr ();
TAO_InputCDR cdr (mb);
- CORBA_TypeCode_ptr disc_tc =
- any.type ()->discriminator_type (ACE_TRY_ENV);
- ACE_CHECK;
+ CORBA_TypeCode_ptr disc_tc = any.type ()->discriminator_type (env);
CORBA_Any disc_any (disc_tc,
0,
cdr.start ());
if (!CORBA::is_nil (this->discriminator_.in ()))
- {
- this->discriminator_->destroy (ACE_TRY_ENV);
- ACE_CHECK;
- }
+ this->discriminator_->destroy (env);
// Set the discriminator holder.
this->discriminator_ = TAO_DynAny_i::create_dyn_any (disc_any,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
cdr.skip (disc_tc);
- CORBA::ULong count = any.type ()->member_count (ACE_TRY_ENV);
- ACE_CHECK;
-
+ CORBA::ULong count = any.type ()->member_count (env);
CORBA::ULong i;
CORBA::Long default_index = -1;
- CORBA::TCKind discriminator_kind = disc_tc->kind (ACE_TRY_ENV);
- ACE_CHECK;
+ CORBA::TCKind discriminator_kind = disc_tc->kind (env);
DU_Extractor_base* functor =
this->get_extractor (discriminator_kind,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
// Get the index.
for (i = 0; i < count; i++)
{
CORBA_Any label_any = *any.type ()->member_label (i,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
- CORBA::TCKind label_kind = label_any.type ()->kind (ACE_TRY_ENV);
- ACE_CHECK;
+ CORBA::TCKind label_kind = label_any.type ()->kind (env);
// If there is a default index, note the value but don't call
// check_match.
@@ -2161,35 +1498,23 @@ TAO_DynUnion_i::set_from_any (const CORBA_Any& any,
delete functor;
if (i == count && default_index == -1)
- {
- ACE_THROW (CORBA_DynAny::Invalid ());
- }
+ env.exception (new CORBA_DynAny::Invalid);
else
{
if (i == count && default_index != -1)
- {
- this->current_index_ = default_index;
- }
-
- CORBA::TypeCode_ptr member_tc =
- any.type ()->member_type (this->current_index_,
- ACE_TRY_ENV);
- ACE_CHECK;
+ this->current_index_ = default_index;
- CORBA_Any member_any (member_tc,
+ CORBA_Any member_any (any.type ()->member_type (this->current_index_,
+ env),
0,
cdr.start ());
if (!CORBA::is_nil (this->member_.in ()))
- {
- this->member_->destroy (ACE_TRY_ENV);
- ACE_CHECK;
- }
+ this->member_->destroy (env);
this->member_ =
TAO_DynAny_i::create_dyn_any (member_any,
- ACE_TRY_ENV);
- ACE_CHECK;
+ env);
}
}