#include <DynCommon.h>
Inheritance diagram for TAO_DynCommon:
Public Member Functions | |
TAO_DynCommon (void) | |
Constructor. | |
virtual | ~TAO_DynCommon (void) |
Destructor. | |
virtual CORBA::TypeCode_ptr | type () throw ( CORBA::SystemException ) |
virtual void | assign (DynamicAny::DynAny_ptr dyn_any) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch ) |
virtual void | insert_boolean (CORBA::Boolean value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_octet (CORBA::Octet value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_char (CORBA::Char value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_short (CORBA::Short value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_ushort (CORBA::UShort value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_long (CORBA::Long value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_ulong (CORBA::ULong value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_float (CORBA::Float value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_double (CORBA::Double value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_string (const char *value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_reference (CORBA::Object_ptr value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_typecode (CORBA::TypeCode_ptr value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_longlong (CORBA::LongLong value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_ulonglong (CORBA::ULongLong value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_longdouble (CORBA::LongDouble value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_wchar (CORBA::WChar value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_wstring (const CORBA::WChar *value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_any (const CORBA::Any &value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_dyn_any (DynamicAny::DynAny_ptr value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual void | insert_val (CORBA::ValueBase *value) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Boolean | get_boolean () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Octet | get_octet () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Char | get_char () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Short | get_short () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::UShort | get_ushort () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Long | get_long () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::ULong | get_ulong () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Float | get_float () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Double | get_double () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual char * | get_string () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Object_ptr | get_reference () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::TypeCode_ptr | get_typecode () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::LongLong | get_longlong () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::ULongLong | get_ulonglong () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::LongDouble | get_longdouble () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::WChar | get_wchar () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::WChar * | get_wstring () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Any * | get_any () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual DynamicAny::DynAny_ptr | get_dyn_any () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::ValueBase * | get_val () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
virtual CORBA::Boolean | seek (CORBA::Long index) throw ( CORBA::SystemException ) |
virtual void | rewind () throw ( CORBA::SystemException ) |
virtual CORBA::Boolean | next () throw ( CORBA::SystemException ) |
virtual DynamicAny::DynAny_ptr | copy () throw ( CORBA::SystemException ) |
virtual CORBA::ULong | component_count () throw ( CORBA::SystemException ) |
Protected Member Functions | |
void | set_flag (DynamicAny::DynAny_ptr component, CORBA::Boolean destroying) throw ( CORBA::SystemException ) |
Protected Attributes | |
CORBA::Boolean | ref_to_component_ |
Were we created by current_component()? | |
CORBA::Boolean | container_is_destroying_ |
Flag to let destroy() call by container override the flag above. | |
CORBA::Boolean | has_components_ |
Do we contain other Dynamic Anys? | |
CORBA::Boolean | destroyed_ |
Has destroy() been called on us yet? | |
CORBA::Long | current_position_ |
Slot of the current component (if any). | |
CORBA::ULong | component_count_ |
Number of components, as defined by CORBA 2.4.2. | |
CORBA::TypeCode_var | type_ |
Holder for our type code. | |
CORBA::Any | any_ |
Private Member Functions | |
DynamicAny::DynAny_ptr | check_component () throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch, DynamicAny::DynAny::InvalidValue ) |
void | check_type (CORBA::TypeCode_ptr tc) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch ) |
CORBA::TypeCode_ptr | check_type_and_unalias (CORBA::TypeCode_ptr tc) throw ( CORBA::SystemException, DynamicAny::DynAny::TypeMismatch ) |
Definition at line 37 of file DynCommon.h.
|
Constructor.
Definition at line 24 of file DynCommon.cpp.
00025 { 00026 } |
|
Destructor.
Definition at line 28 of file DynCommon.cpp.
00029 { 00030 } |
|
Definition at line 50 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_ptr.
00056 { 00057 if (this->destroyed_) 00058 { 00059 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00060 } 00061 00062 CORBA::TypeCode_var tc = dyn_any->type (ACE_ENV_SINGLE_ARG_PARAMETER); 00063 ACE_CHECK; 00064 00065 CORBA::Boolean equivalent = 00066 this->type_.in ()->equivalent (tc.in () 00067 ACE_ENV_ARG_PARAMETER); 00068 ACE_CHECK; 00069 00070 if (equivalent) 00071 { 00072 CORBA::Any_var any = dyn_any->to_any (ACE_ENV_SINGLE_ARG_PARAMETER); 00073 ACE_CHECK; 00074 00075 this->from_any (any.in () 00076 ACE_ENV_ARG_PARAMETER); 00077 ACE_CHECK; 00078 } 00079 else 00080 { 00081 ACE_THROW (DynamicAny::DynAny::TypeMismatch ()); 00082 } 00083 } |
|
Definition at line 1777 of file DynCommon.cpp. References TAO_Objref_Var_T< T >::_retn(), ACE_CHECK_RETURN, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, DynamicAny::DynAny_var, and TAO_DynAnyFactory::unalias().
01783 { 01784 if (this->current_position_ == -1) 01785 { 01786 ACE_THROW_RETURN (DynamicAny::DynAny::InvalidValue (), 01787 DynamicAny::DynAny::_nil ()); 01788 } 01789 01790 DynamicAny::DynAny_var cc = 01791 this->current_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01792 ACE_CHECK_RETURN (DynamicAny::DynAny::_nil ()); 01793 01794 CORBA::TypeCode_var tc = cc->type (ACE_ENV_SINGLE_ARG_PARAMETER); 01795 ACE_CHECK_RETURN (DynamicAny::DynAny::_nil ()); 01796 01797 CORBA::TCKind kind = TAO_DynAnyFactory::unalias (tc.in () 01798 ACE_ENV_ARG_PARAMETER); 01799 ACE_CHECK_RETURN (DynamicAny::DynAny::_nil ()); 01800 01801 // We are here because we are a component that is the target of 01802 // an insert_*() call on our container. It is 01803 // illegal to insert anything into a component that itself has 01804 // components. 01805 switch (kind) 01806 { 01807 case CORBA::tk_array: 01808 case CORBA::tk_except: 01809 case CORBA::tk_sequence: 01810 case CORBA::tk_struct: 01811 case CORBA::tk_union: 01812 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01813 DynamicAny::DynAny::_nil ()); 01814 default: 01815 return cc._retn (); 01816 } 01817 } |
|
Definition at line 1820 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, and ACE_THROW.
01826 { 01827 CORBA::Boolean equivalent = 01828 this->type_->equivalent (tc 01829 ACE_ENV_ARG_PARAMETER); 01830 ACE_CHECK; 01831 01832 if (!equivalent) 01833 { 01834 ACE_THROW (DynamicAny::DynAny::TypeMismatch ()); 01835 } 01836 } |
|
Definition at line 1839 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_ARG_PARAMETER, and TAO_DynAnyFactory::strip_alias().
01845 { 01846 this->check_type (tc 01847 ACE_ENV_ARG_PARAMETER); 01848 ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); 01849 01850 return TAO_DynAnyFactory::strip_alias (tc 01851 ACE_ENV_ARG_PARAMETER); 01852 } |
|
Implements DynamicAny::DynAny. Definition at line 1632 of file DynCommon.cpp. References ACE_THROW_RETURN.
01636 { 01637 if (this->destroyed_) 01638 { 01639 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01640 0); 01641 } 01642 01643 return this->component_count_; 01644 } |
|
Implements DynamicAny::DynAny. Definition at line 1609 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, DynamicAny::DynAny_ptr, and TAO_DynAnyFactory::make_dyn_any().
01613 { 01614 if (this->destroyed_) 01615 { 01616 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01617 DynamicAny::DynAny::_nil ()); 01618 } 01619 01620 CORBA::Any_var any = this->to_any (ACE_ENV_SINGLE_ARG_PARAMETER); 01621 ACE_CHECK_RETURN (DynamicAny::DynAny::_nil ()); 01622 01623 DynamicAny::DynAny_ptr retval = 01624 TAO_DynAnyFactory::make_dyn_any (any.in () 01625 ACE_ENV_ARG_PARAMETER); 01626 ACE_CHECK_RETURN (DynamicAny::DynAny::_nil ()); 01627 01628 return retval; 01629 } |
|
Implements DynamicAny::DynAny. Definition at line 1459 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_NEW_RETURN, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01465 { 01466 if (this->destroyed_) 01467 { 01468 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01469 0); 01470 } 01471 01472 if (this->has_components_) 01473 { 01474 DynamicAny::DynAny_var cc = 01475 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01476 ACE_CHECK_RETURN (0); 01477 01478 return cc->get_any (ACE_ENV_SINGLE_ARG_PARAMETER); 01479 } 01480 else 01481 { 01482 const CORBA::Any *tmp = 0; 01483 01484 if ((this->any_ >>= tmp) == 0) 01485 { 01486 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01487 0); 01488 } 01489 01490 CORBA::Any *retval = 0; 01491 ACE_NEW_RETURN (retval, 01492 CORBA::Any (*tmp), 01493 0); 01494 return retval; 01495 } 01496 } |
|
Implements DynamicAny::DynAny. Definition at line 817 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
00823 { 00824 if (this->destroyed_) 00825 { 00826 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 00827 0); 00828 } 00829 00830 if (this->has_components_) 00831 { 00832 DynamicAny::DynAny_var cc = 00833 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00834 ACE_CHECK_RETURN (0); 00835 00836 return cc->get_boolean (ACE_ENV_SINGLE_ARG_PARAMETER); 00837 } 00838 else 00839 { 00840 CORBA::Boolean retval; 00841 00842 if ((this->any_ >>= CORBA::Any::to_boolean (retval)) == 0) 00843 { 00844 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 00845 0); 00846 } 00847 00848 return retval; 00849 } 00850 } |
|
Implements DynamicAny::DynAny. Definition at line 889 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
00895 { 00896 if (this->destroyed_) 00897 { 00898 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 00899 0); 00900 } 00901 00902 if (this->has_components_) 00903 { 00904 DynamicAny::DynAny_var cc = 00905 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00906 ACE_CHECK_RETURN (0); 00907 00908 return cc->get_char (ACE_ENV_SINGLE_ARG_PARAMETER); 00909 } 00910 else 00911 { 00912 CORBA::Char retval; 00913 00914 if ((this->any_ >>= CORBA::Any::to_char (retval)) == 0) 00915 { 00916 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 00917 0); 00918 } 00919 00920 return retval; 00921 } 00922 } |
|
Implements DynamicAny::DynAny. Definition at line 1105 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01111 { 01112 if (this->destroyed_) 01113 { 01114 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01115 0); 01116 } 01117 01118 if (this->has_components_) 01119 { 01120 DynamicAny::DynAny_var cc = 01121 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01122 ACE_CHECK_RETURN (0); 01123 01124 return cc->get_double (ACE_ENV_SINGLE_ARG_PARAMETER); 01125 } 01126 else 01127 { 01128 CORBA::Double retval; 01129 01130 if ((this->any_ >>= retval) == 0) 01131 { 01132 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01133 0); 01134 } 01135 01136 return retval; 01137 } 01138 } |
|
Implements DynamicAny::DynAny. Definition at line 1501 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and TAO_DynAnyFactory::make_dyn_any().
01507 { 01508 if (this->destroyed_) 01509 { 01510 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01511 0); 01512 } 01513 01514 CORBA::Any_var any = this->get_any (ACE_ENV_SINGLE_ARG_PARAMETER); 01515 ACE_CHECK_RETURN (0); 01516 01517 return TAO_DynAnyFactory::make_dyn_any (any.in () 01518 ACE_ENV_ARG_PARAMETER); 01519 } |
|
Implements DynamicAny::DynAny. Definition at line 1069 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01075 { 01076 if (this->destroyed_) 01077 { 01078 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01079 0); 01080 } 01081 01082 if (this->has_components_) 01083 { 01084 DynamicAny::DynAny_var cc = 01085 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01086 ACE_CHECK_RETURN (0); 01087 01088 return cc->get_float (ACE_ENV_SINGLE_ARG_PARAMETER); 01089 } 01090 else 01091 { 01092 CORBA::Float retval; 01093 01094 if ((this->any_ >>= retval) == 0) 01095 { 01096 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01097 0); 01098 } 01099 01100 return retval; 01101 } 01102 } |
|
Implements DynamicAny::DynAny. Definition at line 997 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01003 { 01004 if (this->destroyed_) 01005 { 01006 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01007 0); 01008 } 01009 01010 if (this->has_components_) 01011 { 01012 DynamicAny::DynAny_var cc = 01013 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01014 ACE_CHECK_RETURN (0); 01015 01016 return cc->get_long (ACE_ENV_SINGLE_ARG_PARAMETER); 01017 } 01018 else 01019 { 01020 CORBA::Long retval; 01021 01022 if ((this->any_ >>= retval) == 0) 01023 { 01024 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01025 0); 01026 } 01027 01028 return retval; 01029 } 01030 } |
|
Implements DynamicAny::DynAny. Definition at line 1342 of file DynCommon.cpp. References ACE_CDR_LONG_DOUBLE_INITIALIZER, ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01348 { 01349 CORBA::LongDouble retval = ACE_CDR_LONG_DOUBLE_INITIALIZER; 01350 01351 if (this->destroyed_) 01352 { 01353 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01354 retval); 01355 } 01356 01357 if (this->has_components_) 01358 { 01359 DynamicAny::DynAny_var cc = 01360 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01361 ACE_CHECK_RETURN (retval); 01362 01363 return cc->get_longdouble (ACE_ENV_SINGLE_ARG_PARAMETER); 01364 } 01365 else 01366 { 01367 if ((this->any_ >>= retval) == 0) 01368 { 01369 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01370 retval); 01371 } 01372 01373 return retval; 01374 } 01375 } |
|
Implements DynamicAny::DynAny. Definition at line 1270 of file DynCommon.cpp. References ACE_CDR_LONGLONG_INITIALIZER, ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01276 { 01277 CORBA::LongLong retval = ACE_CDR_LONGLONG_INITIALIZER; 01278 01279 if (this->destroyed_) 01280 { 01281 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01282 retval); 01283 } 01284 01285 if (this->has_components_) 01286 { 01287 DynamicAny::DynAny_var cc = 01288 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01289 ACE_CHECK_RETURN (retval); 01290 01291 return cc->get_longlong (ACE_ENV_SINGLE_ARG_PARAMETER); 01292 } 01293 else 01294 { 01295 if ((this->any_ >>= retval) == 0) 01296 { 01297 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01298 retval); 01299 } 01300 01301 return retval; 01302 } 01303 } |
|
Implements DynamicAny::DynAny. Definition at line 853 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
00859 { 00860 if (this->destroyed_) 00861 { 00862 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 00863 0); 00864 } 00865 00866 if (this->has_components_) 00867 { 00868 DynamicAny::DynAny_var cc = 00869 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00870 ACE_CHECK_RETURN (0); 00871 00872 return cc->get_octet (ACE_ENV_SINGLE_ARG_PARAMETER); 00873 } 00874 else 00875 { 00876 CORBA::Octet retval; 00877 00878 if ((this->any_ >>= CORBA::Any::to_octet (retval)) == 0) 00879 { 00880 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 00881 0); 00882 } 00883 00884 return retval; 00885 } 00886 } |
|
Implements DynamicAny::DynAny. Definition at line 1198 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01204 { 01205 if (this->destroyed_) 01206 { 01207 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01208 CORBA::Object::_nil ()); 01209 } 01210 01211 if (this->has_components_) 01212 { 01213 DynamicAny::DynAny_var cc = 01214 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01215 ACE_CHECK_RETURN (CORBA::Object::_nil ()); 01216 01217 return cc->get_reference (ACE_ENV_SINGLE_ARG_PARAMETER); 01218 } 01219 else 01220 { 01221 CORBA::Object_var retval; 01222 01223 if ((this->any_ >>= CORBA::Any::to_object (retval.inout ())) == 0) 01224 { 01225 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01226 CORBA::Object::_nil ()); 01227 } 01228 01229 return retval._retn (); 01230 } 01231 } |
|
Implements DynamicAny::DynAny. Definition at line 925 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
00931 { 00932 if (this->destroyed_) 00933 { 00934 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 00935 0); 00936 } 00937 00938 if (this->has_components_) 00939 { 00940 DynamicAny::DynAny_var cc = 00941 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00942 ACE_CHECK_RETURN (0); 00943 00944 return cc->get_short (ACE_ENV_SINGLE_ARG_PARAMETER); 00945 } 00946 else 00947 { 00948 CORBA::Short retval; 00949 00950 if ((this->any_ >>= retval) == 0) 00951 { 00952 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 00953 0); 00954 } 00955 00956 return retval; 00957 } 00958 } |
|
Implements DynamicAny::DynAny. Definition at line 1141 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, DynamicAny::DynAny_var, CORBA::string_dup(), and TAO_DynAnyFactory::strip_alias().
01147 { 01148 if (this->destroyed_) 01149 { 01150 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01151 0); 01152 } 01153 01154 if (this->has_components_) 01155 { 01156 DynamicAny::DynAny_var cc = 01157 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01158 ACE_CHECK_RETURN (0); 01159 01160 return cc->get_string (ACE_ENV_SINGLE_ARG_PARAMETER); 01161 } 01162 else 01163 { 01164 CORBA::TypeCode_var unaliased_tc = 01165 TAO_DynAnyFactory::strip_alias (this->type_.in () 01166 ACE_ENV_ARG_PARAMETER); 01167 ACE_CHECK_RETURN (0); 01168 01169 CORBA::TCKind kind = 01170 unaliased_tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER); 01171 ACE_CHECK_RETURN (0); 01172 01173 if (kind != CORBA::tk_string) 01174 { 01175 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01176 0); 01177 } 01178 01179 char *retval = 0; 01180 01181 CORBA::ULong bound = 01182 unaliased_tc->length (ACE_ENV_SINGLE_ARG_PARAMETER); 01183 ACE_CHECK_RETURN (0); 01184 01185 // We will have caught a type mismatch above, so if this fails, 01186 // it must be for some other reason. 01187 if ((this->any_ >>= CORBA::Any::to_string (retval, bound)) == 0) 01188 { 01189 ACE_THROW_RETURN (DynamicAny::DynAny::InvalidValue (), 01190 0); 01191 } 01192 01193 return CORBA::string_dup (retval); 01194 } 01195 } |
|
Implements DynamicAny::DynAny. Definition at line 1234 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01240 { 01241 if (this->destroyed_) 01242 { 01243 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01244 CORBA::TypeCode::_nil ()); 01245 } 01246 01247 if (this->has_components_) 01248 { 01249 DynamicAny::DynAny_var cc = 01250 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01251 ACE_CHECK_RETURN (0); 01252 01253 return cc->get_typecode (ACE_ENV_SINGLE_ARG_PARAMETER); 01254 } 01255 else 01256 { 01257 CORBA::TypeCode_ptr retval; 01258 01259 if ((this->any_ >>= retval) == 0) 01260 { 01261 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01262 CORBA::TypeCode::_nil ()); 01263 } 01264 01265 return CORBA::TypeCode::_duplicate (retval); 01266 } 01267 } |
|
Implements DynamicAny::DynAny. Definition at line 1033 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01039 { 01040 if (this->destroyed_) 01041 { 01042 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01043 0); 01044 } 01045 01046 if (this->has_components_) 01047 { 01048 DynamicAny::DynAny_var cc = 01049 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01050 ACE_CHECK_RETURN (0); 01051 01052 return cc->get_ulong (ACE_ENV_SINGLE_ARG_PARAMETER); 01053 } 01054 else 01055 { 01056 CORBA::ULong retval; 01057 01058 if ((this->any_ >>= retval) == 0) 01059 { 01060 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01061 0); 01062 } 01063 01064 return retval; 01065 } 01066 } |
|
Implements DynamicAny::DynAny. Definition at line 1306 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01312 { 01313 CORBA::ULongLong retval = 0; 01314 01315 if (this->destroyed_) 01316 { 01317 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01318 retval); 01319 } 01320 01321 if (this->has_components_) 01322 { 01323 DynamicAny::DynAny_var cc = 01324 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01325 ACE_CHECK_RETURN (retval); 01326 01327 return cc->get_ulonglong (ACE_ENV_SINGLE_ARG_PARAMETER); 01328 } 01329 else 01330 { 01331 if ((this->any_ >>= retval) == 0) 01332 { 01333 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01334 retval); 01335 } 01336 01337 return retval; 01338 } 01339 } |
|
Implements DynamicAny::DynAny. Definition at line 961 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
00967 { 00968 if (this->destroyed_) 00969 { 00970 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 00971 0); 00972 } 00973 00974 if (this->has_components_) 00975 { 00976 DynamicAny::DynAny_var cc = 00977 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00978 ACE_CHECK_RETURN (0); 00979 00980 return cc->get_ushort (ACE_ENV_SINGLE_ARG_PARAMETER); 00981 } 00982 else 00983 { 00984 CORBA::UShort retval; 00985 00986 if ((this->any_ >>= retval) == 0) 00987 { 00988 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 00989 0); 00990 } 00991 00992 return retval; 00993 } 00994 } |
|
Implements DynamicAny::DynAny. Definition at line 1522 of file DynCommon.cpp. References ACE_THROW_RETURN.
01528 { 01529 ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (), 01530 0); 01531 } |
|
Implements DynamicAny::DynAny. Definition at line 1378 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, and DynamicAny::DynAny_var.
01384 { 01385 if (this->destroyed_) 01386 { 01387 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01388 0); 01389 } 01390 01391 if (this->has_components_) 01392 { 01393 DynamicAny::DynAny_var cc = 01394 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01395 ACE_CHECK_RETURN (0); 01396 01397 return cc->get_wchar (ACE_ENV_SINGLE_ARG_PARAMETER); 01398 } 01399 else 01400 { 01401 CORBA::WChar retval; 01402 01403 if ((this->any_ >>= CORBA::Any::to_wchar (retval)) == 0) 01404 { 01405 ACE_THROW_RETURN (DynamicAny::DynAny::TypeMismatch (), 01406 0); 01407 } 01408 01409 return retval; 01410 } 01411 } |
|
Implements DynamicAny::DynAny. Definition at line 1414 of file DynCommon.cpp. References ACE_CHECK_RETURN, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW_RETURN, DynamicAny::DynAny_var, and CORBA::wstring_dup().
01420 { 01421 if (this->destroyed_) 01422 { 01423 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01424 0); 01425 } 01426 01427 if (this->has_components_) 01428 { 01429 DynamicAny::DynAny_var cc = 01430 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 01431 ACE_CHECK_RETURN (0); 01432 01433 return cc->get_wstring (ACE_ENV_SINGLE_ARG_PARAMETER); 01434 } 01435 else 01436 { 01437 // @@@ (JP) Someday try to find a way to avoid checking for 01438 // type code equivalence twice without risking a throw of 01439 // BadKind. 01440 CORBA::TypeCode_var unaliased_tc = 01441 this->check_type_and_unalias (CORBA::_tc_wstring 01442 ACE_ENV_ARG_PARAMETER); 01443 ACE_CHECK_RETURN (0); 01444 01445 CORBA::WChar *retval = 0; 01446 01447 CORBA::ULong bound = 01448 unaliased_tc->length (ACE_ENV_SINGLE_ARG_PARAMETER); 01449 ACE_CHECK_RETURN (0); 01450 01451 (void) (this->any_ >>= CORBA::Any::to_wstring (retval, 01452 bound)); 01453 01454 return CORBA::wstring_dup (retval); 01455 } 01456 } |
|
Definition at line 745 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00752 { 00753 if (this->destroyed_) 00754 { 00755 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00756 } 00757 00758 if (this->has_components_) 00759 { 00760 DynamicAny::DynAny_var cc = 00761 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00762 ACE_CHECK; 00763 00764 cc->insert_any (value 00765 ACE_ENV_ARG_PARAMETER); 00766 ACE_CHECK; 00767 } 00768 else 00769 { 00770 this->check_type (CORBA::_tc_any 00771 ACE_ENV_ARG_PARAMETER); 00772 ACE_CHECK; 00773 00774 this->any_ <<= value; 00775 } 00776 } |
|
Definition at line 86 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00093 { 00094 if (this->destroyed_) 00095 { 00096 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00097 } 00098 00099 if (this->has_components_) 00100 { 00101 DynamicAny::DynAny_var cc = 00102 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00103 ACE_CHECK; 00104 00105 cc->insert_boolean (value 00106 ACE_ENV_ARG_PARAMETER); 00107 ACE_CHECK; 00108 } 00109 else 00110 { 00111 this->check_type (CORBA::_tc_boolean 00112 ACE_ENV_ARG_PARAMETER); 00113 ACE_CHECK; 00114 00115 this->any_ <<= CORBA::Any::from_boolean (value); 00116 } 00117 } |
|
Definition at line 154 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00161 { 00162 if (this->destroyed_) 00163 { 00164 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00165 } 00166 00167 if (this->has_components_) 00168 { 00169 DynamicAny::DynAny_var cc = 00170 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00171 ACE_CHECK; 00172 00173 cc->insert_char (value 00174 ACE_ENV_ARG_PARAMETER); 00175 ACE_CHECK; 00176 } 00177 else 00178 { 00179 this->check_type (CORBA::_tc_char 00180 ACE_ENV_ARG_PARAMETER); 00181 ACE_CHECK; 00182 00183 this->any_ <<= CORBA::Any::from_char (value); 00184 } 00185 } |
|
Definition at line 358 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00365 { 00366 if (this->destroyed_) 00367 { 00368 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00369 } 00370 00371 if (this->has_components_) 00372 { 00373 DynamicAny::DynAny_var cc = 00374 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00375 ACE_CHECK; 00376 00377 cc->insert_double (value 00378 ACE_ENV_ARG_PARAMETER); 00379 ACE_CHECK; 00380 } 00381 else 00382 { 00383 this->check_type (CORBA::_tc_double 00384 ACE_ENV_ARG_PARAMETER); 00385 ACE_CHECK; 00386 00387 this->any_ <<= value; 00388 } 00389 } |
|
Definition at line 781 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_ptr.
00788 { 00789 if (this->destroyed_) 00790 { 00791 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00792 } 00793 00794 CORBA::Any_var any = value->to_any (ACE_ENV_SINGLE_ARG_PARAMETER); 00795 ACE_CHECK; 00796 00797 this->insert_any (any.in () 00798 ACE_ENV_ARG_PARAMETER); 00799 ACE_CHECK; 00800 } |
|
Definition at line 324 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00331 { 00332 if (this->destroyed_) 00333 { 00334 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00335 } 00336 00337 if (this->has_components_) 00338 { 00339 DynamicAny::DynAny_var cc = 00340 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00341 ACE_CHECK; 00342 00343 cc->insert_float (value 00344 ACE_ENV_ARG_PARAMETER); 00345 ACE_CHECK; 00346 } 00347 else 00348 { 00349 this->check_type (CORBA::_tc_float 00350 ACE_ENV_ARG_PARAMETER); 00351 ACE_CHECK; 00352 00353 this->any_ <<= value; 00354 } 00355 } |
|
Definition at line 256 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00263 { 00264 if (this->destroyed_) 00265 { 00266 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00267 } 00268 00269 if (this->has_components_) 00270 { 00271 DynamicAny::DynAny_var cc = 00272 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00273 ACE_CHECK; 00274 00275 cc->insert_long (value 00276 ACE_ENV_ARG_PARAMETER); 00277 ACE_CHECK; 00278 } 00279 else 00280 { 00281 this->check_type (CORBA::_tc_long 00282 ACE_ENV_ARG_PARAMETER); 00283 ACE_CHECK; 00284 00285 this->any_ <<= value; 00286 } 00287 } |
|
Definition at line 633 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00640 { 00641 if (this->destroyed_) 00642 { 00643 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00644 } 00645 00646 if (this->has_components_) 00647 { 00648 DynamicAny::DynAny_var cc = 00649 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00650 ACE_CHECK; 00651 00652 cc->insert_longdouble (value 00653 ACE_ENV_ARG_PARAMETER); 00654 ACE_CHECK; 00655 } 00656 else 00657 { 00658 this->check_type (CORBA::_tc_longdouble 00659 ACE_ENV_ARG_PARAMETER); 00660 ACE_CHECK; 00661 00662 this->any_ <<= value; 00663 } 00664 } |
|
Definition at line 565 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00572 { 00573 if (this->destroyed_) 00574 { 00575 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00576 } 00577 00578 if (this->has_components_) 00579 { 00580 DynamicAny::DynAny_var cc = 00581 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00582 ACE_CHECK; 00583 00584 cc->insert_longlong (value 00585 ACE_ENV_ARG_PARAMETER); 00586 ACE_CHECK; 00587 } 00588 else 00589 { 00590 this->check_type (CORBA::_tc_longlong 00591 ACE_ENV_ARG_PARAMETER); 00592 ACE_CHECK; 00593 00594 this->any_ <<= value; 00595 } 00596 } |
|
Definition at line 120 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00127 { 00128 if (this->destroyed_) 00129 { 00130 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00131 } 00132 00133 if (this->has_components_) 00134 { 00135 DynamicAny::DynAny_var cc = 00136 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00137 ACE_CHECK; 00138 00139 cc->insert_octet (value 00140 ACE_ENV_ARG_PARAMETER); 00141 ACE_CHECK; 00142 } 00143 else 00144 { 00145 this->check_type (CORBA::_tc_octet 00146 ACE_ENV_ARG_PARAMETER); 00147 ACE_CHECK; 00148 00149 this->any_ <<= CORBA::Any::from_octet (value); 00150 } 00151 } |
|
Definition at line 446 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_NEW, ACE_THROW, DynamicAny::DynAny_var, CORBA::is_nil(), ACE_OS::strcmp(), TAO_DynAnyFactory::unalias(), ACE_OutputCDR::write_char(), and ACE_OutputCDR::write_ulong().
00453 { 00454 if (this->destroyed_) 00455 { 00456 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00457 } 00458 00459 if (this->has_components_) 00460 { 00461 DynamicAny::DynAny_var cc = 00462 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00463 ACE_CHECK; 00464 00465 cc->insert_reference (value 00466 ACE_ENV_ARG_PARAMETER); 00467 ACE_CHECK; 00468 } 00469 else 00470 { 00471 CORBA::Boolean good_type = 1; 00472 CORBA::TCKind kind = 00473 TAO_DynAnyFactory::unalias (this->type_.in () 00474 ACE_ENV_ARG_PARAMETER); 00475 ACE_CHECK; 00476 00477 if (kind != CORBA::tk_objref) 00478 { 00479 good_type = 0; 00480 } 00481 else if (!CORBA::is_nil (value)) 00482 { 00483 const char *value_id = value->_interface_repository_id (); 00484 00485 if (ACE_OS::strcmp (value_id, "IDL:omg.org/CORBA/Object:1.0") != 0) 00486 { 00487 const char *my_id = 00488 this->type_->id (ACE_ENV_SINGLE_ARG_PARAMETER); 00489 ACE_CHECK; 00490 00491 if (ACE_OS::strcmp (value_id, my_id) != 0) 00492 { 00493 good_type = value->_is_a (my_id 00494 ACE_ENV_ARG_PARAMETER); 00495 ACE_CHECK; 00496 } 00497 } 00498 } 00499 00500 if (good_type) 00501 { 00502 TAO_OutputCDR cdr; 00503 00504 if (CORBA::is_nil (value)) 00505 { 00506 // Empty type hint, no profile. 00507 cdr.write_ulong (1); 00508 cdr.write_char ('\0'); 00509 cdr.write_ulong (0); 00510 } 00511 else 00512 { 00513 value->marshal (cdr); 00514 } 00515 00516 TAO_InputCDR in (cdr); 00517 TAO::Unknown_IDL_Type *unk = 0; 00518 ACE_NEW (unk, 00519 TAO::Unknown_IDL_Type (this->type_.in (), 00520 in)); 00521 this->any_.replace (unk); 00522 } 00523 else 00524 { 00525 ACE_THROW (DynamicAny::DynAny::TypeMismatch ()); 00526 } 00527 } 00528 } |
|
Definition at line 188 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00195 { 00196 if (this->destroyed_) 00197 { 00198 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00199 } 00200 00201 if (this->has_components_) 00202 { 00203 DynamicAny::DynAny_var cc = 00204 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00205 ACE_CHECK; 00206 00207 cc->insert_short (value 00208 ACE_ENV_ARG_PARAMETER); 00209 ACE_CHECK; 00210 } 00211 else 00212 { 00213 this->check_type (CORBA::_tc_short 00214 ACE_ENV_ARG_PARAMETER); 00215 ACE_CHECK; 00216 00217 this->any_ <<= value; 00218 } 00219 } |
|
Implements DynamicAny::DynAny. Definition at line 392 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, DynamicAny::DynAny_var, TAO_DynAnyFactory::strip_alias(), and ACE_OS::strlen().
00399 { 00400 if (this->destroyed_) 00401 { 00402 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00403 } 00404 00405 if (this->has_components_) 00406 { 00407 DynamicAny::DynAny_var cc = 00408 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00409 ACE_CHECK; 00410 00411 cc->insert_string (value 00412 ACE_ENV_ARG_PARAMETER); 00413 ACE_CHECK; 00414 } 00415 else 00416 { 00417 CORBA::TypeCode_var unaliased_tc = 00418 TAO_DynAnyFactory::strip_alias (this->type_.in () 00419 ACE_ENV_ARG_PARAMETER); 00420 ACE_CHECK; 00421 00422 CORBA::TCKind kind = 00423 unaliased_tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER); 00424 ACE_CHECK; 00425 00426 if (kind != CORBA::tk_string) 00427 { 00428 ACE_THROW (DynamicAny::DynAny::TypeMismatch ()); 00429 } 00430 00431 CORBA::ULong bound = 00432 unaliased_tc->length (ACE_ENV_SINGLE_ARG_PARAMETER); 00433 ACE_CHECK; 00434 00435 if (bound > 0 && bound < ACE_OS::strlen (value)) 00436 { 00437 ACE_THROW (DynamicAny::DynAny::InvalidValue ()); 00438 } 00439 00440 this->any_ <<= CORBA::Any::from_string (const_cast<char *> (value), 00441 bound); 00442 } 00443 } |
|
Definition at line 531 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00538 { 00539 if (this->destroyed_) 00540 { 00541 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00542 } 00543 00544 if (this->has_components_) 00545 { 00546 DynamicAny::DynAny_var cc = 00547 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00548 ACE_CHECK; 00549 00550 cc->insert_typecode (value 00551 ACE_ENV_ARG_PARAMETER); 00552 ACE_CHECK; 00553 } 00554 else 00555 { 00556 this->check_type (CORBA::_tc_TypeCode 00557 ACE_ENV_ARG_PARAMETER); 00558 ACE_CHECK; 00559 00560 this->any_ <<= value; 00561 } 00562 } |
|
Definition at line 290 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00297 { 00298 if (this->destroyed_) 00299 { 00300 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00301 } 00302 00303 if (this->has_components_) 00304 { 00305 DynamicAny::DynAny_var cc = 00306 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00307 ACE_CHECK; 00308 00309 cc->insert_ulong (value 00310 ACE_ENV_ARG_PARAMETER); 00311 ACE_CHECK; 00312 } 00313 else 00314 { 00315 this->check_type (CORBA::_tc_ulong 00316 ACE_ENV_ARG_PARAMETER); 00317 ACE_CHECK; 00318 00319 this->any_ <<= value; 00320 } 00321 } |
|
Definition at line 599 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00606 { 00607 if (this->destroyed_) 00608 { 00609 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00610 } 00611 00612 if (this->has_components_) 00613 { 00614 DynamicAny::DynAny_var cc = 00615 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00616 ACE_CHECK; 00617 00618 cc->insert_ulonglong (value 00619 ACE_ENV_ARG_PARAMETER); 00620 ACE_CHECK; 00621 } 00622 else 00623 { 00624 this->check_type (CORBA::_tc_ulonglong 00625 ACE_ENV_ARG_PARAMETER); 00626 ACE_CHECK; 00627 00628 this->any_ <<= value; 00629 } 00630 } |
|
Definition at line 222 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00229 { 00230 if (this->destroyed_) 00231 { 00232 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00233 } 00234 00235 if (this->has_components_) 00236 { 00237 DynamicAny::DynAny_var cc = 00238 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00239 ACE_CHECK; 00240 00241 cc->insert_ushort (value 00242 ACE_ENV_ARG_PARAMETER); 00243 ACE_CHECK; 00244 } 00245 else 00246 { 00247 this->check_type (CORBA::_tc_ushort 00248 ACE_ENV_ARG_PARAMETER); 00249 ACE_CHECK; 00250 00251 this->any_ <<= value; 00252 } 00253 } |
|
Definition at line 803 of file DynCommon.cpp. References ACE_THROW.
00810 { 00811 ACE_THROW (CORBA::NO_IMPLEMENT ()); 00812 } |
|
Definition at line 667 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, and DynamicAny::DynAny_var.
00674 { 00675 if (this->destroyed_) 00676 { 00677 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00678 } 00679 00680 if (this->has_components_) 00681 { 00682 DynamicAny::DynAny_var cc = 00683 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00684 ACE_CHECK; 00685 00686 cc->insert_wchar (value 00687 ACE_ENV_ARG_PARAMETER); 00688 ACE_CHECK; 00689 } 00690 else 00691 { 00692 this->check_type (CORBA::_tc_wchar 00693 ACE_ENV_ARG_PARAMETER); 00694 ACE_CHECK; 00695 00696 this->any_ <<= CORBA::Any::from_wchar (value); 00697 } 00698 } |
|
Implements DynamicAny::DynAny. Definition at line 701 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, DynamicAny::DynAny_var, and ACE_OS::wslen().
00708 { 00709 if (this->destroyed_) 00710 { 00711 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 00712 } 00713 00714 if (this->has_components_) 00715 { 00716 DynamicAny::DynAny_var cc = 00717 this->check_component (ACE_ENV_SINGLE_ARG_PARAMETER); 00718 ACE_CHECK; 00719 00720 cc->insert_wstring (value 00721 ACE_ENV_ARG_PARAMETER); 00722 ACE_CHECK; 00723 } 00724 else 00725 { 00726 CORBA::TypeCode_var unaliased_tc = 00727 this->check_type_and_unalias (CORBA::_tc_wstring 00728 ACE_ENV_ARG_PARAMETER); 00729 ACE_CHECK; 00730 00731 CORBA::ULong bound = unaliased_tc->length (ACE_ENV_SINGLE_ARG_PARAMETER); 00732 ACE_CHECK; 00733 00734 if (bound > 0 && bound < ACE_OS::wslen (value)) 00735 { 00736 ACE_THROW (DynamicAny::DynAny::InvalidValue ()); 00737 } 00738 00739 this->any_ <<= CORBA::Any::from_wstring (const_cast<CORBA::WChar *> (value), 00740 bound); 00741 } 00742 } |
|
Implements DynamicAny::DynAny. Definition at line 1583 of file DynCommon.cpp. References ACE_THROW_RETURN.
01587 { 01588 if (this->destroyed_) 01589 { 01590 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01591 0); 01592 } 01593 01594 if (this->has_components_ == 0 01595 || this->current_position_ + 1 >= static_cast<CORBA::Long> (this->component_count_ 01596 )) 01597 { 01598 this->current_position_ = -1; 01599 return 0; 01600 } 01601 else 01602 { 01603 ++this->current_position_; 01604 return 1; 01605 } 01606 } |
|
Implements DynamicAny::DynAny. Definition at line 1567 of file DynCommon.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, and ACE_THROW.
01571 { 01572 if (this->destroyed_) 01573 { 01574 ACE_THROW (CORBA::OBJECT_NOT_EXIST ()); 01575 } 01576 01577 (void) this->seek (0 01578 ACE_ENV_ARG_PARAMETER); 01579 ACE_CHECK; 01580 } |
|
Definition at line 1536 of file DynCommon.cpp. References ACE_THROW_RETURN.
01541 { 01542 if (this->destroyed_) 01543 { 01544 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 01545 0); 01546 } 01547 01548 if (this->has_components_ == 0) 01549 { 01550 ACE_UNUSED_ARG (slot); 01551 this->current_position_ = -1; 01552 return 0; 01553 } 01554 else if (slot < 0 || slot >= static_cast<CORBA::Long> (this->component_count_)) 01555 { 01556 this->current_position_ = -1; 01557 return 0; 01558 } 01559 else 01560 { 01561 this->current_position_ = slot; 01562 return 1; 01563 } 01564 } |
|
This sets one of two flags in this base class. CORBA 2.4.2 requires that destroy() do nothing if it is called on the result of current_component(), the only non-deep-copying method in the Dynamic Any API. If the boolean arg below is 0, the call is from inside current_component(), and the flag ref_to_component_ is set. If the boolean arg is 1, the call is from inside destroy(), and the container_is_destroying_ flag is set, overriding the first flag in the component's destroy() method. Definition at line 1647 of file DynCommon.cpp. References TAO_DynAny_i::_narrow(), TAO_DynUnion_i::_narrow(), TAO_DynStruct_i::_narrow(), TAO_DynSequence_i::_narrow(), TAO_DynEnum_i::_narrow(), TAO_DynArray_i::_narrow(), ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_THROW, container_is_destroying_, DynamicAny::DynAny_ptr, ref_to_component_, and TAO_DynAnyFactory::unalias().
01653 { 01654 CORBA::TypeCode_var tc = component->type (ACE_ENV_SINGLE_ARG_PARAMETER); 01655 ACE_CHECK; 01656 01657 CORBA::TCKind tk = TAO_DynAnyFactory::unalias (tc.in () 01658 ACE_ENV_ARG_PARAMETER); 01659 ACE_CHECK; 01660 01661 switch (tk) 01662 { 01663 case CORBA::tk_array: 01664 { 01665 TAO_DynArray_i *tmp = 01666 TAO_DynArray_i::_narrow (component 01667 ACE_ENV_ARG_PARAMETER); 01668 ACE_CHECK; 01669 01670 if (destroying) 01671 { 01672 tmp->container_is_destroying_ = 1; 01673 } 01674 else 01675 { 01676 tmp->ref_to_component_ = 1; 01677 } 01678 01679 break; 01680 } 01681 case CORBA::tk_enum: 01682 { 01683 TAO_DynEnum_i *tmp = TAO_DynEnum_i::_narrow (component 01684 ACE_ENV_ARG_PARAMETER); 01685 ACE_CHECK; 01686 01687 if (destroying) 01688 { 01689 tmp->container_is_destroying_ = 1; 01690 } 01691 else 01692 { 01693 tmp->ref_to_component_ = 1; 01694 } 01695 01696 break; 01697 } 01698 case CORBA::tk_sequence: 01699 { 01700 TAO_DynSequence_i *tmp = 01701 TAO_DynSequence_i::_narrow (component 01702 ACE_ENV_ARG_PARAMETER); 01703 ACE_CHECK; 01704 01705 if (destroying) 01706 { 01707 tmp->container_is_destroying_ = 1; 01708 } 01709 else 01710 { 01711 tmp->ref_to_component_ = 1; 01712 } 01713 01714 break; 01715 } 01716 case CORBA::tk_struct: 01717 { 01718 TAO_DynStruct_i *tmp = 01719 TAO_DynStruct_i::_narrow (component 01720 ACE_ENV_ARG_PARAMETER); 01721 ACE_CHECK; 01722 01723 if (destroying) 01724 { 01725 tmp->container_is_destroying_ = 1; 01726 } 01727 else 01728 { 01729 tmp->ref_to_component_ = 1; 01730 } 01731 01732 break; 01733 } 01734 case CORBA::tk_union: 01735 { 01736 TAO_DynUnion_i *tmp = 01737 TAO_DynUnion_i::_narrow (component 01738 ACE_ENV_ARG_PARAMETER); 01739 ACE_CHECK; 01740 01741 if (destroying) 01742 { 01743 tmp->container_is_destroying_ = 1; 01744 } 01745 else 01746 { 01747 tmp->ref_to_component_ = 1; 01748 } 01749 01750 break; 01751 } 01752 case CORBA::tk_fixed: 01753 case CORBA::tk_value: 01754 case CORBA::tk_value_box: 01755 ACE_THROW (CORBA::NO_IMPLEMENT ()); 01756 default: 01757 { 01758 TAO_DynAny_i *tmp = TAO_DynAny_i::_narrow (component 01759 ACE_ENV_ARG_PARAMETER); 01760 ACE_CHECK; 01761 01762 if (destroying) 01763 { 01764 tmp->container_is_destroying_ = 1; 01765 } 01766 else 01767 { 01768 tmp->ref_to_component_ = 1; 01769 } 01770 01771 break; 01772 } 01773 } 01774 } |
|
Implements DynamicAny::DynAny. Definition at line 35 of file DynCommon.cpp. References ACE_THROW_RETURN.
00039 { 00040 if (this->destroyed_) 00041 { 00042 ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 00043 CORBA::TypeCode::_nil ()); 00044 } 00045 00046 return CORBA::TypeCode::_duplicate (this->type_.in ()); 00047 } |
|
Gets a value only for basic types, but used in insert_* and get_*, defined in this base class. Definition at line 524 of file DynCommon.h. Referenced by TAO_DynAny_i::equal(). |
|
Number of components, as defined by CORBA 2.4.2.
Definition at line 517 of file DynCommon.h. |
|
Flag to let destroy() call by container override the flag above.
Definition at line 505 of file DynCommon.h. Referenced by set_flag(). |
|
Slot of the current component (if any).
Definition at line 514 of file DynCommon.h. |
|
Has destroy() been called on us yet?
Definition at line 511 of file DynCommon.h. |
|
Do we contain other Dynamic Anys?
Definition at line 508 of file DynCommon.h. |
|
Were we created by current_component()?
Definition at line 502 of file DynCommon.h. Referenced by set_flag(). |
|
Holder for our type code.
Definition at line 520 of file DynCommon.h. Referenced by TAO_DynUnion_i::equal(), and TAO_DynAny_i::equal(). |