diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2004-10-15 18:34:35 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2004-10-15 18:34:35 +0000 |
commit | 25e8dc67ecad46ddb4529e9da71f660b015d9d21 (patch) | |
tree | e8db6eac44dbc9e7898765e63e69975e8c5a362d | |
parent | fdf4177a2ac49215b9b2e1ca3561233cc5c26a70 (diff) | |
download | ATCD-25e8dc67ecad46ddb4529e9da71f660b015d9d21.tar.gz |
*** empty log message ***
-rw-r--r-- | TAO/tao/TypeCode/TypeCode_Case.cpp | 4 | ||||
-rw-r--r-- | TAO/tao/TypeCode/TypeCode_Case.h | 16 | ||||
-rw-r--r-- | TAO/tao/TypeCode/TypeCode_Default_Case.h | 4 | ||||
-rw-r--r-- | TAO/tao/TypeCode/TypeCode_Non_Default_Case.h | 6 | ||||
-rw-r--r-- | TAO/tao/TypeCode/Union_TypeCode.cpp | 24 |
5 files changed, 29 insertions, 25 deletions
diff --git a/TAO/tao/TypeCode/TypeCode_Case.cpp b/TAO/tao/TypeCode/TypeCode_Case.cpp index 16ad4990110..5c83263c258 100644 --- a/TAO/tao/TypeCode/TypeCode_Case.cpp +++ b/TAO/tao/TypeCode/TypeCode_Case.cpp @@ -3,10 +3,10 @@ #ifndef TAO_TYPECODE_CASE_CPP #define TAO_TYPECODE_CASE_CPP -#include "TypeCode_Case_Base.h" +#include "TypeCode_Case.h" #ifndef __ACE_INLINE__ -# include "tao/TypeCode_Case_Base.inl" +# include "tao/TypeCode_Case.inl" #endif /* __ACE_INLINE__ */ diff --git a/TAO/tao/TypeCode/TypeCode_Case.h b/TAO/tao/TypeCode/TypeCode_Case.h index f57f5b3cc30..7b5042b6a14 100644 --- a/TAO/tao/TypeCode/TypeCode_Case.h +++ b/TAO/tao/TypeCode/TypeCode_Case.h @@ -2,18 +2,18 @@ //============================================================================= /** - * @file TypeCode_Case_Base.h + * @file TypeCode_Case.h * * $Id$ * - * Header file for @c TAO::TypeCode::Case_Base type. + * Header file for @c TAO::TypeCode::Case type. * * @author Ossama Othman */ //============================================================================= -#ifndef TAO_TYPECODE_CASE_BASE_H -#define TAO_TYPECODE_CASE_BASE_H +#ifndef TAO_TYPECODE_CASE_H +#define TAO_TYPECODE_CASE_H #include /**/ "ace/pre.h" @@ -143,17 +143,17 @@ namespace TAO #ifdef __ACE_INLINE__ -# include "tao/TypeCode_Case_Base.inl" +# include "tao/TypeCode_Case.inl" #endif /* __ACE_INLINE__ */ #ifdef ACE_TEMPLATES_REQUIRE_SOURCE -# include "tao/TypeCode_Case_Base.cpp" +# include "tao/TypeCode_Case.cpp" #endif /* ACE_TEMPLATES_REQUIRE_SOURCE */ #ifdef ACE_TEMPLATES_REQUIRE_PRAGMA -# pragma implementation ("TypeCode_Case_Base.cpp") +# pragma implementation ("TypeCode_Case.cpp") #endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */ #include /**/ "ace/post.h" -#endif /* TAO_TYPECODE_CASE_BASE_H */ +#endif /* TAO_TYPECODE_CASE_H */ diff --git a/TAO/tao/TypeCode/TypeCode_Default_Case.h b/TAO/tao/TypeCode/TypeCode_Default_Case.h index 362f1a7c6f9..4072da0706f 100644 --- a/TAO/tao/TypeCode/TypeCode_Default_Case.h +++ b/TAO/tao/TypeCode/TypeCode_Default_Case.h @@ -23,7 +23,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "tao/TypeCode_Case_Base.h" +#include "tao/TypeCode_Case.h" namespace TAO @@ -39,7 +39,7 @@ namespace TAO * */ template <typename STRING_TYPE> - class Default_Case : public Case_Base<STRING_TYPE> + class Default_Case : public Case<STRING_TYPE> { public: diff --git a/TAO/tao/TypeCode/TypeCode_Non_Default_Case.h b/TAO/tao/TypeCode/TypeCode_Non_Default_Case.h index 1a8ae547e77..1488fdd61d0 100644 --- a/TAO/tao/TypeCode/TypeCode_Non_Default_Case.h +++ b/TAO/tao/TypeCode/TypeCode_Non_Default_Case.h @@ -59,9 +59,9 @@ namespace TAO char const *> Foo_Case; * Foo_Case _tao_cases_Foo[] = * { - * { Foo_Case (0, "a", &CORBA::_tc_short), - * { Foo_Case (1, "b", &CORBA::_tc_short), - * { Foo_Case (2, "c", &CORBA::_tc_long) + * Foo_Case (0, "a", &CORBA::_tc_short), + * Foo_Case (1, "b", &CORBA::_tc_short), + * Foo_Case (2, "c", &CORBA::_tc_long) * }; * \endcode * diff --git a/TAO/tao/TypeCode/Union_TypeCode.cpp b/TAO/tao/TypeCode/Union_TypeCode.cpp index 9a343de8b15..78f851a3ced 100644 --- a/TAO/tao/TypeCode/Union_TypeCode.cpp +++ b/TAO/tao/TypeCode/Union_TypeCode.cpp @@ -229,27 +229,23 @@ TAO::TypeCode::Union<StringType, { case_type * tc_cases = 0; - ACE_Auto_Array_Ptr<Case> safe_cases; + ACE_Auto_Array_Ptr<Case<CORBA::String_var> > safe_cases; - CORBA::ULong const len = this->case_count (); - -............. BUSTED ... NO DEFAULT CASE HANDLING ... SORT OF ... - - if (len > 0) + if (this->ncases_ > 0) { // Dynamically construct a new array of cases stripped of // member names. ACE_NEW_THROW_EX (tc_cases, - case_type[len], + case_type[this->ncases_], CORBA::NO_MEMORY ()); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); - safe_cases.reset (cases); + safe_cases.reset (tc_cases); static char const * empty_name = ""; - for (CORBA::ULong i = 0; i < len; ++i) + for (CORBA::ULong i = 0; i < this->ncases_; ++i) { // Member names will be stripped, i.e. not embedded within // the compact TypeCode. @@ -261,6 +257,7 @@ TAO::TypeCode::Union<StringType, } } + // Create the compact union TypeCode. TAO_TypeCodeFactory_Adapter * adapter = ACE_Dynamic_Service<TAO_TypeCodeFactory_Adapter>::instance ( TAO_ORB_Core::typecodefactory_adapter_name ()); @@ -275,7 +272,14 @@ TAO::TypeCode::Union<StringType, this->kind_i (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); - tc = adapter->_tao_create_union_tc (........ FIX ME .... + tc = adapter->_tao_create_union_tc (this->base_attributes_.id (), + "", /* empty name */ + this->discriminant_type_, + tc_cases, + this->ncases_, + this->default_index_, + "", + CORBA::TypeCode_ptr * default_member_type ACE_ENV_ARG_PARAMETER); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); |