Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/olpc/datastore/indexstore.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/olpc/datastore/indexstore.py')
-rw-r--r--src/olpc/datastore/indexstore.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/olpc/datastore/indexstore.py b/src/olpc/datastore/indexstore.py
index 2ee3481..849c068 100644
--- a/src/olpc/datastore/indexstore.py
+++ b/src/olpc/datastore/indexstore.py
@@ -32,6 +32,7 @@ _PREFIX_UID = 'Q'
_PREFIX_ACTIVITY = 'A'
_PREFIX_ACTIVITY_ID = 'I'
_PREFIX_MIME_TYPE = 'M'
+_PREFIX_KEEP = 'K'
# Force a flush every _n_ changes to the db
_FLUSH_THRESHOLD = 20
@@ -81,6 +82,7 @@ class IndexStore(object):
document.add_term(_PREFIX_MIME_TYPE + properties.get('mime_type', ''))
document.add_term(_PREFIX_ACTIVITY_ID +
properties.get('activity_id', ''))
+ document.add_term(_PREFIX_KEEP + str(properties.get('keep', 0)))
document.add_value(_VALUE_UID, uid)
document.add_value(_VALUE_TIMESTAMP, str(properties['timestamp']))
@@ -187,6 +189,11 @@ class IndexStore(object):
query = Query(_PREFIX_ACTIVITY_ID + activity_id)
queries.append(query)
+ keep = query_dict.pop('keep', None)
+ if keep is not None:
+ query = Query(_PREFIX_KEEP + str(keep))
+ queries.append(query)
+
mime_type = query_dict.pop('mime_type', None)
if mime_type is not None:
mime_queries = []