summaryrefslogtreecommitdiff
path: root/TAO/examples/OBV/Sequence/seriesC.cpp.bak
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/examples/OBV/Sequence/seriesC.cpp.bak')
-rw-r--r--TAO/examples/OBV/Sequence/seriesC.cpp.bak1866
1 files changed, 1866 insertions, 0 deletions
diff --git a/TAO/examples/OBV/Sequence/seriesC.cpp.bak b/TAO/examples/OBV/Sequence/seriesC.cpp.bak
new file mode 100644
index 00000000000..9f241b556d0
--- /dev/null
+++ b/TAO/examples/OBV/Sequence/seriesC.cpp.bak
@@ -0,0 +1,1866 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#include "seriesC.h"
+
+#include "tao/Stub.h"
+#include "tao/Invocation.h"
+#include "tao/PortableInterceptor.h"
+
+#if TAO_HAS_INTERCEPTORS == 1
+#include "tao/RequestInfo_Util.h"
+#include "tao/ClientRequestInfo.h"
+#include "tao/ClientInterceptorAdapter.h"
+#endif /* TAO_HAS_INTERCEPTORS == 1 */
+
+#if defined (__BORLANDC__)
+#pragma option -w-rvl -w-rch -w-ccc -w-aus
+#endif /* __BORLANDC__ */
+
+#if !defined (__ACE_INLINE__)
+#include "seriesC.i"
+#endif /* !defined INLINE */
+
+registry* registry::_downcast (CORBA::ValueBase* v)
+{
+ if (v == 0) return 0;
+ return (registry* ) v->_tao_obv_narrow ((ptr_arith_t) &_downcast);
+}
+
+const char* registry::_tao_obv_repository_id () const
+{
+ return this->_tao_obv_static_repository_id ();
+}
+
+void* registry::_tao_obv_narrow (ptr_arith_t type_id)
+{
+ if (type_id == (ptr_arith_t) &_downcast)
+ return this;
+ void *rval = 0;
+ return rval;
+}
+
+CORBA::Boolean registry::_tao_marshal_v (TAO_OutputCDR & strm)
+{
+ return this->_tao_marshal__registry (strm);
+}
+
+CORBA::Boolean registry::_tao_unmarshal_v (TAO_InputCDR & strm)
+{
+ return this->_tao_unmarshal__registry (strm);
+}
+
+CORBA::Boolean registry::_tao_unmarshal (TAO_InputCDR &strm, registry *&new_object)
+{
+ CORBA::Boolean retval = 1;
+ CORBA::ValueBase *base; // %! should be a _var
+ CORBA::ValueFactory_ptr factory; // %! should be a _var
+ if (!CORBA::ValueBase::_tao_unmarshal_pre (strm, factory, base,
+ registry::_tao_obv_static_repository_id ()) )
+ {
+ return 0;
+ }
+ if (factory != 0)
+ {
+ base = factory->create_for_unmarshal ();
+ factory->_remove_ref ();
+ if (base == 0) return 0; // %! except.?
+ //%! ACE_DEBUG ((LM_DEBUG, "registry::_tao_unmarshal %s\n", base->_tao_obv_repository_id () ));
+ retval = base->_tao_unmarshal_v (strm);
+ //%! ACE_DEBUG ((LM_DEBUG, "registry::_tao_unmarshal retval unmarshal_v is %d\n", retval));
+ if (!retval) return 0;
+ }
+ // Now base must be null or point to the unmarshaled object.
+ // Align the pointer to the right subobject.
+ new_object = registry::_downcast (base);
+ // %! unmarshal_post
+ return 1;
+}
+
+
+#if !defined (_REGISTRY___INIT_CS_)
+#define _REGISTRY___INIT_CS_
+
+registry_init::~registry_init (void)
+{
+}
+
+const char*
+registry_init::tao_repository_id (void)
+{
+ return registry::_tao_obv_static_repository_id ();
+}
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_OBJECT_SEQUENCE_REGISTRIES_CS_)
+#define __TAO_UNBOUNDED_OBJECT_SEQUENCE_REGISTRIES_CS_
+
+// The Base_Sequence functions, please see tao/Sequence.h
+void
+_TAO_Unbounded_Valuetype_Sequence_registries::_allocate_buffer (CORBA::ULong length)
+{
+ **tmp = 0;
+ tmp = _TAO_Unbounded_Valuetype_Sequence_registries::allocbuf (length);
+
+ if (this->buffer_ != 0)
+ {
+ **old = ACE_reinterpret_cast (**, this->buffer_);
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ {
+ if (!this->release_)
+ {
+ old[i]->_add_ref ();
+ tmp[i] = old[i];
+ }
+ else
+ {
+ tmp[i] = old[i];
+ }
+ }
+
+ if (this->release_)
+ {
+ delete[] old;
+ }
+ }
+ this->buffer_ = tmp;
+}
+
+void
+_TAO_Unbounded_Valuetype_Sequence_registries::_deallocate_buffer (void)
+{
+ if (this->buffer_ == 0 || this->release_ == 0)
+ return;
+ **tmp = ACE_reinterpret_cast (**, this->buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ {
+ tmp[i]->_remove_ref ();
+ tmp[i] = 0;
+ }
+
+ _TAO_Unbounded_Valuetype_Sequence_registries::freebuf (tmp);
+ this->buffer_ = 0;
+}
+
+_TAO_Unbounded_Valuetype_Sequence_registries::~_TAO_Unbounded_Valuetype_Sequence_registries (void)
+{
+ this->_deallocate_buffer ();
+}
+
+void
+_TAO_Unbounded_Valuetype_Sequence_registries::_shrink_buffer (CORBA::ULong nl, CORBA::ULong ol)
+{
+ **tmp = ACE_reinterpret_cast (**, this->buffer_);
+
+ for (CORBA::ULong i = nl; i < ol; ++i)
+ {
+ tmp[i]->_remove_ref ();
+ tmp[i] = 0;
+ }
+}
+
+/*
+void
+_TAO_Unbounded_Valuetype_Sequence_registries::_downcast (
+ void* target,
+ CORBA_Object *src,
+ CORBA_Environment &ACE_TRY_ENV
+ )
+{
+ **tmp = ACE_static_cast (**, target);
+ *tmp = ::_narrow (src, ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+CORBA_Object*
+_TAO_Unbounded_Object_Sequence_registries::_upcast (void *src) const
+{
+ **tmp = ACE_static_cast (**, src);
+ return *tmp;
+}
+*/
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_REGISTRIES_CS_)
+#define _REGISTRIES_CS_
+
+// *************************************************************
+// registries
+// *************************************************************
+
+registries::registries (void)
+{}
+
+registries::registries (CORBA::ULong max) // uses max size
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+_TAO_Unbounded_Valuetype_Sequence_registries
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+TAO_Unbounded_Valuetype_Sequence<registry,registry_var>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (max)
+{}
+
+registries::registries (CORBA::ULong max, CORBA::ULong length, registry_ptr *buffer, CORBA::Boolean release)
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+_TAO_Unbounded_Valuetype_Sequence_registries
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+TAO_Unbounded_Valuetype_Sequence<registry,registry_var>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (max, length, buffer, release)
+{}
+
+registries::registries (const registries &seq) // copy ctor
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+_TAO_Unbounded_Valuetype_Sequence_registries
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+TAO_Unbounded_Valuetype_Sequence<registry,registry_var>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (seq)
+{}
+
+registries::~registries (void) // dtor
+{}
+
+void registries::_tao_any_destructor (void *_tao_void_pointer)
+{
+ registries *tmp = ACE_static_cast (registries*, _tao_void_pointer);
+ delete tmp;
+}
+
+
+#endif /* end #if !defined */
+
+static const CORBA::Long _oc_registries[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 19,
+ ACE_NTOHL (0x49444c3a),
+ ACE_NTOHL (0x72656769),
+ ACE_NTOHL (0x73747269),
+ ACE_NTOHL (0x65733a31),
+ ACE_NTOHL (0x2e300000), // repository ID = IDL:registries:1.0
+ 11,
+ ACE_NTOHL (0x72656769),
+ ACE_NTOHL (0x73747269),
+ ACE_NTOHL (0x65730000), // name = registries
+ CORBA::tk_sequence, // typecode kind
+ 8, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 0U,
+
+};
+
+static CORBA::TypeCode _tc_TAO_tc_registries (
+ CORBA::tk_alias,
+ sizeof (_oc_registries),
+ (char *) &_oc_registries,
+ 0,
+ sizeof (registries)
+ );
+
+CORBA::TypeCode_ptr _tc_registries =
+ &_tc_TAO_tc_registries;
+
+int series::_tao_class_id = 0;
+
+series_ptr
+tao_series_duplicate (
+ series_ptr p
+ )
+{
+ return series::_duplicate (p);
+}
+
+void
+tao_series_release (
+ series_ptr p
+ )
+{
+ CORBA::release (p);
+}
+
+series_ptr
+tao_series_nil (
+ void
+ )
+{
+ return series::_nil ();
+}
+
+series_ptr
+tao_series_narrow (
+ CORBA::Object *p,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ return series::_narrow (p, ACE_TRY_ENV);
+}
+
+CORBA::Object *
+tao_series_upcast (
+ void *src
+ )
+{
+ series **tmp =
+ ACE_static_cast (series **, src);
+ return *tmp;
+}
+
+// *************************************************************
+// Operations for class series_var
+// *************************************************************
+
+series_var::series_var (void) // default constructor
+ : ptr_ (series::_nil ())
+{}
+
+::series_ptr
+series_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+series_var::series_var (const ::series_var &p) // copy constructor
+ : TAO_Base_var (),
+ ptr_ (series::_duplicate (p.ptr ()))
+{}
+
+series_var::~series_var (void) // destructor
+{
+ CORBA::release (this->ptr_);
+}
+
+series_var &
+series_var::operator= (series_ptr p)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = p;
+ return *this;
+}
+
+series_var &
+series_var::operator= (const ::series_var &p)
+{
+ if (this != &p)
+ {
+ CORBA::release (this->ptr_);
+ this->ptr_ = ::series::_duplicate (p.ptr ());
+ }
+ return *this;
+}
+
+series_var::operator const ::series_ptr &() const // cast
+{
+ return this->ptr_;
+}
+
+series_var::operator ::series_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+::series_ptr
+series_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+::series_ptr
+series_var::in (void) const
+{
+ return this->ptr_;
+}
+
+::series_ptr &
+series_var::inout (void)
+{
+ return this->ptr_;
+}
+
+::series_ptr &
+series_var::out (void)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ::series::_nil ();
+ return this->ptr_;
+}
+
+::series_ptr
+series_var::_retn (void)
+{
+ // yield ownership of managed obj reference
+ ::series_ptr val = this->ptr_;
+ this->ptr_ = ::series::_nil ();
+ return val;
+}
+
+::series_ptr
+series_var::duplicate (series_ptr p)
+{
+ return ::series::_duplicate (p);
+}
+
+void
+series_var::release (series_ptr p)
+{
+ CORBA::release (p);
+}
+
+::series_ptr
+series_var::nil (void)
+{
+ return ::series::_nil ();
+}
+
+::series_ptr
+series_var::narrow (
+ CORBA::Object *p,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ return ::series::_narrow (p, ACE_TRY_ENV);
+}
+
+CORBA::Object *
+series_var::upcast (void *src)
+{
+ series **tmp =
+ ACE_static_cast (series **, src);
+ return *tmp;
+}
+
+// *************************************************************
+// Operations for class series_out
+// *************************************************************
+
+series_out::series_out (series_ptr &p)
+ : ptr_ (p)
+{
+ this->ptr_ = ::series::_nil ();
+}
+
+series_out::series_out (series_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ::series::_nil ();
+}
+
+series_out::series_out (const ::series_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (series_out &, p).ptr_)
+{}
+
+::series_out &
+series_out::operator= (const ::series_out &p)
+{
+ this->ptr_ = ACE_const_cast (series_out&, p).ptr_;
+ return *this;
+}
+
+series_out &
+series_out::operator= (const ::series_var &p)
+{
+ this->ptr_ = ::series::_duplicate (p.ptr ());
+ return *this;
+}
+
+series_out &
+series_out::operator= (series_ptr p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+series_out::operator ::series_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+::series_ptr &
+series_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+::series_ptr
+series_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ClientRequestInfo_series_cube : public TAO_ClientRequestInfo
+{
+public:
+ TAO_ClientRequestInfo_series_cube (
+ TAO_GIOP_Invocation *_tao_invocation,
+ CORBA::Object_ptr _tao_target,
+ registry * v,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual Dynamic::ParameterList * arguments (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (registry * result);
+
+private:
+ TAO_ClientRequestInfo_series_cube (const TAO_ClientRequestInfo_series_cube &);
+ void operator= (const TAO_ClientRequestInfo_series_cube &);
+
+ registry * v_;
+ registry * _result;
+};
+
+TAO_ClientRequestInfo_series_cube::TAO_ClientRequestInfo_series_cube (
+ TAO_GIOP_Invocation *_tao_invocation,
+ CORBA::Object_ptr _tao_target,
+ registry * v,
+ CORBA::Environment &
+ )
+ : TAO_ClientRequestInfo (_tao_invocation, _tao_target),
+ v_ (v)
+{}
+
+Dynamic::ParameterList *
+TAO_ClientRequestInfo_series_cube::arguments (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ClientRequestInfo_series_cube::exceptions (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+
+CORBA::Any *
+TAO_ClientRequestInfo_series_cube::result (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any, ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ return safe_result_any._retn ();
+}
+
+void
+TAO_ClientRequestInfo_series_cube::result (registry * result)
+{
+ // update the result
+ this->_result = result;
+}
+
+class TAO_ClientRequestInfo_series_sum : public TAO_ClientRequestInfo
+{
+public:
+ TAO_ClientRequestInfo_series_sum (
+ TAO_GIOP_Invocation *_tao_invocation,
+ CORBA::Object_ptr _tao_target,
+ const registries & x,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual Dynamic::ParameterList * arguments (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (registries * result);
+
+private:
+ TAO_ClientRequestInfo_series_sum (const TAO_ClientRequestInfo_series_sum &);
+ void operator= (const TAO_ClientRequestInfo_series_sum &);
+
+ const registries & x_;
+ registries * _result;
+};
+
+TAO_ClientRequestInfo_series_sum::TAO_ClientRequestInfo_series_sum (
+ TAO_GIOP_Invocation *_tao_invocation,
+ CORBA::Object_ptr _tao_target,
+ const registries & x,
+ CORBA::Environment &
+ )
+ : TAO_ClientRequestInfo (_tao_invocation, _tao_target),
+ x_ (x)
+{}
+
+Dynamic::ParameterList *
+TAO_ClientRequestInfo_series_sum::arguments (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->x_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ClientRequestInfo_series_sum::exceptions (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+
+CORBA::Any *
+TAO_ClientRequestInfo_series_sum::result (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any, ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+ return safe_result_any._retn ();
+}
+
+void
+TAO_ClientRequestInfo_series_sum::result (registries * result)
+{
+ // update the result
+ this->_result = result;
+}
+
+class TAO_ClientRequestInfo_series_shutdown : public TAO_ClientRequestInfo
+{
+public:
+ TAO_ClientRequestInfo_series_shutdown (
+ TAO_GIOP_Invocation *_tao_invocation,
+ CORBA::Object_ptr _tao_target,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual Dynamic::ParameterList * arguments (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+private:
+ TAO_ClientRequestInfo_series_shutdown (const TAO_ClientRequestInfo_series_shutdown &);
+ void operator= (const TAO_ClientRequestInfo_series_shutdown &);
+
+
+};
+
+TAO_ClientRequestInfo_series_shutdown::TAO_ClientRequestInfo_series_shutdown (
+ TAO_GIOP_Invocation *_tao_invocation,
+ CORBA::Object_ptr _tao_target,
+ CORBA::Environment &
+ )
+ : TAO_ClientRequestInfo (_tao_invocation, _tao_target)
+{}
+
+Dynamic::ParameterList *
+TAO_ClientRequestInfo_series_shutdown::arguments (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ClientRequestInfo_series_shutdown::exceptions (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+
+CORBA::Any *
+TAO_ClientRequestInfo_series_shutdown::result (CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any, ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Base & Remote Proxy Implementation.
+//
+
+_TAO_series_Proxy_Impl::_TAO_series_Proxy_Impl (void)
+{}
+
+_TAO_series_Remote_Proxy_Impl::_TAO_series_Remote_Proxy_Impl (void)
+{}
+
+// Remote Implementation of the IDL interface methods
+
+registry * _TAO_series_Remote_Proxy_Impl::cube (
+ CORBA_Object *_collocated_tao_target_,
+ registry * v,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+ registry_ptr _tao_retval = 0;
+ registry_var _tao_safe_retval (_tao_retval);
+
+
+ TAO_Stub *istub = _collocated_tao_target_->_stubobj ();
+ if (istub == 0)
+ ACE_THROW_RETURN (CORBA::INTERNAL (), 0);
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "cube",
+ 4,
+ 1,
+ istub->orb_core ()
+ );
+
+ int _invoke_status;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_ClientRequestInterceptor_Adapter _tao_vfr (
+ istub->orb_core ()->client_request_interceptors (),
+ &_tao_call,
+ _invoke_status
+ );
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _invoke_status = TAO_INVOKE_EXCEPTION;
+
+#if TAO_HAS_INTERCEPTORS == 1
+ TAO_ClientRequestInfo_series_cube ri (
+ &_tao_call,
+ _collocated_tao_target_,
+ v,
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+
+ CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
+ TAO_INTERCEPTOR (ri.response_expected (1));
+
+#if TAO_HAS_INTERCEPTORS == 1
+
+ ACE_TRY
+ {
+ _tao_vfr.send_request (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ {
+ _tao_call.restart_flag (1);
+ continue;
+ }
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ _tao_call.prepare_header (
+ ACE_static_cast (CORBA::Octet, _tao_response_flag),
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << v)
+ ))
+ TAO_INTERCEPTOR_THROW_RETURN (
+ CORBA::MARSHAL (),
+ 0
+ );
+
+ _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ if (_invoke_status == TAO_INVOKE_EXCEPTION)
+ {
+ TAO_INTERCEPTOR_THROW_RETURN (
+ CORBA::UNKNOWN (TAO_OMG_VMCID | 1, CORBA::COMPLETED_YES),
+ 0
+ );
+
+ }
+ else if (_invoke_status == TAO_INVOKE_RESTART)
+ {
+ TAO_INTERCEPTOR (
+ ri.reply_status (_invoke_status);
+ _tao_vfr.receive_other (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ )
+
+ continue;
+ }
+
+ TAO_InputCDR &_tao_in = _tao_call.inp_stream ();
+ if (!(
+ (_tao_in >> _tao_safe_retval.inout ())
+ ))
+ {
+ TAO_INTERCEPTOR_THROW_RETURN (
+ CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES),
+ 0
+ );
+
+ }
+
+#if TAO_HAS_INTERCEPTORS == 1
+ registry * _tao_retval_info = _tao_safe_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_safe_retval = _tao_retval_info;
+
+ ri.reply_status (_invoke_status);
+ _tao_vfr.receive_reply (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.receive_exception (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (0);
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ if (_tao_status == PortableInterceptor::LOCATION_FORWARD
+ || _tao_status == PortableInterceptor::TRANSPORT_RETRY)
+ continue;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ break;
+ }
+return _tao_safe_retval._retn ();
+}
+
+registries * _TAO_series_Remote_Proxy_Impl::sum (
+ CORBA_Object *_collocated_tao_target_,
+ const registries & x,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+ registries *_tao_retval = 0;
+
+
+ TAO_Stub *istub = _collocated_tao_target_->_stubobj ();
+ if (istub == 0)
+ ACE_THROW_RETURN (CORBA::INTERNAL (), 0);
+
+
+ ACE_NEW_RETURN (_tao_retval, registries, _tao_retval);
+ registries_var _tao_safe_retval (_tao_retval);
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "sum",
+ 3,
+ 1,
+ istub->orb_core ()
+ );
+
+ int _invoke_status;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_ClientRequestInterceptor_Adapter _tao_vfr (
+ istub->orb_core ()->client_request_interceptors (),
+ &_tao_call,
+ _invoke_status
+ );
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _invoke_status = TAO_INVOKE_EXCEPTION;
+
+#if TAO_HAS_INTERCEPTORS == 1
+ TAO_ClientRequestInfo_series_sum ri (
+ &_tao_call,
+ _collocated_tao_target_,
+ x,
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+
+ CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
+ TAO_INTERCEPTOR (ri.response_expected (1));
+
+#if TAO_HAS_INTERCEPTORS == 1
+
+ ACE_TRY
+ {
+ _tao_vfr.send_request (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ {
+ _tao_call.restart_flag (1);
+ continue;
+ }
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ _tao_call.prepare_header (
+ ACE_static_cast (CORBA::Octet, _tao_response_flag),
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << x)
+ ))
+ TAO_INTERCEPTOR_THROW_RETURN (
+ CORBA::MARSHAL (),
+ 0
+ );
+
+ _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ if (_invoke_status == TAO_INVOKE_EXCEPTION)
+ {
+ TAO_INTERCEPTOR_THROW_RETURN (
+ CORBA::UNKNOWN (TAO_OMG_VMCID | 1, CORBA::COMPLETED_YES),
+ 0
+ );
+
+ }
+ else if (_invoke_status == TAO_INVOKE_RESTART)
+ {
+ TAO_INTERCEPTOR (
+ ri.reply_status (_invoke_status);
+ _tao_vfr.receive_other (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ )
+
+ continue;
+ }
+
+ TAO_InputCDR &_tao_in = _tao_call.inp_stream ();
+ if (!(
+ (_tao_in >> _tao_safe_retval.inout ())
+ ))
+ {
+ TAO_INTERCEPTOR_THROW_RETURN (
+ CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES),
+ 0
+ );
+
+ }
+
+#if TAO_HAS_INTERCEPTORS == 1
+ registries * _tao_retval_info = _tao_safe_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_safe_retval = _tao_retval_info;
+
+ ri.reply_status (_invoke_status);
+ _tao_vfr.receive_reply (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.receive_exception (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (0);
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ if (_tao_status == PortableInterceptor::LOCATION_FORWARD
+ || _tao_status == PortableInterceptor::TRANSPORT_RETRY)
+ continue;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ break;
+ }
+return _tao_safe_retval._retn ();
+}
+
+void _TAO_series_Remote_Proxy_Impl::shutdown (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+
+
+
+ TAO_Stub *istub = _collocated_tao_target_->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "shutdown",
+ 8,
+ 0,
+ istub->orb_core ()
+ );
+
+ int _invoke_status;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_ClientRequestInterceptor_Adapter _tao_vfr (
+ istub->orb_core ()->client_request_interceptors (),
+ &_tao_call,
+ _invoke_status
+ );
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _invoke_status = TAO_INVOKE_EXCEPTION;
+
+#if TAO_HAS_INTERCEPTORS == 1
+ TAO_ClientRequestInfo_series_shutdown ri (
+ &_tao_call,
+ _collocated_tao_target_,
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+
+ CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
+ TAO_INTERCEPTOR (ri.response_expected (1));
+
+#if TAO_HAS_INTERCEPTORS == 1
+
+ ACE_TRY
+ {
+ _tao_vfr.send_request (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ {
+ _tao_call.restart_flag (1);
+ continue;
+ }
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ _tao_call.prepare_header (
+ ACE_static_cast (CORBA::Octet, _tao_response_flag),
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+ _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_EXCEPTION)
+ {
+ TAO_INTERCEPTOR_THROW (
+ CORBA::UNKNOWN (TAO_OMG_VMCID | 1, CORBA::COMPLETED_YES)
+ );
+
+ }
+ else if (_invoke_status == TAO_INVOKE_RESTART)
+ {
+ TAO_INTERCEPTOR (
+ ri.reply_status (_invoke_status);
+ _tao_vfr.receive_other (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ )
+
+ continue;
+ }
+
+
+#if TAO_HAS_INTERCEPTORS == 1
+
+ ri.reply_status (_invoke_status);
+ _tao_vfr.receive_reply (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.receive_exception (
+ &ri,
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_TRY_ENV);
+ ACE_CHECK;
+
+ if (_tao_status == PortableInterceptor::LOCATION_FORWARD
+ || _tao_status == PortableInterceptor::TRANSPORT_RETRY)
+ continue;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ break;
+ }
+
+}
+
+
+//
+// End Base & Remote Proxy Implemeentation.
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// Remote & Base Proxy Broker Implementation
+//
+
+_TAO_series_Proxy_Broker::_TAO_series_Proxy_Broker (void)
+{
+}
+
+_TAO_series_Proxy_Broker::~_TAO_series_Proxy_Broker (void)
+{
+}
+
+_TAO_series_Proxy_Broker * (*_TAO_series_Proxy_Broker_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ ) = 0;
+
+// Factory Member function Implementation.
+_TAO_series_Remote_Proxy_Broker *
+_TAO_series_Remote_Proxy_Broker::the_TAO_series_Remote_Proxy_Broker (void)
+{
+ static ::_TAO_series_Remote_Proxy_Broker remote_proxy_broker;
+ return &remote_proxy_broker;
+}
+
+_TAO_series_Remote_Proxy_Broker::_TAO_series_Remote_Proxy_Broker (void)
+{
+}
+
+_TAO_series_Remote_Proxy_Broker::~_TAO_series_Remote_Proxy_Broker (void)
+{
+}
+
+_TAO_series_Proxy_Impl&
+_TAO_series_Remote_Proxy_Broker::select_proxy (
+ ::series *,
+ CORBA::Environment &
+)
+{
+ return this->remote_proxy_impl_;
+}
+
+
+//
+// End Remote & Base Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+// default constructor
+series::series (int collocated)
+{
+ this->series_setup_collocation (collocated);
+}
+
+// destructor
+series::~series (void)
+{}
+
+void
+series::series_setup_collocation (int collocated)
+{
+ if (collocated)
+ this->the_TAO_series_Proxy_Broker_ =
+ ::_TAO_series_Proxy_Broker_Factory_function_pointer (this);
+ else
+ this->the_TAO_series_Proxy_Broker_ =
+ ::_TAO_series_Remote_Proxy_Broker::the_TAO_series_Remote_Proxy_Broker ();
+}
+
+void series::_tao_any_destructor (void *_tao_void_pointer)
+{
+ series *tmp = ACE_static_cast (series*, _tao_void_pointer);
+ CORBA::release (tmp);
+}
+
+series_ptr series::_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (CORBA::is_nil (obj))
+ return series::_nil ();
+ if (! obj->_is_local ())
+ {
+ CORBA::Boolean is_a = obj->_is_a ("IDL:series:1.0", ACE_TRY_ENV);
+ ACE_CHECK_RETURN (series::_nil ());
+ if (is_a == 0)
+ return series::_nil ();
+ }
+ return series::_unchecked_narrow (obj, ACE_TRY_ENV);
+}
+
+series_ptr series::_unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &
+ )
+{
+ if (CORBA::is_nil (obj))
+ return series::_nil ();
+ if (! obj->_is_local ())
+ {
+ TAO_Stub* stub = obj->_stubobj ();
+ if (stub)
+ stub->_incr_refcnt ();
+ series_ptr default_proxy = series::_nil ();
+
+ if (
+ !CORBA::is_nil (stub->servant_orb_var ().ptr ()) &&
+ stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects () &&
+ obj->_is_collocated () &&
+ _TAO_series_Proxy_Broker_Factory_function_pointer != 0
+ )
+ {
+ ACE_NEW_RETURN (
+ default_proxy,
+ ::series (
+ stub,
+ 1,
+ obj->_servant ()
+ ),
+ series::_nil ()
+ );
+ }
+
+ if (CORBA::is_nil (default_proxy))
+ {
+ ACE_NEW_RETURN (
+ default_proxy,
+ ::series (
+ stub,
+ 0,
+ obj->_servant ()
+ ),
+ series::_nil ()
+ );
+ }
+
+ return default_proxy;
+ }
+ else
+ return
+ ACE_reinterpret_cast
+ (
+ series_ptr,
+ obj->_tao_QueryInterface
+ (
+ ACE_reinterpret_cast
+ (
+ ptr_arith_t,
+ &series::_tao_class_id
+ )
+ )
+ );
+}
+
+series_ptr
+series::_duplicate (series_ptr obj)
+{
+ if (!CORBA::is_nil (obj))
+ obj->_add_ref ();
+ return obj;
+}
+
+CORBA::Boolean series::_is_a (const CORBA::Char *value, CORBA::Environment &ACE_TRY_ENV)
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:series:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Object:1.0")))
+ return 1; // success using local knowledge
+ else
+ return this->CORBA_Object::_is_a (value, ACE_TRY_ENV);
+}
+
+void *series::_tao_QueryInterface (ptr_arith_t type)
+{
+ void *retv = 0;
+ if (type == ACE_reinterpret_cast
+ (ptr_arith_t,
+ &series::_tao_class_id))
+ retv = ACE_reinterpret_cast (void*, this);
+ else if (type == ACE_reinterpret_cast (ptr_arith_t, &CORBA::Object::_tao_class_id))
+ retv = ACE_reinterpret_cast (void *,
+ ACE_static_cast (CORBA::Object_ptr, this));
+
+ if (retv)
+ this->_add_ref ();
+ return retv;
+}
+
+const char* series::_interface_repository_id (void) const
+{
+ return "IDL:series:1.0";
+}
+
+registry * series::cube (
+ registry * v,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ _TAO_series_Proxy_Impl &proxy =
+ this->the_TAO_series_Proxy_Broker_->select_proxy (this, ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return proxy.cube (
+ this,
+ v,
+ ACE_TRY_ENV
+ );
+}
+
+registries * series::sum (
+ const registries & x,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ _TAO_series_Proxy_Impl &proxy =
+ this->the_TAO_series_Proxy_Broker_->select_proxy (this, ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+
+ return proxy.sum (
+ this,
+ x,
+ ACE_TRY_ENV
+ );
+}
+
+void series::shutdown (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ _TAO_series_Proxy_Impl &proxy =
+ this->the_TAO_series_Proxy_Broker_->select_proxy (this, ACE_TRY_ENV);
+ ACE_CHECK;
+
+ proxy.shutdown (
+ this,
+ ACE_TRY_ENV
+ );
+}
+
+static const CORBA::Long _oc_series[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 15,
+ ACE_NTOHL (0x49444c3a),
+ ACE_NTOHL (0x73657269),
+ ACE_NTOHL (0x65733a31),
+ ACE_NTOHL (0x2e300000), // repository ID = IDL:series:1.0
+ 7,
+ ACE_NTOHL (0x73657269),
+ ACE_NTOHL (0x65730000), // name = series
+};
+
+static CORBA::TypeCode _tc_TAO_tc_series (
+ CORBA::tk_objref,
+ sizeof (_oc_series),
+ (char *) &_oc_series,
+ 0,
+ sizeof (series)
+ );
+
+CORBA::TypeCode_ptr _tc_series =
+ &_tc_TAO_tc_series;
+
+CORBA::Boolean
+OBV_registry::_tao_marshal__registry (TAO_OutputCDR &strm){
+ return _tao_marshal_state (strm);
+
+}
+CORBA::Boolean OBV_registry::_tao_unmarshal__registry (TAO_InputCDR &strm){
+ return _tao_unmarshal_state (strm);
+
+}
+// accessor to set the member
+void
+OBV_registry::value (CORBA::Long val) // set
+{
+ // set the value
+ this->_pd_value = val;
+}
+// retrieve the member
+CORBA::Long
+OBV_registry::value (void) const
+{
+ return this->_pd_value;
+}
+
+void operator<<= (
+ CORBA::Any &_tao_any,
+ const registries &_tao_elem
+ ) // copying
+{
+ TAO_OutputCDR stream;
+ if (stream << _tao_elem)
+ {
+ _tao_any._tao_replace (
+ _tc_registries,
+ TAO_ENCAP_BYTE_ORDER,
+ stream.begin ()
+ );
+ }
+}
+
+void operator<<= (CORBA::Any &_tao_any, registries *_tao_elem) // non copying
+{
+ TAO_OutputCDR stream;
+ stream << *_tao_elem;
+ _tao_any._tao_replace (
+ _tc_registries,
+ TAO_ENCAP_BYTE_ORDER,
+ stream.begin (),
+ 1,
+ _tao_elem,
+ registries::_tao_any_destructor
+ );
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, registries *&_tao_elem)
+{
+ return _tao_any >>= ACE_const_cast(
+ const registries*&,
+ _tao_elem
+ );
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, const registries *&_tao_elem)
+{
+ _tao_elem = 0;
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+
+ CORBA::Boolean result = type->equivalent (_tc_registries, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (!result)
+ return 0; // not equivalent
+
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = ACE_static_cast(
+ const registries*,
+ _tao_any.value ()
+ );
+ return 1;
+ }
+ else
+ {
+ registries *tmp;
+ ACE_NEW_RETURN (tmp, registries, 0);
+ TAO_InputCDR stream (
+ _tao_any._tao_get_cdr (),
+ _tao_any._tao_byte_order ()
+ );
+ if (stream >> *tmp)
+ {
+ ((CORBA::Any *)&_tao_any)->_tao_replace (
+ _tc_registries,
+ 1,
+ ACE_static_cast (void *, tmp),
+ registries::_tao_any_destructor
+ );
+ _tao_elem = tmp;
+ return 1;
+ }
+ else
+ {
+ delete tmp;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (CORBA::Any &_tao_any, series_ptr _tao_elem)
+{
+ TAO_OutputCDR stream;
+ if (stream << _tao_elem)
+ {
+ _tao_any._tao_replace (
+ _tc_series,
+ TAO_ENCAP_BYTE_ORDER,
+ stream.begin (),
+ 1,
+ series::_duplicate (_tao_elem),
+ series::_tao_any_destructor
+ );
+ }
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, series_ptr &_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_elem = series::_nil ();
+ CORBA::TypeCode_var type = _tao_any.type ();
+
+ CORBA::Boolean result = type->equivalent (_tc_series, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (!result)
+ return 0; // not equivalent
+
+ TAO_InputCDR stream (
+ _tao_any._tao_get_cdr (),
+ _tao_any._tao_byte_order ()
+ );
+ if (stream >> _tao_elem)
+ {
+ ((CORBA::Any *)&_tao_any)->_tao_replace (
+ _tc_series,
+ 1,
+ _tao_elem,
+ series::_tao_any_destructor
+ );
+ return 1;
+ }
+ }
+ ACE_CATCHANY
+ {
+ _tao_elem = series::_nil ();
+ return 0;
+ }
+ ACE_ENDTRY;
+ _tao_elem = series::_nil ();
+ return 0;
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+ template class TAO_Object_Manager<series,series_var>;
+ #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+ # pragma instantiate TAO_Object_Manager<series,series_var>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+CORBA::Boolean operator<< (
+ TAO_OutputCDR &strm,
+ const registries &_tao_sequence
+ )
+{
+ if (strm << _tao_sequence.length ())
+ {
+ // encode all elements
+ CORBA::Boolean _tao_marshal_flag = 1;
+ for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++)
+ {
+ _tao_marshal_flag = (strm << _tao_sequence[i].in ());
+ }
+ return _tao_marshal_flag;
+ }
+ return 0; // error
+}
+
+CORBA::Boolean operator>> (
+ TAO_InputCDR &strm,
+ registries &_tao_sequence
+ )
+{
+ CORBA::ULong _tao_seq_len;
+ if (strm >> _tao_seq_len)
+ {
+ // 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;
+ // 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;
+ // retrieve all the elements
+ CORBA::Boolean _tao_marshal_flag = 1;
+ for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++)
+ {
+ _tao_marshal_flag = (strm >> _tao_sequence[i].out ());
+ }
+ return _tao_marshal_flag;
+ }
+ return 0; // error
+}
+
+CORBA::Boolean operator<< (
+ TAO_OutputCDR &strm,
+ const series_ptr _tao_objref
+ )
+{
+ CORBA::Object_ptr _tao_corba_obj = _tao_objref;
+ return (strm << _tao_corba_obj);
+}
+
+CORBA::Boolean operator>> (
+ TAO_InputCDR &strm,
+ series_ptr &_tao_objref
+ )
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::Object_var obj;
+ if ((strm >> obj.inout ()) == 0)
+ return 0;
+ // narrow to the right type
+ _tao_objref =
+ series::_unchecked_narrow (
+ obj.in (),
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ ACE_CATCHANY
+ {
+ // do nothing
+ }
+ ACE_ENDTRY;
+ return 0;
+}