Example #1
0
 private void attemptUploadWithRetry() {
   Fabric.m512h()
       .m474a(
           CrashlyticsCore.TAG, "Starting report processing in " + this.delay + " second(s)...");
   if (this.delay > 0.0f) {
     try {
       Thread.sleep((long) (this.delay * 1000.0f));
     } catch (InterruptedException e) {
       Thread.currentThread().interrupt();
       return;
     }
   }
   CrashlyticsCore instance = CrashlyticsCore.getInstance();
   CrashlyticsUncaughtExceptionHandler handler = instance.getHandler();
   List<Report> findReports = ReportUploader.this.findReports();
   if (!handler.isHandlingException()) {
     if (findReports.isEmpty() || instance.canSendWithUserApproval()) {
       List list = findReports;
       int i = 0;
       while (!r0.isEmpty()
           && !CrashlyticsCore.getInstance().getHandler().isHandlingException()) {
         Fabric.m512h()
             .m474a(CrashlyticsCore.TAG, "Attempting to send " + r0.size() + " report(s)");
         for (Report forceUpload : r0) {
           ReportUploader.this.forceUpload(forceUpload);
         }
         List findReports2 = ReportUploader.this.findReports();
         if (findReports2.isEmpty()) {
           list = findReports2;
         } else {
           int i2 = i + 1;
           long j =
               (long)
                   ReportUploader.RETRY_INTERVALS[
                       Math.min(i, ReportUploader.RETRY_INTERVALS.length - 1)];
           Fabric.m512h()
               .m474a(
                   CrashlyticsCore.TAG,
                   "Report submisson: scheduling delayed retry in " + j + " seconds");
           try {
             Thread.sleep(j * 1000);
             i = i2;
             list = findReports2;
           } catch (InterruptedException e2) {
             Thread.currentThread().interrupt();
             return;
           }
         }
       }
       return;
     }
     Fabric.m512h()
         .m474a(
             CrashlyticsCore.TAG,
             "User declined to send. Removing " + findReports.size() + " Report(s).");
     for (Report forceUpload2 : findReports) {
       forceUpload2.remove();
     }
   }
 }
 private void attemptUploadWithRetry()
 {
     Object obj;
     CrashlyticsCore crashlyticscore;
     bso.h().a("CrashlyticsCore", (new StringBuilder()).append("Starting report processing in ").append(delay).append(" second(s)...").toString());
     CrashlyticsUncaughtExceptionHandler crashlyticsuncaughtexceptionhandler;
     if (delay > 0.0F)
     {
         try
         {
             Thread.sleep((long)(delay * 1000F));
         }
         // Misplaced declaration of an exception variable
         catch (Object obj)
         {
             Thread.currentThread().interrupt();
             return;
         }
     }
     crashlyticscore = CrashlyticsCore.getInstance();
     crashlyticsuncaughtexceptionhandler = crashlyticscore.getHandler();
     obj = findReports();
     if (!crashlyticsuncaughtexceptionhandler.isHandlingException()) goto _L2; else goto _L1
  private HttpRequest applyHeadersTo(
      HttpRequest httprequest, CreateReportRequest createreportrequest) {
    httprequest =
        httprequest
            .header("X-CRASHLYTICS-API-KEY", createreportrequest.apiKey)
            .header("X-CRASHLYTICS-API-CLIENT-TYPE", "android")
            .header("X-CRASHLYTICS-API-CLIENT-VERSION", CrashlyticsCore.getInstance().getVersion());
    for (createreportrequest = createreportrequest.report.getCustomHeaders().entrySet().iterator();
        createreportrequest.hasNext(); ) {
      httprequest = httprequest.header((java.util.Map.Entry) createreportrequest.next());
    }

    return httprequest;
  }
Example #4
0
 List<Report> findReports() {
   Fabric.m512h().m474a(CrashlyticsCore.TAG, "Checking for crash reports...");
   synchronized (this.fileAccessLock) {
     File[] listFiles = CrashlyticsCore.getInstance().getSdkDirectory().listFiles(crashFileFilter);
   }
   List<Report> linkedList = new LinkedList();
   for (File file : listFiles) {
     Fabric.m512h().m474a(CrashlyticsCore.TAG, "Found crash report " + file.getPath());
     linkedList.add(new SessionReport(file));
   }
   if (linkedList.isEmpty()) {
     Fabric.m512h().m474a(CrashlyticsCore.TAG, "No reports found.");
   }
   return linkedList;
 }
Example #5
0
 boolean forceUpload(Report report) {
   boolean z = false;
   synchronized (this.fileAccessLock) {
     try {
       boolean invoke =
           this.createReportCall.invoke(
               new CreateReportRequest(
                   new ApiKey().m141a(CrashlyticsCore.getInstance().getContext()), report));
       Fabric.m512h()
           .m478c(
               CrashlyticsCore.TAG,
               "Crashlytics report upload "
                   + (invoke ? "complete: " : "FAILED: ")
                   + report.getFileName());
       if (invoke) {
         report.remove();
         z = true;
       }
     } catch (Throwable e) {
       Fabric.m512h().m482e(CrashlyticsCore.TAG, "Error occurred sending report " + report, e);
     }
   }
   return z;
 }