summaryrefslogtreecommitdiff
path: root/cpp/demo/IceGrid/icebox/HelloServiceI.cpp
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2007-12-04 19:04:37 -0500
committerBernard Normier <bernard@zeroc.com>2007-12-04 19:04:37 -0500
commit8acb2a1032ace3e07f4939e9c7ef7b449f8b50b3 (patch)
treeeb8d43058cb47b13693880e622715f6ff13e0318 /cpp/demo/IceGrid/icebox/HelloServiceI.cpp
parentFix to not retry batch requests (even idempotent ones) (diff)
downloadice-8acb2a1032ace3e07f4939e9c7ef7b449f8b50b3.tar.bz2
ice-8acb2a1032ace3e07f4939e9c7ef7b449f8b50b3.tar.xz
ice-8acb2a1032ace3e07f4939e9c7ef7b449f8b50b3.zip
New IceGrid/icebox demos and various IceBox fixes
Diffstat (limited to 'cpp/demo/IceGrid/icebox/HelloServiceI.cpp')
-rw-r--r--cpp/demo/IceGrid/icebox/HelloServiceI.cpp46
1 files changed, 46 insertions, 0 deletions
diff --git a/cpp/demo/IceGrid/icebox/HelloServiceI.cpp b/cpp/demo/IceGrid/icebox/HelloServiceI.cpp
new file mode 100644
index 00000000000..252c5722b8a
--- /dev/null
+++ b/cpp/demo/IceGrid/icebox/HelloServiceI.cpp
@@ -0,0 +1,46 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2007 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#include <Ice/Ice.h>
+#include <HelloServiceI.h>
+#include <HelloI.h>
+
+using namespace std;
+
+extern "C"
+{
+
+//
+// Factory function
+//
+HELLO_API IceBox::Service*
+create(Ice::CommunicatorPtr communicator)
+{
+ return new HelloServiceI;
+}
+
+}
+
+void
+HelloServiceI::start(const string& name, const Ice::CommunicatorPtr& communicator, const Ice::StringSeq& args)
+{
+ _adapter = communicator->createObjectAdapter("Hello-" + name);
+
+
+ string helloIdentity = communicator->getProperties()->getProperty("Hello.Identity");
+
+ _adapter->add(new HelloI(name), communicator->stringToIdentity(helloIdentity));
+ _adapter->activate();
+}
+
+void
+HelloServiceI::stop()
+{
+ _adapter->destroy();
+}