summaryrefslogtreecommitdiff
path: root/ACE/TAO/orbsvcs/orbsvcs/Naming/Persistent_Entries.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/TAO/orbsvcs/orbsvcs/Naming/Persistent_Entries.cpp')
-rw-r--r--ACE/TAO/orbsvcs/orbsvcs/Naming/Persistent_Entries.cpp205
1 files changed, 205 insertions, 0 deletions
diff --git a/ACE/TAO/orbsvcs/orbsvcs/Naming/Persistent_Entries.cpp b/ACE/TAO/orbsvcs/orbsvcs/Naming/Persistent_Entries.cpp
new file mode 100644
index 00000000000..a1e960642ba
--- /dev/null
+++ b/ACE/TAO/orbsvcs/orbsvcs/Naming/Persistent_Entries.cpp
@@ -0,0 +1,205 @@
+
+//=============================================================================
+/**
+ * @file Persistent_Entries.cpp
+ *
+ * $Id$
+ *
+ * @author Marina Spivak <marina@cs.wustl.edu>
+ */
+//=============================================================================
+
+
+#include "orbsvcs/Naming/Persistent_Entries.h"
+#include "ace/SString.h"
+
+TAO_BEGIN_VERSIONED_NAMESPACE_DECL
+
+TAO_Persistent_IntId::TAO_Persistent_IntId (void)
+ : ref_ (0),
+ type_ (CosNaming::nobject)
+{
+}
+
+TAO_Persistent_IntId::TAO_Persistent_IntId (char * obj_ref,
+ CosNaming::BindingType type)
+ : ref_ (obj_ref),
+ type_ (type)
+{
+}
+
+TAO_Persistent_IntId::TAO_Persistent_IntId (const TAO_Persistent_IntId &rhs)
+{
+ ref_ = rhs.ref_;
+ type_ = rhs.type_;
+}
+
+TAO_Persistent_IntId::~TAO_Persistent_IntId (void)
+{
+}
+
+void
+TAO_Persistent_IntId::operator= (const TAO_Persistent_IntId &rhs)
+{
+ // check for self assignment.
+ if (&rhs == this)
+ return;
+
+ type_ = rhs.type_;
+ ref_ = rhs.ref_;
+}
+
+TAO_Persistent_ExtId::TAO_Persistent_ExtId (void)
+ : id_ (0),
+ kind_ (0)
+{
+}
+
+TAO_Persistent_ExtId::TAO_Persistent_ExtId (const char *id,
+ const char *kind)
+ : id_ (id),
+ kind_ (kind)
+
+{
+}
+
+TAO_Persistent_ExtId::TAO_Persistent_ExtId (const TAO_Persistent_ExtId &rhs)
+{
+ id_ = rhs.id_;
+ kind_ = rhs.kind_;
+}
+
+TAO_Persistent_ExtId::~TAO_Persistent_ExtId (void)
+{
+}
+
+void
+TAO_Persistent_ExtId::operator= (const TAO_Persistent_ExtId &rhs)
+{
+ // Check for self assignment.
+ if (&rhs == this)
+ return;
+
+ id_ = rhs.id_;
+ kind_ = rhs.kind_;
+}
+
+bool
+TAO_Persistent_ExtId::operator== (const TAO_Persistent_ExtId &rhs) const
+{
+ return (ACE_OS::strcmp (id_, rhs.id_) == 0)
+ && (ACE_OS::strcmp (kind_, rhs.kind_) == 0);
+}
+
+bool
+TAO_Persistent_ExtId::operator!= (const TAO_Persistent_ExtId &rhs) const
+{
+ return (ACE_OS::strcmp (id_, rhs.id_) != 0)
+ || (ACE_OS::strcmp (kind_, rhs.kind_) != 0);
+}
+
+u_long
+TAO_Persistent_ExtId::hash (void) const
+{
+ ACE_CString temp (id_);
+ temp += kind_;
+
+ return temp.hash ();
+}
+
+const char *
+TAO_Persistent_ExtId::id (void)
+{
+ return id_;
+}
+
+const char *
+TAO_Persistent_ExtId::kind (void)
+{
+ return kind_;
+}
+
+TAO_Persistent_Index_IntId::TAO_Persistent_Index_IntId (void)
+ : counter_ (0),
+ hash_map_ (0)
+{
+}
+
+TAO_Persistent_Index_IntId::TAO_Persistent_Index_IntId (ACE_UINT32 *counter,
+ ACE_Hash_Map_With_Allocator<TAO_Persistent_ExtId,
+ TAO_Persistent_IntId> * hash_map)
+ : counter_ (counter),
+ hash_map_ (hash_map)
+{
+}
+
+TAO_Persistent_Index_IntId::TAO_Persistent_Index_IntId (const TAO_Persistent_Index_IntId &rhs)
+{
+ counter_ = rhs.counter_;
+ hash_map_ = rhs.hash_map_;
+}
+
+TAO_Persistent_Index_IntId::~TAO_Persistent_Index_IntId (void)
+{
+}
+
+void
+TAO_Persistent_Index_IntId::operator= (const TAO_Persistent_Index_IntId &rhs)
+{
+ // check for self assignment.
+ if (&rhs == this)
+ return;
+
+ counter_ = rhs.counter_;
+ hash_map_ = rhs.hash_map_;
+}
+
+TAO_Persistent_Index_ExtId::TAO_Persistent_Index_ExtId (void)
+ : poa_id_ (0)
+{
+}
+
+TAO_Persistent_Index_ExtId::TAO_Persistent_Index_ExtId (const char *poa_id)
+ : poa_id_ (poa_id)
+{
+}
+
+TAO_Persistent_Index_ExtId::TAO_Persistent_Index_ExtId (const TAO_Persistent_Index_ExtId &rhs)
+{
+ poa_id_ = rhs.poa_id_;
+}
+
+TAO_Persistent_Index_ExtId::~TAO_Persistent_Index_ExtId (void)
+{
+}
+
+void
+TAO_Persistent_Index_ExtId::operator= (const TAO_Persistent_Index_ExtId &rhs)
+{
+ // Check for self assignment.
+ if (&rhs == this)
+ return;
+
+ poa_id_ = rhs.poa_id_;
+}
+
+bool
+TAO_Persistent_Index_ExtId::operator== (const TAO_Persistent_Index_ExtId &rhs) const
+{
+ return (ACE_OS::strcmp (poa_id_, rhs.poa_id_) == 0);
+}
+
+bool
+TAO_Persistent_Index_ExtId::operator!= (const TAO_Persistent_Index_ExtId &rhs) const
+{
+ return (ACE_OS::strcmp (poa_id_, rhs.poa_id_) != 0);
+}
+
+u_long
+TAO_Persistent_Index_ExtId::hash (void) const
+{
+ ACE_CString temp (poa_id_);
+ return temp.hash ();
+}
+
+TAO_END_VERSIONED_NAMESPACE_DECL