/* * Copyright (c) 2012. HappyDroids LLC, All rights reserved. */ package com.happydroids.error; import com.happydroids.HappyDroidConsts; import com.happydroids.platform.Platform; import com.happydroids.utils.BackgroundTask; import net.kencochrane.sentry.RavenClient; import net.kencochrane.sentry.RavenUtils; import org.apach3.commons.lang3.exception.ExceptionUtils; public class ErrorUtil { public static void rethrowError(Throwable throwable) { Platform.getUncaughtExceptionHandler().uncaughtException(Thread.currentThread(), throwable); } public static void sendErrorToServer(final Throwable throwable) { throwable.printStackTrace(); new BackgroundTask() { @Override protected void execute() throws Exception { RavenClient ravenClient = new RavenClient(HappyDroidConsts.SENTRY_DSN); ravenClient.captureException(ExceptionUtils.getMessage(throwable), RavenUtils.getTimestampLong(), "root", 50, null, throwable, null); } }.run(); } public static void rethrowErrorInDebugMode(Throwable throwable) { if (HappyDroidConsts.DEBUG) { rethrowError(throwable); } } }