From: Thierry Parmentelat <thierry.parmentelat@inria.fr>
Date: Thu, 11 Apr 2013 12:15:04 +0000 (+0200)
Subject: implements sending update queries - and returns a sensible code for other query actions
X-Git-Tag: myslice-0.2-1~157
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=fe88de0f7a2d45176733e22f49b5b5686dd5ec17;p=unfold.git

implements sending update queries - and returns a sensible code for other query actions
---

diff --git a/manifold/manifoldapi.py b/manifold/manifoldapi.py
index 74aaf8c9..86471eab 100644
--- a/manifold/manifoldapi.py
+++ b/manifold/manifoldapi.py
@@ -60,11 +60,14 @@ class ManifoldAPI:
                 return ManifoldResult (code=ManifoldResult.UNKNOWN_ERROR, output="%s"%error)
         return func
 
-    def send_manifold_query (self, manifold_query):
-        (action,subject)= (manifold_query.action,manifold_query.subject)
+    def send_manifold_query (self, query):
+        (action,subject)= (query.action,query.subject)
         if action=='get':
             # use self.Get rather than self.server.Get so we catch exceptions as per __getattr__
-            return self.Get(subject, manifold_query.filters, {}, manifold_query.fields)
-        # xxx...
+            return self.Get(subject, query.filters, query.timestamp, query.fields)
+        if action=='update':
+            return self.Update(subject, query.filters, query.params, query.fields)
         else:
-            print "WARNING: ManifoldAPI.send_manifold_query: only 'get' implemented for now"
+            warning="WARNING: ManifoldAPI.send_manifold_query: %s not implemented for now"%action
+            print warning
+            return ManifoldResult(code=ManifoldCode.NOT_IMPLEMENTED, output=warning)
diff --git a/manifold/manifoldresult.py b/manifold/manifoldresult.py
index c99d861e..fcda3adc 100644
--- a/manifold/manifoldresult.py
+++ b/manifold/manifoldresult.py
@@ -5,7 +5,8 @@ def enum(*sequential, **named):
 ManifoldCode = enum (
     SUCCESS=0,
     SESSION_EXPIRED=1,
-    OTHERS=2,
+    NOT_IMPLEMENTED=2,
+    OTHERS=3,
 )
 
 # being a dict this can be used with json.dumps