Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d82cad7b authored by vince-bourgmayer's avatar vince-bourgmayer
Browse files

use ServiceExceptionHandler in Observer, OMS & Initializer

parent c7a6f5cb
Loading
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -34,6 +34,8 @@ import foundation.e.drive.receivers.ScreenOffReceiver;
import foundation.e.drive.utils.AppConstants;
import foundation.e.drive.utils.CommonUtils;
import foundation.e.drive.utils.JobUtils;
import foundation.e.drive.utils.ServiceExceptionHandler;

import static com.owncloud.android.lib.resources.files.FileUtils.PATH_SEPARATOR;
import static foundation.e.drive.utils.AppConstants.INITIALFOLDERS_NUMBER;
import static foundation.e.drive.utils.AppConstants.MEDIA_SYNCABLE_CATEGORIES;
@@ -63,6 +65,9 @@ public class InitializerService extends Service implements OnRemoteOperationList
    @Override
    public int onStartCommand( Intent intent, int flags, int startId ) {
        Log.i(TAG, "onStartCommand(...)");

        Thread.setDefaultUncaughtExceptionHandler(new ServiceExceptionHandler(this));

        //Get account
        SharedPreferences prefs = this.getSharedPreferences( AppConstants.SHARED_PREFERENCE_NAME, Context.MODE_PRIVATE );

+3 −6
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ import static com.owncloud.android.lib.resources.files.FileUtils.PATH_SEPARATOR;
import static foundation.e.drive.utils.AppConstants.INITIALIZATION_HAS_BEEN_DONE;
import foundation.e.drive.utils.DavClientProvider;
import foundation.e.drive.utils.JobUtils;
import foundation.e.drive.utils.ServiceExceptionHandler;

/**
 * @author Vincent Bourgmayer
@@ -75,16 +76,12 @@ public class ObserverService extends Service implements OnRemoteOperationListene
        this.mSyncedFolders = null;
    }

    @Override
    public void onCreate() {
        Log.i(TAG, "onCreate()");
        super.onCreate();
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Log.i(TAG, "onStartCommand("+startId+")");

        Thread.setDefaultUncaughtExceptionHandler(new ServiceExceptionHandler(this));

        SharedPreferences prefs = this.getSharedPreferences(AppConstants.SHARED_PREFERENCE_NAME, Context.MODE_PRIVATE);
        String accountName = prefs.getString(AccountManager.KEY_ACCOUNT_NAME, "");
        String accountType = prefs.getString(AccountManager.KEY_ACCOUNT_TYPE, "");
+2 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ import foundation.e.drive.operations.UploadFileOperation;
import foundation.e.drive.utils.AppConstants;
import foundation.e.drive.utils.CommonUtils;
import foundation.e.drive.utils.DavClientProvider;
import foundation.e.drive.utils.ServiceExceptionHandler;

/**
 * @author Vincent Bourgmayer
@@ -239,6 +240,7 @@ public class OperationManagerService extends Service implements OnRemoteOperatio
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Log.i(TAG, "onStartCommand()");
        Thread.setDefaultUncaughtExceptionHandler(new ServiceExceptionHandler(this));

        Bundle extras = intent.getExtras();
        Log.d(TAG, "OperationManagerService recieved "+(extras == null ? "null extras": extras.size()+" operations to perform") );
+9 −1
Original line number Diff line number Diff line
@@ -6,8 +6,8 @@
 * http://www.gnu.org/licenses/gpl.html
 */
package foundation.e.drive.utils;
import android.app.Service;
import android.os.Environment;
import android.util.Log;

import java.io.File;
import java.io.FileOutputStream;
@@ -20,6 +20,14 @@ import java.lang.Thread.UncaughtExceptionHandler;
 * @author Vincent Bourgmayer
 */
public class ServiceExceptionHandler implements UncaughtExceptionHandler{
    private UncaughtExceptionHandler defaultUEH;

    Service service;

    public ServiceExceptionHandler(Service service) {
        this.service = service;
    }

    @Override
    public void uncaughtException(Thread t, Throwable e) {
        e.printStackTrace();