Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar/datastore
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2007-07-13 11:20:44 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2007-07-13 11:20:44 (GMT)
commit91f0eb52aa0cf09097cbe77c763d2e5a6b24b8de (patch)
treecf0b37139132070d9c21886dd9c2d5e798dc769a /sugar/datastore
parent7712dfe31a192cea85f0d399542a7c06857f62a8 (diff)
Adapt to datastore API changes.
Diffstat (limited to 'sugar/datastore')
-rw-r--r--sugar/datastore/datastore.py8
-rw-r--r--sugar/datastore/dbus_helpers.py11
2 files changed, 16 insertions, 3 deletions
diff --git a/sugar/datastore/datastore.py b/sugar/datastore/datastore.py
index 45af947..99fd3ac 100644
--- a/sugar/datastore/datastore.py
+++ b/sugar/datastore/datastore.py
@@ -16,6 +16,7 @@
# Boston, MA 02111-1307, USA.
import logging
+import time
import gobject
@@ -129,11 +130,16 @@ def get(object_id):
return ds_object
def create():
- return DSObject(object_id=None, metadata=DSMetadata(), file_path=None)
+ metadata = DSMetadata()
+ metadata['ctime'] = time.strftime('%Y-%m-%d')
+ metadata['mtime'] = metadata['ctime']
+ return DSObject(object_id=None, metadata=metadata, file_path=None)
def write(ds_object, reply_handler=None, error_handler=None):
logging.debug('datastore.write')
+ ds_object.metadata['mtime'] = time.strftime('%Y-%m-%d')
+
properties = ds_object.metadata.get_dictionary().copy()
# The title property should be sent as a 'text' property so it gets indexed
if properties.has_key('title'):
diff --git a/sugar/datastore/dbus_helpers.py b/sugar/datastore/dbus_helpers.py
index 2ce0090..a89320d 100644
--- a/sugar/datastore/dbus_helpers.py
+++ b/sugar/datastore/dbus_helpers.py
@@ -15,6 +15,7 @@
# License along with this library; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
+
import logging
import dbus
@@ -34,6 +35,8 @@ _data_store = dbus.Interface(_bus.get_object(DS_DBUS_SERVICE, DS_DBUS_PATH),
def create(properties, filename):
object_id = _data_store.create(dbus.Dictionary(properties), filename)
logging.debug('dbus_helpers.create: ' + object_id)
+ # TODO: take out this forced flush
+ _data_store.complete_indexing()
return object_id
def update(uid, properties, filename, reply_handler=None, error_handler=None):
@@ -44,14 +47,18 @@ def update(uid, properties, filename, reply_handler=None, error_handler=None):
error_handler=error_handler)
else:
_data_store.update(uid, dbus.Dictionary(properties), filename)
+ # TODO: take out this forced flush
+ _data_store.complete_indexing()
def delete(uid):
logging.debug('dbus_helpers.delete: %r' % uid)
_data_store.delete(uid)
-
+ # TODO: take out this forced flush
+ _data_store.complete_indexing()
+
def get_properties(uid):
logging.debug('dbus_helpers.get_properties: %s' % uid)
- return _data_store.get_properties(uid, [])
+ return _data_store.get_properties(uid)
def get_filename(uid):
filename = _data_store.get_filename(uid)