Ok, let me jot some thoughts donw on this so we have it....

 * All monitoring should be done async, without polling. Ie. using signals and 
callback, not sleep(5); check_drives();
 * I think we can use gio.VolumeMonitor() to listen for connect/disconnect of 
volumes. Then we use gio.Volume.get_uuid() as the key in the 'storage' table.
 * I have not checked NetworkManager or ConnMan, but I am pretty sure that both 
provide some DBus API to get async  notifications when the connection goes away 
and comes up. We should use the key 'inet' to store the connectivity state in 
the 'storage' table.
 * All online subjects requiring a connection to be available, should have 
their storage attribute set to 'inet'

Implement storage monitor (devices and connectivity)
You received this bug notification because you are a member of
Zeitgeist-Engine, which is the registrant for Zeitgeist Framework.

Status in Zeitgeist Framework: Confirmed

Bug description:
This is a reminder bug.

We need to write a "storage monitor" that manage the various storage mediums we 
can have event subjects stored on. The storage monitor should write any changes 
back to the 'storage' table in the DB.

What we need to track is connection and disconnections of storage volumes 
(probably using gio) - ie. track whether or not files on USB thumb drives are 
available or not etc.  Also the network connection state should be updated in 
the storage table so that we can filter out remote files and website on request.

Mailing list: https://launchpad.net/~zeitgeist
Post to     : zeitgeist@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zeitgeist
More help   : https://help.launchpad.net/ListHelp

Reply via email to