summaryrefslogtreecommitdiff
path: root/py/demo/Ice/context/Server.py
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2014-07-18 11:42:16 -0230
committerDwayne Boone <dwayne@zeroc.com>2014-07-18 11:42:16 -0230
commit031821623646abf0e0689bb68c4f8d40d43a80f6 (patch)
tree4797c00f22a3886000b4950114b32d07925c4a3c /py/demo/Ice/context/Server.py
parent- Removed support for .NET CF 3.5, replaced with support for .NET (diff)
downloadice-031821623646abf0e0689bb68c4f8d40d43a80f6.tar.bz2
ice-031821623646abf0e0689bb68c4f8d40d43a80f6.tar.xz
ice-031821623646abf0e0689bb68c4f8d40d43a80f6.zip
ICE-5194 added demo for use of Ice request contexts
Diffstat (limited to 'py/demo/Ice/context/Server.py')
-rwxr-xr-xpy/demo/Ice/context/Server.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/py/demo/Ice/context/Server.py b/py/demo/Ice/context/Server.py
new file mode 100755
index 00000000000..afc955b3d5b
--- /dev/null
+++ b/py/demo/Ice/context/Server.py
@@ -0,0 +1,43 @@
+#!/usr/bin/env python
+# **********************************************************************
+#
+# Copyright (c) 2003-2014 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.
+#
+# **********************************************************************
+
+import sys, traceback, time, Ice
+
+Ice.loadSlice('Context.ice')
+Ice.updateModules()
+import Demo
+
+class ContextI(Demo.Context):
+ def call(self, current=None):
+ sys.stdout.write("Type = ")
+ if 'type' in current.ctx:
+ sys.stdout.write(current.ctx['type'])
+ else:
+ sys.stdout.write('None')
+ sys.stdout.write("\n")
+
+ def shutdown(self, current=None):
+ current.adapter.getCommunicator().shutdown()
+
+class Server(Ice.Application):
+ def run(self, args):
+ if len(args) > 1:
+ print(self.appName() + ": too many arguments")
+ return 1
+
+ adapter = self.communicator().createObjectAdapter("Context")
+ adapter.add(ContextI(), self.communicator().stringToIdentity("context"))
+ adapter.activate()
+ self.communicator().waitForShutdown()
+ return 0
+
+sys.stdout.flush()
+app = Server()
+sys.exit(app.main(sys.argv, "config.server"))