From 3175d3c1a22f05049cc45afa19c24cb3e3b19aae Mon Sep 17 00:00:00 2001
From: Christian Heller <c.heller@plomlompom.de>
Date: Thu, 19 Feb 2015 12:43:27 +0100
Subject: [PATCH] Server/py: Slightly extend capabilities of obey().

---
 plomrogue-server.py | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/plomrogue-server.py b/plomrogue-server.py
index d5949ad..3e0f892 100755
--- a/plomrogue-server.py
+++ b/plomrogue-server.py
@@ -50,10 +50,18 @@ def detect_atomic_leftover(path):
         raise SystemExit(msg)
 
 
-def obey(msg):
+def obey(cmd):
     """"""
-    print("Input: " + msg)
-    print(shlex.split(msg))
+    print("Input: " + cmd)
+    tokens = shlex.split(cmd)
+    if "QUIT" == tokens[0] and 1 == len(tokens):
+        raise SystemExit("received QUIT command")
+    elif "PING" == tokens[0] and 1 == len(tokens):
+        io_db["file_out"].write("PONG\n")
+    elif "MAKE_WORLD" == tokens[0] and 2 == len(tokens):
+        print("I would generate a new world now, if only I knew how.")
+    else:
+        print("Invalid command/argument, or bad number of tokens.")
 
 
 io_db = {}
@@ -78,8 +86,7 @@ try:
     elif os.access(path_savefile, os.F_OK):
         print(open(path_savefile, "r").read())
     else:
-        msg = "MAKE_WORLD " + str(int(time.time()))
-        obey(msg)
+        obey("MAKE_WORLD " + str(int(time.time())))
 except SystemExit as exit:
     print("ABORTING: " + exit.args[0])
 except:
-- 
2.30.2