From b60fcb6fe0340c8e25ef9a4413459f1691c055ec Mon Sep 17 00:00:00 2001
From: Michael Hanselmann <hansmi@google.com>
Date: Thu, 16 Dec 2010 18:48:10 +0100
Subject: [PATCH] query: Add wrapper for creating response object

It'll be used for querying locks.

Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
---
 lib/cmdlib.py |  5 +----
 lib/query.py  | 11 +++++++++++
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/lib/cmdlib.py b/lib/cmdlib.py
index f82b40dcf..e326842f3 100644
--- a/lib/cmdlib.py
+++ b/lib/cmdlib.py
@@ -588,10 +588,7 @@ class _QueryBase:
     """Collect data and execute query.
 
     """
-    data = self._GetQueryData(lu)
-
-    return objects.QueryResponse(data=self.query.Query(data),
-                                 fields=self.query.GetFields()).ToDict()
+    return query.GetQueryResponse(self.query, self._GetQueryData(lu))
 
   def OldStyleQuery(self, lu):
     """Collect data and execute query.
diff --git a/lib/query.py b/lib/query.py
index 56b603cc8..167a91261 100644
--- a/lib/query.py
+++ b/lib/query.py
@@ -235,6 +235,17 @@ def _PrepareFieldList(fields):
   return result
 
 
+def GetQueryResponse(query, ctx):
+  """Prepares the response for a query.
+
+  @type query: L{Query}
+  @param ctx: Data container, see L{Query.Query}
+
+  """
+  return objects.QueryResponse(data=query.Query(ctx),
+                               fields=query.GetFields()).ToDict()
+
+
 def QueryFields(fielddefs, selected):
   """Returns list of available fields.
 
-- 
GitLab