summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Naming/Flat_File_Persistence.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Naming/Flat_File_Persistence.h')
-rw-r--r--TAO/orbsvcs/orbsvcs/Naming/Flat_File_Persistence.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Naming/Flat_File_Persistence.h b/TAO/orbsvcs/orbsvcs/Naming/Flat_File_Persistence.h
new file mode 100644
index 00000000000..36b2adb5f9c
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/Naming/Flat_File_Persistence.h
@@ -0,0 +1,70 @@
+// $Id$
+// ============================================================================
+//
+// = LIBRARY
+// cos
+//
+// = FILENAME
+//
+//
+// = AUTHOR
+//
+//
+// ============================================================================
+
+#ifndef TAO_FLAT_FILE_PERSISTENCE_H
+#define TAO_FLAT_FILE_PERSISTENCE_H
+
+#include "Storable.h"
+#include "tao/corba.h"
+
+//------------------------------------------------------------------------
+// The Flat File concrete classes
+//------------------------------------------------------------------------
+class TAO_NS_FlatFileWriter : public TAO_Writer_Base
+{
+public:
+
+ TAO_NS_FlatFileWriter();
+ virtual ~TAO_NS_FlatFileWriter();
+
+ virtual int open(const char * filename);
+ virtual int close();
+
+ virtual TAO_Writer_Base& operator << (const TAO_NS_Persistence_Header &header);
+ virtual TAO_Writer_Base& operator << (const TAO_NS_Persistence_Record &record);
+
+private:
+ FILE* fout_;
+ ACE_CString filename_;
+};
+
+class TAO_NS_FlatFileReader : public TAO_Reader_Base
+{
+public:
+
+ TAO_NS_FlatFileReader ();
+ virtual ~TAO_NS_FlatFileReader();
+
+ virtual int open(const char * filename);
+ virtual int close();
+
+ virtual TAO_Reader_Base& operator >> (TAO_NS_Persistence_Header &header);
+ virtual TAO_Reader_Base& operator >> (TAO_NS_Persistence_Record &record);
+
+private:
+ FILE* fin_;
+};
+
+
+class TAO_NS_FlatFileFactory : public TAO_Naming_Service_Persistence_Factory
+{
+public:
+ // Factory Methods
+
+ virtual TAO_Reader_Base *create_reader();
+ virtual TAO_Writer_Base *create_writer();
+};
+
+
+#endif