X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/2ab9496b6e6bba15751c28295e9fd06c06aade6a..a1f52fe73b3bdc9e365533a8ebc0b205fa5d7c5c:/src/com/owncloud/android/files/services/FileObserverService.java diff --git a/src/com/owncloud/android/files/services/FileObserverService.java b/src/com/owncloud/android/files/services/FileObserverService.java index c6753896..a90e551e 100644 --- a/src/com/owncloud/android/files/services/FileObserverService.java +++ b/src/com/owncloud/android/files/services/FileObserverService.java @@ -22,16 +22,6 @@ import java.io.File; import java.util.HashMap; import java.util.Map; -import com.owncloud.android.MainApp; -import com.owncloud.android.datamodel.FileDataStorageManager; -import com.owncloud.android.datamodel.OCFile; -import com.owncloud.android.db.ProviderMeta.ProviderTableMeta; -import com.owncloud.android.files.OwnCloudFileObserver; -import com.owncloud.android.operations.SynchronizeFileOperation; -import com.owncloud.android.utils.FileStorageUtils; -import com.owncloud.android.utils.Log_OC; - - import android.accounts.Account; import android.accounts.AccountManager; import android.app.Service; @@ -41,8 +31,18 @@ import android.content.Intent; import android.content.IntentFilter; import android.database.Cursor; import android.os.Binder; +import android.os.Handler; import android.os.IBinder; +import com.owncloud.android.MainApp; +import com.owncloud.android.datamodel.FileDataStorageManager; +import com.owncloud.android.datamodel.OCFile; +import com.owncloud.android.db.ProviderMeta.ProviderTableMeta; +import com.owncloud.android.files.OwnCloudFileObserver; +import com.owncloud.android.operations.SynchronizeFileOperation; +import com.owncloud.android.utils.FileStorageUtils; +import com.owncloud.android.utils.Log_OC; + public class FileObserverService extends Service { public final static int CMD_INIT_OBSERVED_LIST = 1; @@ -58,6 +58,7 @@ public class FileObserverService extends Service { private static Map mObserversMap; private static DownloadCompletedReceiverBis mDownloadReceiver; private IBinder mBinder = new LocalBinder(); + private Handler mHandler = new Handler(); public class LocalBinder extends Binder { FileObserverService getService() { @@ -82,10 +83,10 @@ public class FileObserverService extends Service { @Override public void onDestroy() { - super.onDestroy(); unregisterReceiver(mDownloadReceiver); mObserversMap = null; // TODO study carefully the life cycle of Services to grant the best possible observance Log_OC.d(TAG, "Bye, bye"); + super.onDestroy(); } @@ -160,10 +161,7 @@ public class FileObserverService extends Service { String path = c.getString(c.getColumnIndex(ProviderTableMeta.FILE_STORAGE_PATH)); if (path == null || path.length() <= 0) continue; - OwnCloudFileObserver observer = - new OwnCloudFileObserver( path, - account, - getApplicationContext()); + OwnCloudFileObserver observer = new OwnCloudFileObserver(path, account, getApplicationContext(), mHandler); mObserversMap.put(path, observer); if (new File(path).exists()) { observer.startWatching(); @@ -202,7 +200,8 @@ public class FileObserverService extends Service { /// the local file was never registered to observe before observer = new OwnCloudFileObserver( localPath, account, - getApplicationContext()); + getApplicationContext(), + mHandler); mObserversMap.put(localPath, observer); Log_OC.d(TAG, "Observer added for path " + localPath);