Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/olpc/datastore/datastore.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/olpc/datastore/datastore.py')
-rw-r--r--src/olpc/datastore/datastore.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/olpc/datastore/datastore.py b/src/olpc/datastore/datastore.py
index f37bff3..91bdb4a 100644
--- a/src/olpc/datastore/datastore.py
+++ b/src/olpc/datastore/datastore.py
@@ -244,9 +244,9 @@ class DataStore(dbus.service.Object):
#@utils.sanitize_dbus
@dbus.service.method(DS_DBUS_INTERFACE,
- in_signature='a{sv}',
+ in_signature='a{sv}as',
out_signature='aa{sv}u')
- def find(self, query=None, **kwargs):
+ def find(self, query=None, properties=None, **kwargs):
"""find(query)
takes a dict of parameters and returns data in the following
format
@@ -354,6 +354,11 @@ class DataStore(dbus.service.Object):
props['filename'] = filename
d.append(props)
+ if properties:
+ for name in props.keys():
+ if name not in properties:
+ del props[name]
+
if limit:
d = d[offset: offset+limit]