summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp127
1 files changed, 121 insertions, 6 deletions
diff --git a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
index 9b18545640b..0b458f46647 100644
--- a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
+++ b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
@@ -114,7 +114,7 @@ TAO::SSLIOP::Current::setup (TAO::SSLIOP::Current_Impl *&prev_impl,
void
TAO::SSLIOP::Current::teardown (TAO::SSLIOP::Current_Impl *prev_impl,
- bool &setup_done)
+ bool &setup_done)
{
if (setup_done)
{
@@ -193,13 +193,128 @@ tao_TAO_SSLIOP_Current_upcast (
return *tmp;
}
+// *************************************************************
+// Operations for class TAO::SSLIOP::Current_var
+// *************************************************************
-#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+TAO::SSLIOP::Current_var::Current_var (void) // default constructor
+ : ptr_ (TAO::SSLIOP::Current::_nil ())
+{
+}
+
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+TAO::SSLIOP::Current_var::Current_var (
+ const ::TAO::SSLIOP::Current_var &p)
+ : TAO_Base_var (),
+ ptr_ (TAO::SSLIOP::Current::_duplicate (p.ptr ()))
+{
+}
+
+TAO::SSLIOP::Current_var::~Current_var (void)
+{
+ CORBA::release (this->ptr_);
+}
+
+TAO::SSLIOP::Current_var &
+TAO::SSLIOP::Current_var::operator= (TAO::SSLIOP::Current_ptr p)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = p;
+ return *this;
+}
+
+TAO::SSLIOP::Current_var &
+TAO::SSLIOP::Current_var::operator= (const ::TAO::SSLIOP::Current_var &p)
+{
+ if (this != &p)
+ {
+ CORBA::release (this->ptr_);
+ this->ptr_ = ::TAO::SSLIOP::Current::_duplicate (p.ptr ());
+ }
+ return *this;
+}
+
+TAO::SSLIOP::Current_var::operator const ::TAO::SSLIOP::Current_ptr &() const
+{
+ return this->ptr_;
+}
+
+TAO::SSLIOP::Current_var::operator ::TAO::SSLIOP::Current_ptr &()
+{
+ return this->ptr_;
+}
+
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::in (void) const
+{
+ return this->ptr_;
+}
-template class TAO_Pseudo_Var_T<TAO::SSLIOP::Current>;
+::TAO::SSLIOP::Current_ptr &
+TAO::SSLIOP::Current_var::inout (void)
+{
+ return this->ptr_;
+}
-#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+::TAO::SSLIOP::Current_ptr &
+TAO::SSLIOP::Current_var::out (void)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ::TAO::SSLIOP::Current::_nil ();
+ return this->ptr_;
+}
-# pragma instantiate TAO_Pseudo_Var_T<TAO::SSLIOP::Current>
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::_retn (void)
+{
+ // yield ownership of managed obj reference
+ ::TAO::SSLIOP::Current_ptr val = this->ptr_;
+ this->ptr_ = ::TAO::SSLIOP::Current::_nil ();
+ return val;
+}
-#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::tao_duplicate (TAO::SSLIOP::Current_ptr p)
+{
+ return ::TAO::SSLIOP::Current::_duplicate (p);
+}
+
+void
+TAO::SSLIOP::Current_var::tao_release (TAO::SSLIOP::Current_ptr p)
+{
+ CORBA::release (p);
+}
+
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::tao_nil (void)
+{
+ return ::TAO::SSLIOP::Current::_nil ();
+}
+
+::TAO::SSLIOP::Current_ptr
+TAO::SSLIOP::Current_var::tao_narrow (
+ CORBA::Object *p
+ ACE_ENV_ARG_DECL
+ )
+{
+ return ::TAO::SSLIOP::Current::_narrow (p ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Object *
+TAO::SSLIOP::Current_var::tao_upcast (void *src)
+{
+ TAO::SSLIOP::Current **tmp =
+ static_cast<TAO::SSLIOP::Current **> (src);
+ return *tmp;
+}