summaryrefslogtreecommitdiff
path: root/TAO/tao
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao')
-rw-r--r--TAO/tao/CORBA.cpp177
-rw-r--r--TAO/tao/factories.h141
2 files changed, 0 insertions, 318 deletions
diff --git a/TAO/tao/CORBA.cpp b/TAO/tao/CORBA.cpp
deleted file mode 100644
index 46ccc7c2033..00000000000
--- a/TAO/tao/CORBA.cpp
+++ /dev/null
@@ -1,177 +0,0 @@
-// $Id$
-
-#include "tao/corba.h"
-
-// String utility support; this can need to be integrated with the
-// ORB's own memory allocation subsystem.
-
-CORBA::String
-CORBA::string_copy (const CORBA::Char *str)
-{
- if (!str)
- return 0;
-
- CORBA::String retval =
- CORBA::string_alloc (ACE_OS::strlen (str));
-
- // clear the contents of the allocated string
- ACE_OS::memset(retval, '\0', ACE_OS::strlen (str));
-
- return ACE_OS::strcpy (retval, str);
-}
-
-CORBA::String_var &
-CORBA::String_var::operator= (char *p)
-{
- if (this->ptr_ != p)
- {
- if (this->ptr_ != 0)
- CORBA::string_free (this->ptr_);
- this->ptr_ = p;
- }
- return *this;
-}
-
-CORBA::String_var &
-CORBA::String_var::operator= (const char *p)
-{
- if (this->ptr_ != 0)
- CORBA::string_free (this->ptr_);
-
- this->ptr_ = CORBA::string_dup (p);
- return *this;
-}
-
-CORBA::String_var &
-CORBA::String_var::operator= (const CORBA::String_var& r)
-{
- if (this != &r)
- {
- if (this->ptr_ != 0)
- CORBA::string_free (this->ptr_);
- this->ptr_ = CORBA::string_dup (r.ptr_);
- }
- return *this;
-}
-
-// Wide Character string utility support; this can need to be
-// integrated with the ORB's own memory allocation subsystem.
-
-CORBA::WString
-CORBA::wstring_alloc (CORBA::ULong len)
-{
- return new CORBA::WChar [(size_t) (len + 1)];
-}
-
-static
-inline
-CORBA::WChar *
-wscpy (CORBA::WChar *dest,
- const CORBA::WChar *src)
-{
- CORBA::WChar *retval = dest;
-
- while ((*dest++ = *src++) != 0)
- continue;
- return retval;
-}
-
-CORBA::WString
-CORBA::wstring_copy (const CORBA::WChar *const str)
-{
- if (*str)
- return 0;
-
- CORBA::WString retval = CORBA::wstring_alloc (ACE_WString::wstrlen (str));
- return wscpy (retval, str);
-}
-
-void
-CORBA::wstring_free (CORBA::WChar *const str)
-{
- delete [] str;
-}
-
-// ORB initialisation, per OMG document 94-9-46.
-//
-// XXX in addition to the "built in" Internet ORB, there will be ORBs
-// which are added separately, e.g. through a DLL listed in the
-// registry. Registry will be used to assign orb names and to
-// establish which is the default.
-
-CORBA::ORB_ptr
-CORBA::ORB_init (int &argc,
- char *const *argv,
- const char * /* orb_name */,
- CORBA::Environment &env)
-{
- // Using ACE_Static_Object_Lock::instance() precludes ORB_init from
- // being called within a static object CTOR.
- ACE_MT (ACE_GUARD_RETURN (ACE_SYNCH_RECURSIVE_MUTEX, guard,
- *ACE_Static_Object_Lock::instance (), 0));
-
- env.clear ();
-
- // @@ We need to make sure it's ok for the following 3
- // initialization routines to be called multiple times. Or better
- // yet, ensure that we just call them the first time, e.g., by
- // putting them in some type of TAO_Object_Manager, along with the
- // Typecode_Constants...
-
- // Put these initializations here so that exceptions are enabled
- // immediately.
- TAO_Marshal::initialize ();
- TAO_Exceptions::init_standard_exceptions (env);
- TAO_IIOP_Interpreter::init_table ();
-
- if (env.exception () != 0)
- return 0;
-
- // Verify some of the basic implementation requirements. This test
- // gets optimized away by a decent compiler (or else the rest of the
- // routine does).
- //
- // NOTE: we still "just" assume that native floating point is IEEE.
-
- if (sizeof (CORBA::Short) != 2
- || sizeof (CORBA::Long) != 4
- || sizeof (CORBA::LongLong) != 8
- || sizeof (CORBA::Float) != 4
- || sizeof (CORBA::Double) != 8
- || sizeof (CORBA::LongDouble) != 16
- || sizeof (CORBA::WChar) < 2
- || sizeof (void *) != ACE_SIZEOF_VOID_P)
- {
- ACE_DEBUG ((LM_DEBUG, "%s; ERROR: unexpected basic type size; "
- "s:%d l:%d ll:%d f:%d d:%d ld:%d wc:%d v:%d\n",
- sizeof (CORBA::Short),
- sizeof (CORBA::Long),
- sizeof (CORBA::LongLong),
- sizeof (CORBA::Float),
- sizeof (CORBA::Double),
- sizeof (CORBA::LongDouble),
- sizeof (CORBA::WChar),
- sizeof (void *)));
-
- env.exception (new CORBA::INITIALIZE (CORBA::COMPLETED_NO));
- return 0;
- }
-
- // Initialize the ORB Core instance.
- int result = TAO_ORB_Core_instance ()->init (argc, (char **)argv);
-
- // check for errors and return 0 if error.
- if (result == -1)
- {
- env.exception (new CORBA::BAD_PARAM (CORBA::COMPLETED_NO));
- return 0;
- }
-
- return TAO_ORB_Core_instance()->orb ();
-}
-
-#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
-template class TAO_Unbounded_Sequence<CORBA::Octet>;
-#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
-#pragma instantiate TAO_Unbounded_Sequence<CORBA::Octet>
-#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/TAO/tao/factories.h b/TAO/tao/factories.h
deleted file mode 100644
index 496dae62ed2..00000000000
--- a/TAO/tao/factories.h
+++ /dev/null
@@ -1,141 +0,0 @@
-// This may look like C, but it's really -*- C++ -*-
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO
-//
-// = FILENAME
-// factories.h
-//
-// = AUTHOR
-// Chris Cleeland
-//
-// = VERSION
-// $Id$
-// ============================================================================
-
-#if !defined (TAO_FACTORIES_H)
-# define TAO_FACTORIES_H
-
-#if 0
-# include "ace/SOCK_Acceptor.h"
-# include "ace/SOCK_Connector.h"
-# include "ace/Strategies_T.h"
-# include "ace/Connector.h"
-# include "ace/Synch.h"
-
-# include "tao/params.h"
-# include "tao/connect.h"
-# include "tao/objtable.h"
-#endif
-
-class TAO_Client_Connection_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
- // = TITLE
- // <Svc_Handler> used on the client side and returned
- // by the <TAO_Client_Factory::CONNECTOR>.
-{
-public:
- TAO_Client_Connection_Handler (ACE_Thread_Manager* = 0);
- // Do-nothing constructor
-
- virtual int open (void*);
- // Initialization hook
-
- void in_use (CORBA::Boolean);
- // Set the in-use flag.
-
- CORBA::Boolean in_use (void);
- // Return state of the in-use flag.
-
-private:
- CORBA::Boolean in_use_;
- // True value indicates that something is using this handler.
-};
-
-class TAO_Client_Factory
- // = TITLE
- // Abstract factory used by the client to turn out various
- // strategies used on the client side.
-{
-public:
- typedef ACE_Strategy_Connector<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR>
- CONNECTOR;
- typedef ACE_NOOP_Creation_Strategy<TAO_Client_Connection_Handler>
- NULL_CREATION_STRATEGY;
- typedef ACE_Cached_Connect_Strategy<TAO_Client_Connection_Handler,
- ACE_SOCK_CONNECTOR,
- ACE_SYNCH_RW_MUTEX>
- CACHED_CONNECT_STRATEGY;
-
-#if defined (TAO_HAS_CLIENT_CONCURRENCY)
- CONCURRENCY_STRATEGY *concurrency_strategy (void);
-#endif
-
- CONNECTOR *connector (void);
- // Return a pointer to a connector using appropriate strategies.
-
- TAO_Client_Factory (void);
- ~TAO_Client_Factory (void);
-
-private:
-#if defined (TAO_HAS_CLIENT_CONCURRENCY)
- CONCURRENCY_STRATEGY *concurrency_strategy_;
-#endif
- CONNECTOR connector_;
- NULL_CREATION_STRATEGY null_creation_strategy_;
- CACHED_CONNECT_STRATEGY caching_connect_strategy_;
-};
-
-class TAO_Server_Factory
- // = TITLE
- // Abstract factory used by the server side to turn out various
- // strategies of special utility to it.
-{
-public:
- // = SERVER-SIDE
- typedef ACE_Creation_Strategy<TAO_OA_Connection_Handler> CREATION_STRATEGY;
- typedef ACE_Accept_Strategy<TAO_OA_Connection_Handler, ACE_SOCK_ACCEPTOR> ACCEPT_STRATEGY;
- typedef ACE_Concurrency_Strategy<TAO_OA_Connection_Handler> CONCURRENCY_STRATEGY;
- typedef ACE_Scheduling_Strategy<TAO_OA_Connection_Handler> SCHEDULING_STRATEGY;
-
- CREATION_STRATEGY *creation_strategy (void);
- // return concrete creation strategy
-
- ACCEPT_STRATEGY *accept_strategy (void);
- // return concrete acceptor strategy
-
- CONCURRENCY_STRATEGY *concurrency_strategy (void);
- // return the concurrency strategy used
-
- SCHEDULING_STRATEGY *scheduling_strategy (void);
- // return the scheduling strategy used
-
- TAO_Object_Table *object_lookup_strategy (void);
- // return the concrete object lookup strategy
-
- TAO_Server_Factory (void);
- // constructor
-
-private:
- // = COMMON
- ACE_Thread_Strategy<TAO_OA_Connection_Handler> threaded_strategy_;
- // The threaded strategy used for passively establishing connections.
- ACE_Reactive_Strategy<TAO_OA_Connection_Handler> reactive_strategy_;
- // A strategy for passively establishing connections which utilizes the Reactor.
-
- // = SERVER
- CONCURRENCY_STRATEGY *concurrency_strategy_;
- // concrete concurrency strategy
-
- TAO_Object_Table *objtable_;
- // instance of object table
-#if 0
- // Someday we'll need these!
- CREATION_STRATEGY *creation_strategy_;
- ACCEPT_STRATEGY *accept_strategy_;
- SCHEDULING_STRATEGY *scheduling_strategy_;
-#endif
-};
-
-#endif /* TAO_FACTORIES_H */