DefaultCreateReportSpiCall.java
3.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package com.crashlytics.android.core;
import io.fabric.sdk.android.Fabric;
import io.fabric.sdk.android.Kit;
import io.fabric.sdk.android.Logger;
import io.fabric.sdk.android.services.common.AbstractSpiCall;
import io.fabric.sdk.android.services.common.ResponseParser;
import io.fabric.sdk.android.services.network.HttpMethod;
import io.fabric.sdk.android.services.network.HttpRequest;
import io.fabric.sdk.android.services.network.HttpRequestFactory;
import java.io.File;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
class DefaultCreateReportSpiCall
extends AbstractSpiCall
implements CreateReportSpiCall
{
static final String FILE_CONTENT_TYPE = "application/octet-stream";
static final String FILE_PARAM = "report[file]";
static final String IDENTIFIER_PARAM = "report[identifier]";
static final String MULTI_FILE_PARAM = "report[file";
public DefaultCreateReportSpiCall(Kit paramKit, String paramString1, String paramString2, HttpRequestFactory paramHttpRequestFactory)
{
super(paramKit, paramString1, paramString2, paramHttpRequestFactory, HttpMethod.POST);
}
DefaultCreateReportSpiCall(Kit paramKit, String paramString1, String paramString2, HttpRequestFactory paramHttpRequestFactory, HttpMethod paramHttpMethod)
{
super(paramKit, paramString1, paramString2, paramHttpRequestFactory, paramHttpMethod);
}
private HttpRequest applyHeadersTo(HttpRequest paramHttpRequest, CreateReportRequest paramCreateReportRequest)
{
paramHttpRequest = paramHttpRequest.header("X-CRASHLYTICS-API-KEY", paramCreateReportRequest.apiKey).header("X-CRASHLYTICS-API-CLIENT-TYPE", "android").header("X-CRASHLYTICS-API-CLIENT-VERSION", this.kit.getVersion());
paramCreateReportRequest = paramCreateReportRequest.report.getCustomHeaders().entrySet().iterator();
while (paramCreateReportRequest.hasNext()) {
paramHttpRequest = paramHttpRequest.header((Map.Entry)paramCreateReportRequest.next());
}
return paramHttpRequest;
}
private HttpRequest applyMultipartDataTo(HttpRequest paramHttpRequest, Report paramReport)
{
int i = 0;
paramHttpRequest.part("report[identifier]", paramReport.getIdentifier());
HttpRequest localHttpRequest;
if (paramReport.getFiles().length == 1)
{
Fabric.getLogger().d("CrashlyticsCore", "Adding single file " + paramReport.getFileName() + " to report " + paramReport.getIdentifier());
localHttpRequest = paramHttpRequest.part("report[file]", paramReport.getFileName(), "application/octet-stream", paramReport.getFile());
return localHttpRequest;
}
File[] arrayOfFile = paramReport.getFiles();
int k = arrayOfFile.length;
int j = 0;
for (;;)
{
localHttpRequest = paramHttpRequest;
if (i >= k) {
break;
}
localHttpRequest = arrayOfFile[i];
Fabric.getLogger().d("CrashlyticsCore", "Adding file " + localHttpRequest.getName() + " to report " + paramReport.getIdentifier());
paramHttpRequest.part("report[file" + j + "]", localHttpRequest.getName(), "application/octet-stream", localHttpRequest);
j += 1;
i += 1;
}
}
public boolean invoke(CreateReportRequest paramCreateReportRequest)
{
paramCreateReportRequest = applyMultipartDataTo(applyHeadersTo(getHttpRequest(), paramCreateReportRequest), paramCreateReportRequest.report);
Fabric.getLogger().d("CrashlyticsCore", "Sending report to: " + getUrl());
int i = paramCreateReportRequest.code();
Fabric.getLogger().d("CrashlyticsCore", "Create report request ID: " + paramCreateReportRequest.header("X-REQUEST-ID"));
Fabric.getLogger().d("CrashlyticsCore", "Result was: " + i);
return ResponseParser.parse(i) == 0;
}
}
/* Location: /home/merong/decompile/hackery-dex2jar.jar!/com/crashlytics/android/core/DefaultCreateReportSpiCall.class
* Java compiler version: 6 (50.0)
* JD-Core Version: 0.7.1
*/