diff options
author | doccvs <doccvs@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-12-23 01:34:52 +0000 |
---|---|---|
committer | doccvs <doccvs@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-12-23 01:34:52 +0000 |
commit | 3221ac82dcdcd9a6025500532039ed29ecaafec8 (patch) | |
tree | 58b35e1f313b4037e4d6222b707d674b1a345a1a | |
parent | 3ca6b8da976e51a0496f4baf03dfcf77aee92f7d (diff) | |
download | ATCD-3221ac82dcdcd9a6025500532039ed29ecaafec8.tar.gz |
ChangeLogTag: Fri Dec 22 17:31:24 2000 Priyanka Gontla <pgontla@ece.uci.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 12 | ||||
-rw-r--r-- | TAO/tao/ORB.cpp | 6 | ||||
-rw-r--r-- | TAO/tao/RT_ORB_Loader.cpp | 50 | ||||
-rw-r--r-- | TAO/tao/RT_ORB_Loader.h | 50 |
4 files changed, 113 insertions, 5 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index cf75bd4ef3c..7f804b1f745 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,15 @@ +Fri Dec 22 17:31:24 2000 Priyanka Gontla <pgontla@ece.uci.edu> + + * tao/RT_ORB_Loader.cpp: + * tao/RT_ORB_Loader.h: + Added and Committed missing files. + +Fri Dec 22 15:26:58 2000 Priyanka Gontla <pgontla@ece.uci.edu> + + * tao/ORB.cpp (resolve_rt_orb): + Added ACE_UNUSED_ARG (ACE_TRY_ENV) to remove a warning in the + RT_CORBA==0 case. + Fri Dec 22 16:45:42 2000 Darrell Brunsch <brunsch@uci.edu> * performance-tests/Cubit/TAO/IDL_Cubit/client.dsp: diff --git a/TAO/tao/ORB.cpp b/TAO/tao/ORB.cpp index c080e9251fa..ac71c9d1d0d 100644 --- a/TAO/tao/ORB.cpp +++ b/TAO/tao/ORB.cpp @@ -521,15 +521,11 @@ CORBA_ORB::resolve_priority_mapping_manager (CORBA::Environment &/*ACE_TRY_ENV*/ CORBA_Object_ptr CORBA_ORB::resolve_rt_orb (CORBA::Environment &ACE_TRY_ENV) { - #if (TAO_HAS_RT_CORBA == 1) - return this->orb_core_->rt_orb (ACE_TRY_ENV); - #else - + ACE_UNUSED_ARG (ACE_TRY_ENV); return CORBA_Object::_nil (); - #endif /* TAO_HAS_RT_CORBA == 1 */ } diff --git a/TAO/tao/RT_ORB_Loader.cpp b/TAO/tao/RT_ORB_Loader.cpp new file mode 100644 index 00000000000..b8e5f6df19d --- /dev/null +++ b/TAO/tao/RT_ORB_Loader.cpp @@ -0,0 +1,50 @@ +// $Id$ + +#include "RT_ORB_Loader.h" +#include "RT_ORB.h" +#include "RT_Current.h" + +#include "tao/ORB_Core.h" +#include "tao/Priority_Mapping_Manager.h" + +ACE_RCSID(TAO, RT_ORB_Loader, "$Id: ") + +TAO_RT_ORB_Loader::TAO_RT_ORB_Loader (void) +{ +} + +CORBA::Object_ptr +TAO_RT_ORB_Loader::create_object (CORBA::ORB_ptr orb, + int, + char *[], + CORBA::Environment &) + ACE_THROW_SPEC (()) +{ + /// Return RT_ORB + CORBA::Object_ptr obj; + ACE_NEW_RETURN (obj, + TAO_RT_ORB, + CORBA::Object::_nil ()); + + /// Sets the RT_Current object and Priority_Mapping_Manager + /// in the ORB. + this->set_objects (orb->orb_core ()); + + return obj; +} + +void +TAO_RT_ORB_Loader::set_objects (TAO_ORB_Core *orb_core) +{ + /// Setup the RT_Current object in the ORB + CORBA::Object_var current = new TAO_RT_Current (orb_core); + orb_core->rt_current (current.in ()); +} + +ACE_FACTORY_DEFINE (TAO, TAO_RT_ORB_Loader) +ACE_STATIC_SVC_DEFINE (TAO_RT_ORB_Loader, + ACE_TEXT ("RT_ORB_Loader"), + ACE_SVC_OBJ_T, + &ACE_SVC_NAME (TAO_RT_ORB_Loader), + ACE_Service_Type::DELETE_THIS | ACE_Service_Type::DELETE_OBJ, + 0) diff --git a/TAO/tao/RT_ORB_Loader.h b/TAO/tao/RT_ORB_Loader.h new file mode 100644 index 00000000000..01f1b7d04d5 --- /dev/null +++ b/TAO/tao/RT_ORB_Loader.h @@ -0,0 +1,50 @@ +/* -*- C++ -*- */ + +//============================================================================= +/** + * @file RT_ORB_Loader.h + * + * $Id$ + * + * Header file for Loading RT_ORB. + * + * + * @author Priyanka Gontla <gontla_p@ociweb.com> + */ +//============================================================================= + +#ifndef TAO_RT_ORB_LOADER_H +#define TAO_RT_ORB_LOADER_H +#include "ace/pre.h" + +#include "tao/ORB_Core.h" +#include "tao/Object_Loader.h" +#include "ace/Service_Config.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +class TAO_Export TAO_RT_ORB_Loader : public TAO_Object_Loader +{ +public: + + /// Constructor + TAO_RT_ORB_Loader (void); + + /// Creates a RT_ORB and returns it. + virtual CORBA::Object_ptr create_object (CORBA::ORB_ptr orb, + int argc, + char *argv [], + CORBA::Environment &) + ACE_THROW_SPEC (()); + + /// Sets RT_Current and Priority_Mapping_Manager + void set_objects (TAO_ORB_Core *orb_core); +}; + +ACE_STATIC_SVC_DECLARE (TAO_RT_ORB_Loader) +ACE_FACTORY_DECLARE (TAO, TAO_RT_ORB_Loader) + +#include "ace/post.h" +#endif /* TAO_RT_ORB_LOADER_H */ |