summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordoccvs <doccvs@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-06-24 00:14:50 +0000
committerdoccvs <doccvs@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-06-24 00:14:50 +0000
commit4ab94fce61e32ef3e7c62f53e01cbdd0495bb351 (patch)
tree518f438db4b6bbb145d0bf2932ed75e07d924b89
parente9889f4a3c2b9ba5da695a23a390797069083b0a (diff)
downloadATCD-4ab94fce61e32ef3e7c62f53e01cbdd0495bb351.tar.gz
ChangeLogTag: Fri Jun 23 17:10:59 2000 Priyanka Gontla <pgontla@ece.uci.edu>
-rw-r--r--TAO/tao/ior_corbaloc/CORBALOC_Parser.cpp141
-rw-r--r--TAO/tao/ior_corbaloc/CORBALOC_Parser.h61
-rw-r--r--TAO/tao/ior_corbaloc/CORBALOC_Parser.i6
-rw-r--r--TAO/tao/ior_corbaloc/Makefile217
-rw-r--r--TAO/tao/ior_corbaloc/ior_corbaloc_export.h40
-rw-r--r--TAO/tao/ior_file/FILE_Parser.cpp13
6 files changed, 472 insertions, 6 deletions
diff --git a/TAO/tao/ior_corbaloc/CORBALOC_Parser.cpp b/TAO/tao/ior_corbaloc/CORBALOC_Parser.cpp
new file mode 100644
index 00000000000..429cd6b60de
--- /dev/null
+++ b/TAO/tao/ior_corbaloc/CORBALOC_Parser.cpp
@@ -0,0 +1,141 @@
+// $Id$
+
+#include "CORBALOC_Parser.h"
+#include "tao/ior_dll/Object_Loader.h"
+#include "tao/Object.h"
+#include "tao/ORB.h"
+#include "tao/Exception.h"
+#include "tao/Environment.h"
+#include "ace/Read_Buffer.h"
+
+#if !defined(__ACE_INLINE__)
+#include "CORBALOC_Parser.i"
+#endif /* __ACE_INLINE__ */
+
+ACE_RCSID(tao, CORBALOC_Parser, "$Id$")
+
+TAO_CORBALOC_Parser::~TAO_CORBALOC_Parser (void)
+{
+}
+
+
+static const char corbaloc_prefix[] = "corbaloc:";
+
+int
+TAO_CORBALOC_Parser::match_prefix (const char *ior_string) const
+{
+ cout << "in match prefix" << endl;
+ return (ACE_OS::strncmp (ior_string,
+ corbaloc_prefix,
+ sizeof corbaloc_prefix - 1) == 0);
+}
+
+CORBA::Object_ptr
+TAO_CORBALOC_Parser::parse_string (const char *ior,
+ CORBA::ORB_ptr orb,
+ CORBA::Environment &ACE_TRY_ENV)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+
+ // Skip the prefix, we know it is there because this method in only
+ // called if <match_prefix> returns 1.
+ const char *corbaloc_name =
+ ior + sizeof corbaloc_prefix - 1;
+
+ cout << "After removing the prefix: the string is" << corbaloc_name
+ << endl;
+ // What does this function do ????
+ // First separates each <obj_addr> from the list of the obj_addr
+ // Then concatenates the obj. key to the end of each one and tries
+ // to find a binding .........
+ // First seperate ...
+
+ // Find the position where '/' seperator btn <obj_addr_list> and
+ // <key_string>
+
+ CORBA::ULong count_addr = 0;
+ CORBA::ULong pos = 0;
+ CORBA::Boolean start_key_string = 1;
+
+ cout << "It is coming here" << endl;
+
+ char *key_string = CORBA::string_alloc (sizeof (corbaloc_name));
+ char *key_stringPtr = key_string;
+
+
+ for (const char *i = corbaloc_name; *i != '\0'; ++i)
+ {
+ if (*i == ',')
+ {
+ // Increment the count of the addresses in the list
+ ++count_addr;
+ }
+
+ if (*i == '/' && *(i-1) != '/')
+ {
+ // This is the last addr and will not be terminated with a
+ // ',' ..but need to count it too.
+ ++count_addr;
+ start_key_string = 0;
+ }
+
+ if (start_key_string == 1)
+ {
+ ++pos;
+ }
+ else
+ {
+ *key_stringPtr = *i;
+ ++key_stringPtr;
+ }
+
+ }
+
+ cout << "The position of the seperation btn obj_list and key_string
+ is" << pos << endl;
+
+ // Copy the <obj_addr_list> to cloc_name.
+ char *cloc_name = CORBA::string_alloc (pos+1);
+ cloc_name = ACE_OS::strncpy (cloc_name, corbaloc_name, pos);
+
+ ACE_DEBUG ((LM_DEBUG, "The obj_addr_list is %s\n", cloc_name));
+
+ // Declare an array of addr.
+ char *addr [count_addr];
+
+ CORBA::ULong current_addr = 0;
+
+ addr [current_addr] = CORBA::string_alloc (pos);
+ addr [current_addr] = ACE_OS::strtok (cloc_name, ",");
+ addr [current_addr] = ACE_OS::strcat (addr [current_addr], key_string);
+ cout << "The addr[0] is " << addr [current_addr] << endl;
+
+ while ( addr [current_addr] != NULL)
+ {
+ ++current_addr;
+
+ addr [current_addr] = CORBA::string_alloc (pos);
+
+ // Now that presumably I have seperated the fields ... append the
+ // <key_string> at the end of each of them.
+ addr [current_addr] = ACE_OS::strcat (addr [current_addr], key_string);
+ addr [current_addr] = ACE_OS::strtok (NULL, ",");
+ ACE_DEBUG ((LM_DEBUG, "The obj_addr %d is %s\n", current_addr,
+ addr [current_addr]));
+
+ }
+
+
+ CORBA::Object_ptr object = CORBA::Object::_nil ();
+
+ return object;
+
+}
+
+ACE_FACTORY_DEFINE (TAO_IOR_CORBALOC, TAO_CORBALOC_Parser)
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/TAO/tao/ior_corbaloc/CORBALOC_Parser.h b/TAO/tao/ior_corbaloc/CORBALOC_Parser.h
new file mode 100644
index 00000000000..fe0637e5ab4
--- /dev/null
+++ b/TAO/tao/ior_corbaloc/CORBALOC_Parser.h
@@ -0,0 +1,61 @@
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO
+//
+// = FILENAME
+// CORBALOC_Parser.h
+//
+// = AUTHOR
+// Carlos O'Ryan (coryan@cs.wustl.edu)
+//
+// ============================================================================
+
+#ifndef TAO_CORBALOC_PARSER_H
+#define TAO_CORBALOC_PARSER_H
+#include "ace/pre.h"
+
+#include "tao/IOR_Parser.h"
+#include "ior_corbaloc_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+class TAO_IOR_CORBALOC_Export TAO_CORBALOC_Parser : public TAO_IOR_Parser
+{
+ // = TITLE
+ // Implements the <corbaloc:> IOR format
+ //
+ // = DESCRIPTION
+ // This class implements the <corbaloc:> IOR format.
+ // It is dynamically loaded by the ORB and used to parse the
+ // string to separate the individual <obj_addr> from the list of object
+ // addresses <obj_addr_list>.
+ //
+public:
+ TAO_CORBALOC_Parser (void);
+ // Constructor
+
+ virtual ~TAO_CORBALOC_Parser (void);
+ // The destructor
+
+ // = The IOR_Parser methods, please read the documentation in
+ // IOR_Parser.h
+ virtual int match_prefix (const char *ior_string) const;
+ virtual CORBA::Object_ptr parse_string (const char *ior,
+ CORBA::ORB_ptr orb,
+ CORBA::Environment &)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined (__ACE_INLINE__)
+# include "CORBALOC_Parser.i"
+#endif /* __ACE_INLINE__ */
+
+ACE_FACTORY_DECLARE (TAO_IOR_CORBALOC, TAO_CORBALOC_Parser)
+
+#include "ace/post.h"
+#endif /* TAO_CORBALOC_PARSER_H */
diff --git a/TAO/tao/ior_corbaloc/CORBALOC_Parser.i b/TAO/tao/ior_corbaloc/CORBALOC_Parser.i
new file mode 100644
index 00000000000..679b6208536
--- /dev/null
+++ b/TAO/tao/ior_corbaloc/CORBALOC_Parser.i
@@ -0,0 +1,6 @@
+// $Id$
+
+ACE_INLINE
+TAO_CORBALOC_Parser::TAO_CORBALOC_Parser (void)
+{
+}
diff --git a/TAO/tao/ior_corbaloc/Makefile b/TAO/tao/ior_corbaloc/Makefile
new file mode 100644
index 00000000000..a821c4b9bd9
--- /dev/null
+++ b/TAO/tao/ior_corbaloc/Makefile
@@ -0,0 +1,217 @@
+#----------------------------------------------------------------------------
+#
+# $Id$
+#
+#----------------------------------------------------------------------------
+
+MAKEFILE = Makefile
+LIBNAME = libTAO_IOR_CORBALOC
+LIB = $(LIBNAME).a
+SHLIB = $(LIBNAME).$(SOEXT)
+
+ifndef TAO_ROOT
+TAO_ROOT = $(ACE_ROOT)/TAO
+endif
+
+# These are headers for things which are exported and must be
+# installed. (Currently not used).
+PUB_HDRS = \
+ CORBALOC_Parser
+FILES= \
+ CORBALOC_Parser
+
+LSRC = $(addsuffix .cpp,$(FILES))
+
+DEFS = $(addsuffix .h,$(PUB_HDRS))
+
+ACE_SHLIBS = -lACE
+
+#----------------------------------------------------------------------------
+# Include macros and targets
+#----------------------------------------------------------------------------
+
+include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU
+include $(TAO_ROOT)/rules.tao.GNU
+include $(ACE_ROOT)/include/makeinclude/macros.GNU
+include $(ACE_ROOT)/include/makeinclude/rules.common.GNU
+include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU
+include $(ACE_ROOT)/include/makeinclude/rules.lib.GNU
+include $(ACE_ROOT)/include/makeinclude/rules.local.GNU
+include $(TAO_ROOT)/taoconfig.mk
+
+#----------------------------------------------------------------------------
+# Local targets (and local hacks)
+#----------------------------------------------------------------------------
+
+#----------------------------------------------------------------------------
+# Dependencies
+#----------------------------------------------------------------------------
+
+# DO NOT DELETE THIS LINE -- g++dep uses it.
+# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
+
+
+.obj/CORBALOC_Parser.o .obj/CORBALOC_Parser.so .shobj/CORBALOC_Parser.o .shobj/CORBALOC_Parser.so: CORBALOC_Parser.cpp CORBALOC_Parser.h \
+ $(ACE_ROOT)/ace/pre.h \
+ $(TAO_ROOT)/tao/IOR_Parser.h \
+ $(TAO_ROOT)/tao/corbafwd.h \
+ $(ACE_ROOT)/ace/CDR_Stream.h \
+ $(ACE_ROOT)/ace/Message_Block.h \
+ $(ACE_ROOT)/ace/ACE.h \
+ $(ACE_ROOT)/ace/OS.h \
+ $(ACE_ROOT)/ace/post.h \
+ $(ACE_ROOT)/ace/ace_wchar.h \
+ $(ACE_ROOT)/ace/ACE_export.h \
+ $(ACE_ROOT)/ace/svc_export.h \
+ $(ACE_ROOT)/ace/OS_Dirent.h \
+ $(ACE_ROOT)/ace/OS_Export.h \
+ $(ACE_ROOT)/ace/OS_Dirent.inl \
+ $(ACE_ROOT)/ace/OS_String.h \
+ $(ACE_ROOT)/ace/OS_String.inl \
+ $(ACE_ROOT)/ace/OS_Memory.h \
+ $(ACE_ROOT)/ace/OS_Memory.inl \
+ $(ACE_ROOT)/ace/OS_TLI.h \
+ $(ACE_ROOT)/ace/OS_TLI.inl \
+ $(ACE_ROOT)/ace/Min_Max.h \
+ $(ACE_ROOT)/ace/streams.h \
+ $(ACE_ROOT)/ace/Basic_Types.h \
+ $(ACE_ROOT)/ace/Basic_Types.i \
+ $(ACE_ROOT)/ace/Trace.h \
+ $(ACE_ROOT)/ace/OS.i \
+ $(ACE_ROOT)/ace/Log_Msg.h \
+ $(ACE_ROOT)/ace/Log_Record.h \
+ $(ACE_ROOT)/ace/Log_Priority.h \
+ $(ACE_ROOT)/ace/Log_Record.i \
+ $(ACE_ROOT)/ace/ACE.i \
+ $(ACE_ROOT)/ace/Malloc.h \
+ $(ACE_ROOT)/ace/Malloc_Base.h \
+ $(ACE_ROOT)/ace/Based_Pointer_T.h \
+ $(ACE_ROOT)/ace/Based_Pointer_T.i \
+ $(ACE_ROOT)/ace/Based_Pointer_T.cpp \
+ $(ACE_ROOT)/ace/Based_Pointer_Repository.h \
+ $(ACE_ROOT)/ace/Singleton.h \
+ $(ACE_ROOT)/ace/Synch.h \
+ $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \
+ $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \
+ $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \
+ $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
+ $(ACE_ROOT)/ace/Synch.i \
+ $(ACE_ROOT)/ace/Synch_T.h \
+ $(ACE_ROOT)/ace/Event_Handler.h \
+ $(ACE_ROOT)/ace/Event_Handler.i \
+ $(ACE_ROOT)/ace/Synch_T.i \
+ $(ACE_ROOT)/ace/Thread.h \
+ $(ACE_ROOT)/ace/Thread.i \
+ $(ACE_ROOT)/ace/Atomic_Op.i \
+ $(ACE_ROOT)/ace/Synch_T.cpp \
+ $(ACE_ROOT)/ace/Singleton.i \
+ $(ACE_ROOT)/ace/Singleton.cpp \
+ $(ACE_ROOT)/ace/Object_Manager.h \
+ $(ACE_ROOT)/ace/Object_Manager.i \
+ $(ACE_ROOT)/ace/Managed_Object.h \
+ $(ACE_ROOT)/ace/Managed_Object.i \
+ $(ACE_ROOT)/ace/Managed_Object.cpp \
+ $(ACE_ROOT)/ace/Malloc.i \
+ $(ACE_ROOT)/ace/Malloc_T.h \
+ $(ACE_ROOT)/ace/Free_List.h \
+ $(ACE_ROOT)/ace/Free_List.i \
+ $(ACE_ROOT)/ace/Free_List.cpp \
+ $(ACE_ROOT)/ace/Malloc_T.i \
+ $(ACE_ROOT)/ace/Malloc_T.cpp \
+ $(ACE_ROOT)/ace/Memory_Pool.h \
+ $(ACE_ROOT)/ace/Signal.h \
+ $(ACE_ROOT)/ace/Containers.h \
+ $(ACE_ROOT)/ace/Containers.i \
+ $(ACE_ROOT)/ace/Containers_T.h \
+ $(ACE_ROOT)/ace/Containers_T.i \
+ $(ACE_ROOT)/ace/Containers_T.cpp \
+ $(ACE_ROOT)/ace/Signal.i \
+ $(ACE_ROOT)/ace/Mem_Map.h \
+ $(ACE_ROOT)/ace/Mem_Map.i \
+ $(ACE_ROOT)/ace/Memory_Pool.i \
+ $(ACE_ROOT)/ace/Message_Block.i \
+ $(ACE_ROOT)/ace/Message_Block_T.h \
+ $(ACE_ROOT)/ace/Message_Block_T.i \
+ $(ACE_ROOT)/ace/Message_Block_T.cpp \
+ $(ACE_ROOT)/ace/SString.h \
+ $(ACE_ROOT)/ace/SString.i \
+ $(ACE_ROOT)/ace/CDR_Stream.i \
+ $(TAO_ROOT)/tao/try_macros.h \
+ $(TAO_ROOT)/tao/orbconf.h \
+ $(ACE_ROOT)/ace/CORBA_macros.h \
+ $(TAO_ROOT)/tao/varbase.h \
+ $(TAO_ROOT)/tao/corbafwd.i \
+ $(ACE_ROOT)/ace/Service_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.i \
+ $(ACE_ROOT)/ace/Service_Object.i \
+ $(TAO_ROOT)/tao/IOR_Parser.i \
+ ior_corbaloc_export.h CORBALOC_Parser.i \
+ $(TAO_ROOT)/tao/ior_dll/Object_Loader.h \
+ $(TAO_ROOT)/tao/ior_dll/ior_dll_export.h \
+ $(TAO_ROOT)/tao/ior_dll/Object_Loader.i \
+ $(TAO_ROOT)/tao/Object.h \
+ $(TAO_ROOT)/tao/Object.i \
+ $(TAO_ROOT)/tao/ORB.h \
+ $(TAO_ROOT)/tao/Exception.h \
+ $(TAO_ROOT)/tao/Exception.i \
+ $(TAO_ROOT)/tao/IOR_LookupTable.h \
+ $(ACE_ROOT)/ace/Hash_Map_Manager.h \
+ $(ACE_ROOT)/ace/Functor.h \
+ $(ACE_ROOT)/ace/Functor.i \
+ $(ACE_ROOT)/ace/Functor_T.h \
+ $(ACE_ROOT)/ace/Functor_T.i \
+ $(ACE_ROOT)/ace/Functor_T.cpp \
+ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \
+ $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
+ $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
+ $(ACE_ROOT)/ace/Service_Config.h \
+ $(ACE_ROOT)/ace/Service_Config.i \
+ $(ACE_ROOT)/ace/Reactor.h \
+ $(ACE_ROOT)/ace/Handle_Set.h \
+ $(ACE_ROOT)/ace/Handle_Set.i \
+ $(ACE_ROOT)/ace/Timer_Queue.h \
+ $(ACE_ROOT)/ace/Timer_Queue_T.h \
+ $(ACE_ROOT)/ace/Timer_Queue_T.i \
+ $(ACE_ROOT)/ace/Timer_Queue_T.cpp \
+ $(ACE_ROOT)/ace/Reactor.i \
+ $(ACE_ROOT)/ace/Reactor_Impl.h \
+ $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \
+ $(TAO_ROOT)/tao/Services.h \
+ $(TAO_ROOT)/tao/Sequence.h \
+ $(TAO_ROOT)/tao/Managed_Types.h \
+ $(TAO_ROOT)/tao/Managed_Types.i \
+ $(TAO_ROOT)/tao/Sequence.i \
+ $(TAO_ROOT)/tao/Sequence_T.h \
+ $(TAO_ROOT)/tao/Sequence_T.i \
+ $(TAO_ROOT)/tao/Sequence_T.cpp \
+ $(TAO_ROOT)/tao/Services.i \
+ $(TAO_ROOT)/tao/IORManipulation.h \
+ $(TAO_ROOT)/tao/IORS.h \
+ $(TAO_ROOT)/tao/IORC.h \
+ $(TAO_ROOT)/tao/Environment.h \
+ $(TAO_ROOT)/tao/Environment.i \
+ $(TAO_ROOT)/tao/CDR.h \
+ $(TAO_ROOT)/tao/CDR.i \
+ $(TAO_ROOT)/tao/IORC.i \
+ $(TAO_ROOT)/tao/Servant_Base.h \
+ $(TAO_ROOT)/tao/POAC.h \
+ $(TAO_ROOT)/tao/PolicyC.h \
+ $(TAO_ROOT)/tao/CurrentC.h \
+ $(TAO_ROOT)/tao/CurrentC.i \
+ $(TAO_ROOT)/tao/Encodable.h \
+ $(TAO_ROOT)/tao/PolicyC.i \
+ $(TAO_ROOT)/tao/POAC.i \
+ $(TAO_ROOT)/tao/Servant_Base.i \
+ $(TAO_ROOT)/tao/IORS.i \
+ $(TAO_ROOT)/tao/Interceptor.h \
+ $(TAO_ROOT)/tao/InterceptorC.h \
+ $(TAO_ROOT)/tao/IOPC.h \
+ $(TAO_ROOT)/tao/IOPC.i \
+ $(TAO_ROOT)/tao/InterceptorC.i \
+ $(TAO_ROOT)/tao/Interceptor.i \
+ $(TAO_ROOT)/tao/ORB.i \
+ $(ACE_ROOT)/ace/Read_Buffer.h \
+ $(ACE_ROOT)/ace/Read_Buffer.i
+
+# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/TAO/tao/ior_corbaloc/ior_corbaloc_export.h b/TAO/tao/ior_corbaloc/ior_corbaloc_export.h
new file mode 100644
index 00000000000..501e2e53530
--- /dev/null
+++ b/TAO/tao/ior_corbaloc/ior_corbaloc_export.h
@@ -0,0 +1,40 @@
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by
+// generate_export_file.pl
+// ------------------------------
+#if !defined (TAO_IOR_CORBALOC_EXPORT_H)
+#define TAO_IOR_CORBALOC_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if !defined (TAO_IOR_CORBALOC_HAS_DLL)
+#define TAO_IOR_CORBALOC_HAS_DLL 1
+#endif /* ! TAO_IOR_CORBALOC_HAS_DLL */
+
+#if defined (TAO_IOR_CORBALOC_HAS_DLL)
+# if (TAO_IOR_CORBALOC_HAS_DLL == 1)
+# if defined (TAO_IOR_CORBALOC_BUILD_DLL)
+# define TAO_IOR_CORBALOC_Export ACE_Proper_Export_Flag
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else
+# define TAO_IOR_CORBALOC_Export ACE_Proper_Import_Flag
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* TAO_IOR_CORBALOC_BUILD_DLL */
+# else
+# define TAO_IOR_CORBALOC_Export
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARATION(T)
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* ! TAO_IOR_CORBALOC_HAS_DLL == 1 */
+#else
+# define TAO_IOR_CORBALOC_Export
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARATION(T)
+# define TAO_IOR_CORBALOC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* TAO_IOR_CORBALOC_HAS_DLL */
+
+#endif /* TAO_IOR_CORBALOC_EXPORT_H */
+
+// End of auto generated file.
diff --git a/TAO/tao/ior_file/FILE_Parser.cpp b/TAO/tao/ior_file/FILE_Parser.cpp
index 400e7d526e9..b1182f4b81a 100644
--- a/TAO/tao/ior_file/FILE_Parser.cpp
+++ b/TAO/tao/ior_file/FILE_Parser.cpp
@@ -1,8 +1,9 @@
// $Id$
#include "FILE_Parser.h"
-#include "Object_Loader.h"
+#include "tao/ior_dll/Object_Loader.h"
#include "tao/Object.h"
+#include "tao/ORB.h"
#include "tao/Exception.h"
#include "tao/Environment.h"
#include "ace/Read_Buffer.h"
@@ -22,9 +23,9 @@ static const char file_prefix[] = "file:";
int
TAO_FILE_Parser::match_prefix (const char *ior_string) const
{
- return (ACE_OS::strncmp (str,
- file_prefix,
- sizeof file_prefix - 1) == 0);
+ return (ACE_OS::strncmp (ior_string,
+ ::file_prefix,
+ sizeof (::file_prefix) - 1) == 0);
}
CORBA::Object_ptr
@@ -36,7 +37,7 @@ TAO_FILE_Parser::parse_string (const char *ior,
// Skip the prefix, we know it is there because this method in only
// called if <match_prefix> returns 1.
const char *filename =
- ior + sizeof file_prefix - 1;
+ ior + sizeof (::file_prefix)+1;
FILE* file = ACE_OS::fopen (filename, "r");
@@ -53,7 +54,7 @@ TAO_FILE_Parser::parse_string (const char *ior,
CORBA::Object_ptr object = CORBA::Object::_nil ();
ACE_TRY
{
- object = this->string_to_object (string, ACE_TRY_ENV);
+ object = orb->string_to_object (string, ACE_TRY_ENV);
ACE_TRY_CHECK;
reader.alloc ()->free (string);