summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-01-10 17:34:18 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-01-10 17:34:18 +0000
commit2b38360e7fea1039d164b1e82914bba7612da0bc (patch)
tree12acf499650c97d6f47b8368db92d0c32d8608c2
parent498d25cfaa7117f40fec2db23aa42e4dfb2dc55f (diff)
downloadATCD-2b38360e7fea1039d164b1e82914bba7612da0bc.tar.gz
ChangeLogTag: Fri Jan 10 11:30:08 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--TAO/ChangeLog27
-rw-r--r--TAO/tao/Any_T.inl3
-rw-r--r--TAO/tao/Exception.cpp21
-rw-r--r--TAO/tao/Exception.h3
-rw-r--r--TAO/tao/GIOPC.cpp91
-rw-r--r--TAO/tao/Object_KeyC.cpp146
-rw-r--r--TAO/tao/Object_KeyC.i42
-rw-r--r--TAO/tao/PortableInterceptorC.cpp12
-rw-r--r--TAO/tao/PortableInterceptorC.h19
-rw-r--r--TAO/tao/Typecode_Constants.cpp53
10 files changed, 211 insertions, 206 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 695c08499ab..5bc0c86c1db 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,30 @@
+Fri Jan 10 11:30:08 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
+
+ * tao/Any_T.inl:
+
+ Removed unnecessary forward declaration.
+
+ * tao/Exception.cpp:
+ * tao/Exception.h:
+
+ Added missing stuff related to new Any implementation.
+
+ * tao/GIOPC.cpp:
+
+ Removed bodies of TAO::ObjectKey CDR operators. They are
+ now in Object_KeyC.cpp.
+
+ * tao/Object_KeyC.cpp:
+ * tao/Object_KeyC.i:
+ * tao/PortableInterceptorC.cpp:
+ * tao/PortableInterceptorC.h:
+
+ Fixed hand-crafting oversights.
+
+ * tao/Typecode_Constants.cpp:
+
+ Removed ObjectId typecode, since it is now in ObjectIdListC.cpp.
+
Fri Jan 10 09:53:45 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
* tao/ORB.cpp:
diff --git a/TAO/tao/Any_T.inl b/TAO/tao/Any_T.inl
index e3a030c25dc..4432553d1fe 100644
--- a/TAO/tao/Any_T.inl
+++ b/TAO/tao/Any_T.inl
@@ -106,9 +106,6 @@ TAO::Any_Special_Basic_Impl_T<T, from_T, to_T>::value (void) const
// ***********************************************************************
-CORBA::Boolean
-TAO::Any_Dual_Impl_T<CORBA::Exception>::marshal_value (TAO_OutputCDR &);
-
template<typename T> ACE_INLINE CORBA::Boolean
TAO::Any_Dual_Impl_T<T>::marshal_value (TAO_OutputCDR &cdr)
{
diff --git a/TAO/tao/Exception.cpp b/TAO/tao/Exception.cpp
index 83df3a4ede6..16938e83509 100644
--- a/TAO/tao/Exception.cpp
+++ b/TAO/tao/Exception.cpp
@@ -1218,6 +1218,27 @@ STANDARD_EXCEPTION_LIST
#define TAO_SYSTEM_EXCEPTION(name) \
CORBA::Boolean \
+TAO::Any_Dual_Impl_T<CORBA_##name >::marshal_value (TAO_OutputCDR &cdr) \
+{ \
+ ACE_TRY_NEW_ENV \
+ { \
+ this->value_->_tao_encode (cdr \
+ ACE_ENV_ARG_PARAMETER); \
+ ACE_TRY_CHECK; \
+ return 1; \
+ } \
+ ACE_CATCHANY \
+ { \
+ } \
+ ACE_ENDTRY; \
+ return 0; \
+}
+
+STANDARD_EXCEPTION_LIST
+#undef TAO_SYSTEM_EXCEPTION
+
+#define TAO_SYSTEM_EXCEPTION(name) \
+CORBA::Boolean \
TAO::Any_Dual_Impl_T<CORBA_##name >::demarshal_value (TAO_InputCDR &cdr) \
{ \
ACE_TRY_NEW_ENV \
diff --git a/TAO/tao/Exception.h b/TAO/tao/Exception.h
index 5356b3ad10a..645b6e1ee84 100644
--- a/TAO/tao/Exception.h
+++ b/TAO/tao/Exception.h
@@ -147,9 +147,6 @@ TAO_Export ostream& operator<< (ostream &os,
#endif /* (ACE_LACKS_IOSTREAM_TOTALLY) */
-TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &,
- CORBA_Exception &);
-
/**
* @class CORBA_UserException
*
diff --git a/TAO/tao/GIOPC.cpp b/TAO/tao/GIOPC.cpp
index 8c5c7531c78..df2c8fe857d 100644
--- a/TAO/tao/GIOPC.cpp
+++ b/TAO/tao/GIOPC.cpp
@@ -841,96 +841,5 @@ CORBA::Boolean operator>>= (
# pragma instantiate TAO::Any_Dual_Impl_T<GIOP::TargetAddress>
#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
-// TAO_IDL - Generated from
-// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_sequence/cdr_op_cs.cpp:125
-
-#if !defined _TAO_CDR_OP_GIOP_TargetAddress__tao_seq_Octet_CPP_
-#define _TAO_CDR_OP_GIOP_TargetAddress__tao_seq_Octet_CPP_
-
-CORBA::Boolean operator<< (
- TAO_OutputCDR &strm,
- TAO::ObjectKey &_tao_sequence
- )
-{
- CORBA::ULong _tao_seq_len = _tao_sequence.length ();
-
- if (strm << _tao_seq_len)
- {
- // Encode all elements.
-
-#if (TAO_NO_COPY_OCTET_SEQUENCES == 1)
- {
- TAO_Unbounded_Sequence<CORBA::Octet> *oseq =
- ACE_static_cast (TAO_Unbounded_Sequence<CORBA::Octet>*, (TAO::ObjectKey *)&_tao_sequence);
- if (oseq->mb ())
- return strm.write_octet_array_mb (oseq->mb ());
- else
- return strm.write_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
- }
-
-#else /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
- return strm.write_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
-
-#endif /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
- }
-
- return 0;
-}
-
-CORBA::Boolean operator>> (
- TAO_InputCDR &strm,
- TAO::ObjectKey &_tao_sequence
- )
-{
- CORBA::ULong _tao_seq_len;
-
- if (strm >> _tao_seq_len)
- {
- // Add a check to the length of the sequence
- // to make sure it does not exceed the length
- // of the stream. (See bug 58.)
- if (_tao_seq_len > strm.length ())
- {
- return 0;
- }
-
- // Set the length of the sequence.
- _tao_sequence.length (_tao_seq_len);
-
- // If length is 0 we return true.
- if (0 >= _tao_seq_len)
- {
- return 1;
- }
-
- // Retrieve all the elements.
-
-#if (TAO_NO_COPY_OCTET_SEQUENCES == 1)
- if (ACE_BIT_DISABLED (strm.start ()->flags (),
- ACE_Message_Block::DONT_DELETE))
- {
- TAO_ORB_Core* orb_core = strm.orb_core ();
- if (orb_core != 0 &&
- strm.orb_core ()->resource_factory ()->
- input_cdr_allocator_type_locked () == 1)
- {
- TAO_Unbounded_Sequence<CORBA::Octet> *oseq =
- ACE_static_cast(TAO_Unbounded_Sequence<CORBA::Octet>*, &_tao_sequence);
- oseq->replace (_tao_seq_len, strm.start ());
- oseq->mb ()->wr_ptr (oseq->mb()->rd_ptr () + _tao_seq_len);
- strm.skip_bytes (_tao_seq_len);
- return 1;
- }
- }
- return strm.read_octet_array (_tao_sequence.get_buffer (), _tao_seq_len);
-#else /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
- return strm.read_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
-
-#endif /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
- }
-
- return 0;
-}
-#endif /* _TAO_CDR_OP_GIOP_TargetAddress__tao_seq_Octet_CPP_ */
diff --git a/TAO/tao/Object_KeyC.cpp b/TAO/tao/Object_KeyC.cpp
index e7288e5b236..4e68b872b3c 100644
--- a/TAO/tao/Object_KeyC.cpp
+++ b/TAO/tao/Object_KeyC.cpp
@@ -25,6 +25,8 @@
#include "Object_KeyC.h"
#include "tao/Typecode.h"
+#include "tao/CDR.h"
+#include "tao/ORB_Core.h"
#if defined (__BORLANDC__)
#pragma option -w-rvl -w-rch -w-ccc -w-aus -w-sig
@@ -34,62 +36,6 @@
#include "Object_KeyC.i"
#endif /* !defined INLINE */
-#if !defined (_TAO_OBJECTKEY_CS_)
-#define _TAO_OBJECTKEY_CS_
-
-// TAO_IDL - Generated from
-// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_sequence/sequence_cs.cpp:250
-
-// *************************************************************
-// TAO::ObjectKey
-// *************************************************************
-
-TAO::ObjectKey::ObjectKey (void)
-{}
-
-TAO::ObjectKey::ObjectKey (CORBA::ULong max)
- :
-
-#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
-TAO_Unbounded_Sequence<CORBA::Octet>
-#else /* TAO_USE_SEQUENCE_TEMPLATES */
-TAO_Unbounded_Sequence<CORBA::Octet>
-
-#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
- (max)
-{}
-
-TAO::ObjectKey::ObjectKey (
- CORBA::ULong max,
- CORBA::ULong length,
- CORBA::Octet *buffer,
- CORBA::Boolean release
- )
- :
-
-#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
-TAO_Unbounded_Sequence<CORBA::Octet>
-#else /* TAO_USE_SEQUENCE_TEMPLATES */
-TAO_Unbounded_Sequence<CORBA::Octet>
-
-#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
- (max, length, buffer, release)
-{}
-
-TAO::ObjectKey::ObjectKey (const ObjectKey &seq)
- :
-
-#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
-TAO_Unbounded_Sequence<CORBA::Octet>
-#else /* TAO_USE_SEQUENCE_TEMPLATES */
-TAO_Unbounded_Sequence<CORBA::Octet>
-
-#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
- (seq)
-{}
-
-#endif /* end #if !defined */
-
// TAO_IDL - Generated from
// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_typecode/typecode_defn.cpp:284
@@ -133,6 +79,94 @@ TAO_NAMESPACE_DEFINE (
)
TAO_NAMESPACE_END
+// TAO_IDL - Generated from
+// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_sequence/cdr_op_cs.cpp:125
+
+CORBA::Boolean operator<< (
+ TAO_OutputCDR &strm,
+ const TAO::ObjectKey &_tao_sequence
+ )
+{
+ CORBA::ULong _tao_seq_len = _tao_sequence.length ();
+
+ if (strm << _tao_seq_len)
+ {
+ // Encode all elements.
+
+#if (TAO_NO_COPY_OCTET_SEQUENCES == 1)
+ {
+ TAO_Unbounded_Sequence<CORBA::Octet> *oseq =
+ ACE_static_cast (TAO_Unbounded_Sequence<CORBA::Octet>*, (TAO::ObjectKey *)&_tao_sequence);
+ if (oseq->mb ())
+ return strm.write_octet_array_mb (oseq->mb ());
+ else
+ return strm.write_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
+ }
+
+#else /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
+ return strm.write_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
+
+#endif /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
+ }
+
+ return 0;
+}
+
+CORBA::Boolean operator>> (
+ TAO_InputCDR &strm,
+ TAO::ObjectKey &_tao_sequence
+ )
+{
+ CORBA::ULong _tao_seq_len;
+
+ if (strm >> _tao_seq_len)
+ {
+ // Add a check to the length of the sequence
+ // to make sure it does not exceed the length
+ // of the stream. (See bug 58.)
+ if (_tao_seq_len > strm.length ())
+ {
+ return 0;
+ }
+
+ // Set the length of the sequence.
+ _tao_sequence.length (_tao_seq_len);
+
+ // If length is 0 we return true.
+ if (0 >= _tao_seq_len)
+ {
+ return 1;
+ }
+
+ // Retrieve all the elements.
+
+#if (TAO_NO_COPY_OCTET_SEQUENCES == 1)
+ if (ACE_BIT_DISABLED (strm.start ()->flags (),
+ ACE_Message_Block::DONT_DELETE))
+ {
+ TAO_ORB_Core* orb_core = strm.orb_core ();
+ if (orb_core != 0 &&
+ strm.orb_core ()->resource_factory ()->
+ input_cdr_allocator_type_locked () == 1)
+ {
+ TAO_Unbounded_Sequence<CORBA::Octet> *oseq =
+ ACE_static_cast(TAO_Unbounded_Sequence<CORBA::Octet>*, &_tao_sequence);
+ oseq->replace (_tao_seq_len, strm.start ());
+ oseq->mb ()->wr_ptr (oseq->mb()->rd_ptr () + _tao_seq_len);
+ strm.skip_bytes (_tao_seq_len);
+ return 1;
+ }
+ }
+ return strm.read_octet_array (_tao_sequence.get_buffer (), _tao_seq_len);
+#else /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
+ return strm.read_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
+
+#endif /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
+ }
+
+ return 0;
+}
+
// ****************************************************************
void
diff --git a/TAO/tao/Object_KeyC.i b/TAO/tao/Object_KeyC.i
index bd6b0f0bec0..31710a4403b 100644
--- a/TAO/tao/Object_KeyC.i
+++ b/TAO/tao/Object_KeyC.i
@@ -20,6 +20,48 @@
// http://www.cs.wustl.edu/~schmidt/TAO.html
+// *************************************************************
+// Inline operations for class TAO::ObjectKey
+// *************************************************************
+
+ACE_INLINE
+TAO::ObjectKey::ObjectKey (void)
+{
+}
+
+ACE_INLINE
+TAO::ObjectKey::ObjectKey (CORBA::ULong max)
+ : TAO_Unbounded_Sequence<CORBA::Octet> (max)
+{
+}
+
+ACE_INLINE
+TAO::ObjectKey::ObjectKey (CORBA::ULong max,
+ CORBA::ULong length,
+ CORBA::Octet *data,
+ CORBA::Boolean release)
+ : TAO_Unbounded_Sequence<CORBA::Octet> (max, length, data, release)
+{
+}
+
+ACE_INLINE
+TAO::ObjectKey::ObjectKey (const TAO::ObjectKey &rhs)
+ : TAO_Unbounded_Sequence<CORBA::Octet> (rhs)
+{
+}
+
+ACE_INLINE TAO::ObjectKey &
+TAO::ObjectKey::operator= (const TAO::ObjectKey &rhs)
+{
+ if (this == &rhs)
+ {
+ return *this;
+ }
+
+ TAO_Unbounded_Sequence<CORBA::Octet>::operator= (rhs);
+ return *this;
+}
+
#if !defined (_TAO_OBJECTKEY_CI_)
#define _TAO_OBJECTKEY_CI_
diff --git a/TAO/tao/PortableInterceptorC.cpp b/TAO/tao/PortableInterceptorC.cpp
index dce736579ef..7127247dd21 100644
--- a/TAO/tao/PortableInterceptorC.cpp
+++ b/TAO/tao/PortableInterceptorC.cpp
@@ -4306,6 +4306,18 @@ PortableInterceptor::PolicyFactory::_duplicate (PolicyFactory_ptr obj)
return obj;
}
+// Hand-crafted.
+
+::CORBA::Policy_ptr
+PortableInterceptor::PolicyFactory::_create_policy (CORBA::PolicyType
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ CORBA::PolicyError))
+{
+ ACE_THROW_RETURN (CORBA::PolicyError (CORBA::BAD_POLICY_TYPE),
+ CORBA::Policy::_nil ());
+}
+
void *PortableInterceptor::PolicyFactory::_tao_QueryInterface (ptr_arith_t type)
{
void *retv = 0;
diff --git a/TAO/tao/PortableInterceptorC.h b/TAO/tao/PortableInterceptorC.h
index 72c3a9f1b36..35fa933d859 100644
--- a/TAO/tao/PortableInterceptorC.h
+++ b/TAO/tao/PortableInterceptorC.h
@@ -2279,7 +2279,18 @@ TAO_NAMESPACE PortableInterceptor
CORBA::SystemException
, CORBA::PolicyError
)) = 0;
+
+ // Hand-crafted addition.
+ virtual ::CORBA::Policy_ptr _create_policy (
+ CORBA::PolicyType type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ , CORBA::PolicyError
+ ));
+
// TAO_IDL - Generated from
// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ch.cpp:267
@@ -2683,6 +2694,14 @@ TAO_NAMESPACE PortableInterceptor
class ORBInitializer;
typedef ORBInitializer *ORBInitializer_ptr;
+ /// Hand-crafted addition.
+ /// Register an ORBInitializer with the global ORBInitializer
+ /// table.
+ TAO_NAMESPACE_STORAGE_CLASS void register_orb_initializer (
+ ORBInitializer_ptr init
+ TAO_ENV_ARG_DECL_WITH_DEFAULTS
+ );
+
#endif /* end #if !defined */
#if !defined (_PORTABLEINTERCEPTOR_ORBINITIALIZER___VAR_CH_)
diff --git a/TAO/tao/Typecode_Constants.cpp b/TAO/tao/Typecode_Constants.cpp
index bcbedce4871..07cc383163b 100644
--- a/TAO/tao/Typecode_Constants.cpp
+++ b/TAO/tao/Typecode_Constants.cpp
@@ -161,15 +161,9 @@ TAO_NAMESPACE_END
// to the CORBA namespace.
TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
TAO_NAMESPACE_BEGIN (CORBA)
-TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_Current, 0)
-TAO_NAMESPACE_END
-TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
-TAO_NAMESPACE_BEGIN (CORBA)
TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ORBid, 0)
TAO_NAMESPACE_END
-CORBA::TypeCode_ptr CORBA_ORB::_tc_ObjectId = 0;
-
#if (TAO_HAS_MINIMUM_CORBA == 0)
TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
@@ -380,33 +374,6 @@ TAO_TypeCodes::init (void)
0,
sizeof (CORBA::ORBid));
- static const CORBA::Long _oc_CORBA_ObjectId[] =
- {
- TAO_ENCAP_BYTE_ORDER, // byte order
- 31,
- ACE_NTOHL (0x49444c3a),
- ACE_NTOHL (0x6f6d672e),
- ACE_NTOHL (0x6f72672f),
- ACE_NTOHL (0x434f5242),
- ACE_NTOHL (0x412f4f62),
- ACE_NTOHL (0x6a656374),
- ACE_NTOHL (0x49643a31),
- ACE_NTOHL (0x2e300000), // repository ID =
- // IDL:omg.org/CORBA/ObjectId:1.0
- 9,
- ACE_NTOHL (0x4f626a65),
- ACE_NTOHL (0x63744964),
- ACE_NTOHL (0x0), // name = ObjectId
- CORBA::tk_string,
- 0, // string length
- };
- CORBA_ORB::_tc_ObjectId =
- new CORBA::TypeCode (CORBA::tk_alias,
- sizeof (_oc_CORBA_ObjectId),
- (char *) &_oc_CORBA_ObjectId,
- 0,
- sizeof (CORBA_ORB::ObjectId));
-
#if (TAO_HAS_MINIMUM_CORBA == 0)
static const CORBA::Long _oc_corba_NamedValue[] =
@@ -716,26 +683,6 @@ TAO_TypeCodes::init (void)
// ****************************************************************
- static const CORBA::Long _oc_CORBA_Current[] =
- {
- TAO_ENCAP_BYTE_ORDER, // byte order
- 22,
- ACE_NTOHL (0x49444c3a),
- ACE_NTOHL (0x434f5242),
- ACE_NTOHL (0x412f4375),
- ACE_NTOHL (0x7272656e),
- ACE_NTOHL (0x743a312e),
- ACE_NTOHL (0x3000fdfd), // repository ID = IDL:CORBA/Current:1.0
- 8,
- ACE_NTOHL (0x43757272),
- ACE_NTOHL (0x656e7400), // name = Current,
- };
- CORBA::_tc_Current = new CORBA::TypeCode (CORBA::tk_objref,
- sizeof (_oc_CORBA_Current),
- (char *) &_oc_CORBA_Current,
- 1,
- sizeof (CORBA::Current));
-
// The following are internal to the TAO ORB
// Octet codes for the parameters of the "Opaque" (sequence of octet)