From 24d6d3e2f20f83b66451bdb21a6445fb1aed71c9 Mon Sep 17 00:00:00 2001
From: Michael Hanselmann <hansmi@google.com>
Date: Mon, 6 Dec 2010 22:17:49 +0100
Subject: [PATCH] objects: Add definitions for query requests and responses
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Also update description of QueryFieldDefinition.name.

Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: RenΓ© Nussbaumer <rn@google.com>
---
 lib/objects.py | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 46 insertions(+), 1 deletion(-)

diff --git a/lib/objects.py b/lib/objects.py
index 343c21820..06a8dc2c5 100644
--- a/lib/objects.py
+++ b/lib/objects.py
@@ -1380,7 +1380,7 @@ class ConfdReply(ConfigObject):
 class QueryFieldDefinition(ConfigObject):
   """Object holding a query field definition.
 
-  @ivar name: Field name as a regular expression
+  @ivar name: Field name
   @ivar title: Human-readable title
   @ivar kind: Field type
 
@@ -1392,6 +1392,51 @@ class QueryFieldDefinition(ConfigObject):
     ]
 
 
+class QueryRequest(ConfigObject):
+  """Object holding a query request.
+
+  """
+  __slots__ = [
+    "what",
+    "fields",
+    "filter",
+    ]
+
+
+class QueryResponse(ConfigObject):
+  """Object holding the response to a query.
+
+  @ivar fields: List of L{QueryFieldDefinition} objects
+  @ivar data: Requested data
+
+  """
+  __slots__ = [
+    "fields",
+    "data",
+    ]
+
+
+class QueryFieldsRequest(ConfigObject):
+  """Object holding a request for querying available fields.
+
+  """
+  __slots__ = [
+    "what",
+    "fields",
+    ]
+
+
+class QueryFieldsResponse(ConfigObject):
+  """Object holding the response to a query for fields.
+
+  @ivar fields: List of L{QueryFieldDefinition} objects
+
+  """
+  __slots__ = [
+    "fields",
+    ]
+
+
 class SerializableConfigParser(ConfigParser.SafeConfigParser):
   """Simple wrapper over ConfigParse that allows serialization.
 
-- 
GitLab