gairne/ahgdc — Issue #42: Make the Worker Thread a service that can communicate 
Author: gairne
Created: 2012-01-30 23:17:21+00:00
State: open

The worker should be made a service, in a separate thread.

The worker will directly communicate with the libjhgdc library. In the case the activity dies, it should be able to report current socket status and actions back to the new activity.

We may want two service threads
1) Communication thread to communicate current status to activity
2) Worker thread that performs connection, uploads, voting.

We only want one worker thread as the server can only handle one operation at a time.

We need to keep a list of actions. If we wish to cancel a connection, we need to kill the socket and create a new one.

Disallow uploads and voting until we are connected. Black out the playlist and upload tabs.
If we change server, pause file uploads and when we reconnect again, ask if we wish to recontinue.