summaryrefslogtreecommitdiff
path: root/cpp/src/IceStorm/Util.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceStorm/Util.h')
-rw-r--r--cpp/src/IceStorm/Util.h36
1 files changed, 29 insertions, 7 deletions
diff --git a/cpp/src/IceStorm/Util.h b/cpp/src/IceStorm/Util.h
index 8a5dc0ea195..5b2ff1ef642 100644
--- a/cpp/src/IceStorm/Util.h
+++ b/cpp/src/IceStorm/Util.h
@@ -10,24 +10,46 @@
#ifndef UTIL_H
#define UTIL_H
-#include <string>
-
#include <Ice/Ice.h>
-
-#include <Freeze/Freeze.h>
+#include <IceDB/IceDB.h>
#include <IceStorm/LLURecord.h>
+#include <IceStorm/SubscriberRecord.h>
+
+namespace IceStorm
+{
+
+//
+// Forward declarations.
+//
+class Instance;
+typedef IceUtil::Handle<Instance> InstancePtr;
+
+typedef IceDB::Dbi<IceStorm::SubscriberRecordKey, IceStorm::SubscriberRecord, IceDB::IceContext, Ice::OutputStream>
+ SubscriberMap;
+typedef IceDB::Dbi<std::string, IceStormElection::LogUpdate, IceDB::IceContext, Ice::OutputStream> LLUMap;
+
+const std::string lluDbKey = "_manager";
+
+}
namespace IceStormInternal
{
std::string
+identityToTopicName(const Ice::Identity&);
+
+Ice::Identity
+nameToIdentity(const IceStorm::InstancePtr&, const std::string&);
+
+std::string
describeEndpoints(const Ice::ObjectPrx&);
-void
-putLLU(const Freeze::ConnectionPtr&, const IceStormElection::LogUpdate&);
+int
+compareSubscriberRecordKey(const MDB_val* v1, const MDB_val* v2);
IceStormElection::LogUpdate
-getLLU(const Freeze::ConnectionPtr&);
+getIncrementedLLU(const IceDB::ReadWriteTxn&, IceStorm::LLUMap&);
}
+
#endif