AmazonHttpClient.smali
.class public Lcom/amazonaws/http/AmazonHttpClient;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final d:Lcom/amazonaws/logging/Log;
.field public static final e:Lcom/amazonaws/logging/Log;
# instance fields
.field public final a:Lcom/amazonaws/http/HttpClient;
.field public final b:Lcom/amazonaws/ClientConfiguration;
.field public final c:Lcom/amazonaws/http/HttpRequestFactory;
# direct methods
.method public static constructor <clinit>()V
.registers 1
const-string v0, "com.amazonaws.request"
.line 1
invoke-static {v0}, Lcom/amazonaws/logging/LogFactory;->b(Ljava/lang/String;)Lcom/amazonaws/logging/Log;
move-result-object v0
sput-object v0, Lcom/amazonaws/http/AmazonHttpClient;->d:Lcom/amazonaws/logging/Log;
.line 2
const-class v0, Lcom/amazonaws/http/AmazonHttpClient;
invoke-static {v0}, Lcom/amazonaws/logging/LogFactory;->a(Ljava/lang/Class;)Lcom/amazonaws/logging/Log;
move-result-object v0
sput-object v0, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/ClientConfiguration;Lcom/amazonaws/http/HttpClient;)V
.registers 4
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
new-instance v0, Lcom/amazonaws/http/HttpRequestFactory;
invoke-direct {v0}, Lcom/amazonaws/http/HttpRequestFactory;-><init>()V
iput-object v0, p0, Lcom/amazonaws/http/AmazonHttpClient;->c:Lcom/amazonaws/http/HttpRequestFactory;
.line 3
iput-object p1, p0, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 4
iput-object p2, p0, Lcom/amazonaws/http/AmazonHttpClient;->a:Lcom/amazonaws/http/HttpClient;
return-void
.end method
.method public static a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 3
.line 1
invoke-virtual {p0, p1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_7
return-object p0
.line 2
:cond_7
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, " "
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static f(Lcom/amazonaws/http/HttpResponse;)Z
.registers 3
.line 1
iget v0, p0, Lcom/amazonaws/http/HttpResponse;->b:I
.line 2
iget-object p0, p0, Lcom/amazonaws/http/HttpResponse;->d:Ljava/util/Map;
const-string v1, "Location"
.line 3
invoke-interface {p0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/String;
const/16 v1, 0x133
if-ne v0, v1, :cond_1a
if-eqz p0, :cond_1a
.line 4
invoke-virtual {p0}, Ljava/lang/String;->isEmpty()Z
move-result p0
if-nez p0, :cond_1a
const/4 p0, 0x1
goto :goto_1b
:cond_1a
const/4 p0, 0x0
:goto_1b
return p0
.end method
# virtual methods
.method public final b(Lcom/amazonaws/Request;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/ExecutionContext;)Lcom/amazonaws/Response;
.registers 10
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/http/HttpResponseHandler<",
"Lcom/amazonaws/AmazonWebServiceResponse<",
"TT;>;>;",
"Lcom/amazonaws/http/HttpResponseHandler<",
"Lcom/amazonaws/AmazonServiceException;",
">;",
"Lcom/amazonaws/http/ExecutionContext;",
")",
"Lcom/amazonaws/Response<",
"TT;>;"
}
.end annotation
.line 1
iget-object v0, p4, Lcom/amazonaws/http/ExecutionContext;->b:Ljava/util/List;
if-nez v0, :cond_9
.line 2
invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;
move-result-object v0
goto :goto_28
.line 3
:cond_9
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_d
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_28
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/amazonaws/handlers/RequestHandler2;
.line 4
instance-of v3, v2, Lcom/amazonaws/handlers/CredentialsRequestHandler;
if-eqz v3, :cond_24
.line 5
move-object v3, v2
check-cast v3, Lcom/amazonaws/handlers/CredentialsRequestHandler;
.line 6
iget-object v4, p4, Lcom/amazonaws/http/ExecutionContext;->c:Lcom/amazonaws/auth/AWSCredentials;
.line 7
iput-object v4, v3, Lcom/amazonaws/handlers/CredentialsRequestHandler;->a:Lcom/amazonaws/auth/AWSCredentials;
.line 8
:cond_24
invoke-virtual {v2, p1}, Lcom/amazonaws/handlers/RequestHandler2;->c(Lcom/amazonaws/Request;)V
goto :goto_d
.line 9
:cond_28
:goto_28
iget-object v1, p4, Lcom/amazonaws/http/ExecutionContext;->a:Lcom/amazonaws/util/AWSRequestMetrics;
.line 10
:try_start_2a
invoke-virtual {p0, p1, p2, p3, p4}, Lcom/amazonaws/http/AmazonHttpClient;->c(Lcom/amazonaws/Request;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/ExecutionContext;)Lcom/amazonaws/Response;
move-result-object p2
.line 11
iget-object p3, v1, Lcom/amazonaws/util/AWSRequestMetrics;->a:Lcom/amazonaws/util/TimingInfo;
.line 12
invoke-virtual {p3}, Lcom/amazonaws/util/TimingInfo;->b()Lcom/amazonaws/util/TimingInfo;
.line 13
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_37
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result p4
if-eqz p4, :cond_47
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object p4
check-cast p4, Lcom/amazonaws/handlers/RequestHandler2;
.line 14
invoke-virtual {p4, p1, p2}, Lcom/amazonaws/handlers/RequestHandler2;->b(Lcom/amazonaws/Request;Lcom/amazonaws/Response;)V
:try_end_46
.catch Lcom/amazonaws/AmazonClientException; {:try_start_2a .. :try_end_46} :catch_48
goto :goto_37
:cond_47
return-object p2
:catch_48
move-exception p2
.line 15
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_4d
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result p4
if-eqz p4, :cond_5d
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object p4
check-cast p4, Lcom/amazonaws/handlers/RequestHandler2;
.line 16
invoke-virtual {p4, p1, p2}, Lcom/amazonaws/handlers/RequestHandler2;->a(Lcom/amazonaws/Request;Ljava/lang/Exception;)V
goto :goto_4d
.line 17
:cond_5d
throw p2
.end method
.method public final c(Lcom/amazonaws/Request;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/ExecutionContext;)Lcom/amazonaws/Response;
.registers 34
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/http/HttpResponseHandler<",
"Lcom/amazonaws/AmazonWebServiceResponse<",
"TT;>;>;",
"Lcom/amazonaws/http/HttpResponseHandler<",
"Lcom/amazonaws/AmazonServiceException;",
">;",
"Lcom/amazonaws/http/ExecutionContext;",
")",
"Lcom/amazonaws/Response<",
"TT;>;"
}
.end annotation
move-object/from16 v7, p0
move-object/from16 v8, p1
move-object/from16 v9, p4
.line 1
iget-object v10, v9, Lcom/amazonaws/http/ExecutionContext;->a:Lcom/amazonaws/util/AWSRequestMetrics;
.line 2
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->ServiceName:Lcom/amazonaws/util/AWSRequestMetrics$Field;
move-object v11, v8
check-cast v11, Lcom/amazonaws/DefaultRequest;
.line 3
iget-object v1, v11, Lcom/amazonaws/DefaultRequest;->f:Ljava/lang/String;
.line 4
invoke-virtual {v10, v0, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 5
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->ServiceEndpoint:Lcom/amazonaws/util/AWSRequestMetrics$Field;
.line 6
iget-object v1, v11, Lcom/amazonaws/DefaultRequest;->e:Ljava/net/URI;
.line 7
invoke-virtual {v10, v0, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 8
sget-object v0, Lcom/amazonaws/ClientConfiguration;->g:Ljava/lang/String;
.line 9
iget-object v1, v11, Lcom/amazonaws/DefaultRequest;->g:Lcom/amazonaws/AmazonWebServiceRequest;
if-eqz v1, :cond_34
.line 10
iget-object v1, v1, Lcom/amazonaws/AmazonWebServiceRequest;->b:Lcom/amazonaws/RequestClientOptions;
if-eqz v1, :cond_34
.line 11
sget-object v2, Lcom/amazonaws/RequestClientOptions$Marker;->USER_AGENT:Lcom/amazonaws/RequestClientOptions$Marker;
.line 12
iget-object v1, v1, Lcom/amazonaws/RequestClientOptions;->a:Ljava/util/EnumMap;
invoke-virtual {v1, v2}, Ljava/util/EnumMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
if-eqz v1, :cond_34
.line 13
invoke-static {v0, v1}, Lcom/amazonaws/http/AmazonHttpClient;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
goto :goto_35
:cond_34
move-object v1, v0
.line 14
:goto_35
iget-object v2, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 15
iget-object v2, v2, Lcom/amazonaws/ClientConfiguration;->a:Ljava/lang/String;
.line 16
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_47
.line 17
iget-object v0, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 18
iget-object v0, v0, Lcom/amazonaws/ClientConfiguration;->a:Ljava/lang/String;
.line 19
invoke-static {v1, v0}, Lcom/amazonaws/http/AmazonHttpClient;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 20
:cond_47
iget-object v0, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 21
invoke-static {v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
const-string v0, "User-Agent"
.line 22
invoke-virtual {v11, v0, v1}, Lcom/amazonaws/DefaultRequest;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 23
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object v0
invoke-virtual {v0}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "aws-sdk-invocation-id"
invoke-virtual {v11, v1, v0}, Lcom/amazonaws/DefaultRequest;->a(Ljava/lang/String;Ljava/lang/String;)V
const-wide/16 v0, 0x0
.line 24
new-instance v12, Ljava/util/LinkedHashMap;
.line 25
iget-object v2, v11, Lcom/amazonaws/DefaultRequest;->c:Ljava/util/LinkedHashMap;
.line 26
invoke-direct {v12, v2}, Ljava/util/LinkedHashMap;-><init>(Ljava/util/Map;)V
.line 27
new-instance v13, Ljava/util/HashMap;
.line 28
iget-object v2, v11, Lcom/amazonaws/DefaultRequest;->d:Ljava/util/HashMap;
.line 29
invoke-direct {v13, v2}, Ljava/util/HashMap;-><init>(Ljava/util/Map;)V
.line 30
iget-object v14, v11, Lcom/amazonaws/DefaultRequest;->i:Ljava/io/InputStream;
if-eqz v14, :cond_7c
.line 31
invoke-virtual {v14}, Ljava/io/InputStream;->markSupported()Z
move-result v2
if-eqz v2, :cond_7c
const/4 v2, -0x1
.line 32
invoke-virtual {v14, v2}, Ljava/io/InputStream;->mark(I)V
.line 33
:cond_7c
iget-object v15, v9, Lcom/amazonaws/http/ExecutionContext;->c:Lcom/amazonaws/auth/AWSCredentials;
const/16 v16, 0x0
move-wide v1, v0
const/4 v0, 0x0
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x0
const/16 v17, 0x0
const/16 v18, 0x0
const/16 v19, 0x0
:goto_8b
const/4 v6, 0x1
move-object/from16 v21, v5
add-int/lit8 v5, v0, 0x1
.line 34
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->RequestCount:Lcom/amazonaws/util/AWSRequestMetrics$Field;
move-wide/from16 v22, v1
int-to-long v1, v5
invoke-virtual {v10, v0, v1, v2}, Lcom/amazonaws/util/AWSRequestMetrics;->d(Lcom/amazonaws/metrics/MetricType;J)V
if-le v5, v6, :cond_b0
.line 35
iget-object v0, v11, Lcom/amazonaws/DefaultRequest;->c:Ljava/util/LinkedHashMap;
invoke-virtual {v0}, Ljava/util/LinkedHashMap;->clear()V
.line 36
iget-object v0, v11, Lcom/amazonaws/DefaultRequest;->c:Ljava/util/LinkedHashMap;
invoke-interface {v0, v12}, Ljava/util/Map;->putAll(Ljava/util/Map;)V
.line 37
iget-object v0, v11, Lcom/amazonaws/DefaultRequest;->d:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
.line 38
iget-object v0, v11, Lcom/amazonaws/DefaultRequest;->d:Ljava/util/HashMap;
invoke-virtual {v0, v13}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V
.line 39
iput-object v14, v11, Lcom/amazonaws/DefaultRequest;->i:Ljava/io/InputStream;
:cond_b0
if-eqz v17, :cond_e2
.line 40
iget-object v0, v11, Lcom/amazonaws/DefaultRequest;->e:Ljava/net/URI;
if-nez v0, :cond_e2
.line 41
iget-object v0, v11, Lcom/amazonaws/DefaultRequest;->a:Ljava/lang/String;
if-nez v0, :cond_e2
.line 42
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 43
invoke-virtual/range {v17 .. v17}, Ljava/net/URI;->getScheme()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "://"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual/range {v17 .. v17}, Ljava/net/URI;->getAuthority()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
.line 44
invoke-static {v0}, Ljava/net/URI;->create(Ljava/lang/String;)Ljava/net/URI;
move-result-object v0
.line 45
iput-object v0, v11, Lcom/amazonaws/DefaultRequest;->e:Ljava/net/URI;
.line 46
invoke-virtual/range {v17 .. v17}, Ljava/net/URI;->getPath()Ljava/lang/String;
move-result-object v0
.line 47
iput-object v0, v11, Lcom/amazonaws/DefaultRequest;->a:Ljava/lang/String;
:cond_e2
const-string v2, "Cannot close the response content."
if-le v5, v6, :cond_12c
.line 48
:try_start_e6
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->RetryPauseTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->e(Lcom/amazonaws/metrics/MetricType;)V
:try_end_eb
.catch Ljava/io/IOException; {:try_start_e6 .. :try_end_eb} :catch_11b
.catch Ljava/lang/RuntimeException; {:try_start_e6 .. :try_end_eb} :catch_117
.catch Ljava/lang/Error; {:try_start_e6 .. :try_end_eb} :catch_113
.catchall {:try_start_e6 .. :try_end_eb} :catchall_3b8
.line 49
:try_start_eb
move-object v1, v8
check-cast v1, Lcom/amazonaws/DefaultRequest;
.line 50
iget-object v1, v1, Lcom/amazonaws/DefaultRequest;->g:Lcom/amazonaws/AmazonWebServiceRequest;
.line 51
iget-object v6, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 52
iget-object v6, v6, Lcom/amazonaws/ClientConfiguration;->c:Lcom/amazonaws/retry/RetryPolicy;
.line 53
invoke-virtual {v7, v1, v4, v5, v6}, Lcom/amazonaws/http/AmazonHttpClient;->h(Lcom/amazonaws/AmazonWebServiceRequest;Lcom/amazonaws/AmazonClientException;ILcom/amazonaws/retry/RetryPolicy;)J
move-result-wide v22
:try_end_f8
.catchall {:try_start_eb .. :try_end_f8} :catchall_10c
.line 54
:try_start_f8
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
.line 55
move-object v0, v8
check-cast v0, Lcom/amazonaws/DefaultRequest;
.line 56
iget-object v0, v0, Lcom/amazonaws/DefaultRequest;->i:Ljava/io/InputStream;
if-eqz v0, :cond_12c
.line 57
invoke-virtual {v0}, Ljava/io/InputStream;->markSupported()Z
move-result v1
if-eqz v1, :cond_12c
.line 58
invoke-virtual {v0}, Ljava/io/InputStream;->reset()V
goto :goto_12c
:catchall_10c
move-exception v0
.line 59
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->RetryPauseTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
.line 60
throw v0
:try_end_113
.catch Ljava/io/IOException; {:try_start_f8 .. :try_end_113} :catch_11b
.catch Ljava/lang/RuntimeException; {:try_start_f8 .. :try_end_113} :catch_117
.catch Ljava/lang/Error; {:try_start_f8 .. :try_end_113} :catch_113
.catchall {:try_start_f8 .. :try_end_113} :catchall_3b8
:catch_113
move-exception v0
move-object v9, v2
goto/16 :goto_3be
:catch_117
move-exception v0
move-object v9, v2
goto/16 :goto_3c7
:catch_11b
move-exception v0
move-object v9, v2
move/from16 v20, v5
move-object/from16 v25, v12
move-object/from16 v26, v13
move-object/from16 v5, v21
move-wide/from16 v27, v22
const/4 v12, 0x0
move-object/from16 v22, v11
goto/16 :goto_3db
:cond_12c
:goto_12c
move-object/from16 v25, v12
move-object/from16 v26, v13
move-wide/from16 v12, v22
:try_start_132
const-string v0, "aws-sdk-retry"
.line 61
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
add-int/lit8 v4, v5, -0x1
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v4, "/"
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v12, v13}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v11, v0, v1}, Lcom/amazonaws/DefaultRequest;->a(Ljava/lang/String;Ljava/lang/String;)V
:try_end_14d
.catch Ljava/io/IOException; {:try_start_132 .. :try_end_14d} :catch_3d0
.catch Ljava/lang/RuntimeException; {:try_start_132 .. :try_end_14d} :catch_117
.catch Ljava/lang/Error; {:try_start_132 .. :try_end_14d} :catch_113
.catchall {:try_start_132 .. :try_end_14d} :catchall_3b8
if-nez v18, :cond_158
.line 62
:try_start_14f
move-object v0, v9
check-cast v0, Lcom/amazonaws/services/s3/internal/S3ExecutionContext;
.line 63
iget-object v0, v0, Lcom/amazonaws/services/s3/internal/S3ExecutionContext;->d:Lcom/amazonaws/auth/Signer;
:try_end_154
.catch Ljava/io/IOException; {:try_start_14f .. :try_end_154} :catch_156
.catch Ljava/lang/RuntimeException; {:try_start_14f .. :try_end_154} :catch_117
.catch Ljava/lang/Error; {:try_start_14f .. :try_end_154} :catch_113
.catchall {:try_start_14f .. :try_end_154} :catchall_3b8
move-object v6, v0
goto :goto_15a
:catch_156
move-exception v0
goto :goto_19a
:cond_158
move-object/from16 v6, v18
:goto_15a
if-eqz v6, :cond_174
if-eqz v15, :cond_174
.line 64
:try_start_15e
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->RequestSigningTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->e(Lcom/amazonaws/metrics/MetricType;)V
:try_end_163
.catch Ljava/io/IOException; {:try_start_15e .. :try_end_163} :catch_172
.catch Ljava/lang/RuntimeException; {:try_start_15e .. :try_end_163} :catch_117
.catch Ljava/lang/Error; {:try_start_15e .. :try_end_163} :catch_113
.catchall {:try_start_15e .. :try_end_163} :catchall_3b8
.line 65
:try_start_163
invoke-interface {v6, v8, v15}, Lcom/amazonaws/auth/Signer;->c(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSCredentials;)V
:try_end_166
.catchall {:try_start_163 .. :try_end_166} :catchall_16a
.line 66
:try_start_166
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
goto :goto_174
:catchall_16a
move-exception v0
move-object v1, v0
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->RequestSigningTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
.line 67
throw v1
:try_end_172
.catch Ljava/io/IOException; {:try_start_166 .. :try_end_172} :catch_172
.catch Ljava/lang/RuntimeException; {:try_start_166 .. :try_end_172} :catch_117
.catch Ljava/lang/Error; {:try_start_166 .. :try_end_172} :catch_113
.catchall {:try_start_166 .. :try_end_172} :catchall_3b8
:catch_172
move-exception v0
goto :goto_198
.line 68
:cond_174
:goto_174
:try_start_174
sget-object v0, Lcom/amazonaws/http/AmazonHttpClient;->d:Lcom/amazonaws/logging/Log;
invoke-interface {v0}, Lcom/amazonaws/logging/Log;->isDebugEnabled()Z
move-result v1
:try_end_17a
.catch Ljava/io/IOException; {:try_start_174 .. :try_end_17a} :catch_3a8
.catch Ljava/lang/RuntimeException; {:try_start_174 .. :try_end_17a} :catch_117
.catch Ljava/lang/Error; {:try_start_174 .. :try_end_17a} :catch_113
.catchall {:try_start_174 .. :try_end_17a} :catchall_3b8
if-eqz v1, :cond_1a7
.line 69
:try_start_17c
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Sending Request: "
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual/range {p1 .. p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Lcom/amazonaws/logging/Log;->f(Ljava/lang/Object;)V
:try_end_194
.catch Ljava/io/IOException; {:try_start_17c .. :try_end_194} :catch_172
.catch Ljava/lang/RuntimeException; {:try_start_17c .. :try_end_194} :catch_117
.catch Ljava/lang/Error; {:try_start_17c .. :try_end_194} :catch_113
.catchall {:try_start_17c .. :try_end_194} :catchall_3b8
goto :goto_1a7
:goto_195
move-object v9, v2
goto/16 :goto_3bb
:goto_198
move-object/from16 v18, v6
:goto_19a
move-object v9, v2
move/from16 v20, v5
move-object/from16 v22, v11
move-wide/from16 v27, v12
move-object/from16 v13, v21
const/4 v12, 0x0
:goto_1a4
move-object v11, v3
goto/16 :goto_3dd
.line 70
:cond_1a7
:goto_1a7
:try_start_1a7
iget-object v0, v7, Lcom/amazonaws/http/AmazonHttpClient;->c:Lcom/amazonaws/http/HttpRequestFactory;
iget-object v1, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
invoke-virtual {v0, v8, v1}, Lcom/amazonaws/http/HttpRequestFactory;->a(Lcom/amazonaws/Request;Lcom/amazonaws/ClientConfiguration;)Lcom/amazonaws/http/HttpRequest;
move-result-object v4
:try_end_1af
.catch Ljava/io/IOException; {:try_start_1a7 .. :try_end_1af} :catch_3a8
.catch Ljava/lang/RuntimeException; {:try_start_1a7 .. :try_end_1af} :catch_117
.catch Ljava/lang/Error; {:try_start_1a7 .. :try_end_1af} :catch_113
.catchall {:try_start_1a7 .. :try_end_1af} :catchall_3b8
.line 71
:try_start_1af
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->HttpRequestTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->e(Lcom/amazonaws/metrics/MetricType;)V
:try_end_1b4
.catch Ljava/io/IOException; {:try_start_1af .. :try_end_1b4} :catch_39a
.catch Ljava/lang/RuntimeException; {:try_start_1af .. :try_end_1b4} :catch_117
.catch Ljava/lang/Error; {:try_start_1af .. :try_end_1b4} :catch_113
.catchall {:try_start_1af .. :try_end_1b4} :catchall_3b8
.line 72
:try_start_1b4
iget-object v1, v7, Lcom/amazonaws/http/AmazonHttpClient;->a:Lcom/amazonaws/http/HttpClient;
check-cast v1, Lcom/amazonaws/http/UrlHttpClient;
invoke-virtual {v1, v4}, Lcom/amazonaws/http/UrlHttpClient;->a(Lcom/amazonaws/http/HttpRequest;)Lcom/amazonaws/http/HttpResponse;
move-result-object v3
:try_end_1bc
.catchall {:try_start_1b4 .. :try_end_1bc} :catchall_37d
.line 73
:try_start_1bc
invoke-virtual {v10, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
.line 74
iget v0, v3, Lcom/amazonaws/http/HttpResponse;->b:I
:try_end_1c1
.catch Ljava/io/IOException; {:try_start_1bc .. :try_end_1c1} :catch_358
.catch Ljava/lang/RuntimeException; {:try_start_1bc .. :try_end_1c1} :catch_372
.catch Ljava/lang/Error; {:try_start_1bc .. :try_end_1c1} :catch_36c
.catchall {:try_start_1bc .. :try_end_1c1} :catchall_366
const/16 v1, 0xc8
if-lt v0, v1, :cond_1cc
const/16 v1, 0x12c
if-ge v0, v1, :cond_1cc
const/16 v24, 0x1
goto :goto_1ce
:cond_1cc
const/16 v24, 0x0
:goto_1ce
if-eqz v24, :cond_210
.line 75
:try_start_1d0
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->StatusCode:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
invoke-virtual {v10, v1, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 76
invoke-interface/range {p2 .. p2}, Lcom/amazonaws/http/HttpResponseHandler;->a()Z
move-result v19
move-object/from16 v1, p2
.line 77
invoke-virtual {v7, v1, v3, v9}, Lcom/amazonaws/http/AmazonHttpClient;->e(Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponse;Lcom/amazonaws/http/ExecutionContext;)Ljava/lang/Object;
move-result-object v0
.line 78
new-instance v1, Lcom/amazonaws/Response;
invoke-direct {v1, v0}, Lcom/amazonaws/Response;-><init>(Ljava/lang/Object;)V
:try_end_1e8
.catch Ljava/io/IOException; {:try_start_1d0 .. :try_end_1e8} :catch_208
.catch Ljava/lang/RuntimeException; {:try_start_1d0 .. :try_end_1e8} :catch_203
.catch Ljava/lang/Error; {:try_start_1d0 .. :try_end_1e8} :catch_1fe
.catchall {:try_start_1d0 .. :try_end_1e8} :catchall_1f9
if-nez v19, :cond_1f8
.line 79
:try_start_1ea
iget-object v0, v3, Lcom/amazonaws/http/HttpResponse;->c:Ljava/io/InputStream;
if-eqz v0, :cond_1f8
.line 80
invoke-virtual {v0}, Ljava/io/InputStream;->close()V
:try_end_1f1
.catch Ljava/io/IOException; {:try_start_1ea .. :try_end_1f1} :catch_1f2
goto :goto_1f8
:catch_1f2
move-exception v0
.line 81
sget-object v3, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {v3, v2, v0}, Lcom/amazonaws/logging/Log;->d(Ljava/lang/Object;Ljava/lang/Throwable;)V
:cond_1f8
:goto_1f8
return-object v1
:catchall_1f9
move-exception v0
move-object/from16 v22, v2
goto/16 :goto_281
:catch_1fe
move-exception v0
move-object/from16 v22, v2
goto/16 :goto_286
:catch_203
move-exception v0
move-object/from16 v22, v2
goto/16 :goto_28a
:catch_208
move-exception v0
move-object/from16 v22, v2
move/from16 v23, v5
:goto_20d
const/4 v5, 0x0
goto/16 :goto_28e
.line 82
:cond_210
:try_start_210
invoke-static {v3}, Lcom/amazonaws/http/AmazonHttpClient;->f(Lcom/amazonaws/http/HttpResponse;)Z
move-result v0
:try_end_214
.catch Ljava/io/IOException; {:try_start_210 .. :try_end_214} :catch_358
.catch Ljava/lang/RuntimeException; {:try_start_210 .. :try_end_214} :catch_372
.catch Ljava/lang/Error; {:try_start_210 .. :try_end_214} :catch_36c
.catchall {:try_start_210 .. :try_end_214} :catchall_366
if-eqz v0, :cond_2a0
.line 83
:try_start_216
iget-object v0, v3, Lcom/amazonaws/http/HttpResponse;->d:Ljava/util/Map;
:try_end_218
.catch Ljava/io/IOException; {:try_start_216 .. :try_end_218} :catch_29c
.catch Ljava/lang/RuntimeException; {:try_start_216 .. :try_end_218} :catch_203
.catch Ljava/lang/Error; {:try_start_216 .. :try_end_218} :catch_1fe
.catchall {:try_start_216 .. :try_end_218} :catchall_1f9
:try_start_218
const-string v1, "Location"
.line 84
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
.line 85
sget-object v1, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
:try_end_222
.catch Ljava/io/IOException; {:try_start_218 .. :try_end_222} :catch_208
.catch Ljava/lang/RuntimeException; {:try_start_218 .. :try_end_222} :catch_203
.catch Ljava/lang/Error; {:try_start_218 .. :try_end_222} :catch_1fe
.catchall {:try_start_218 .. :try_end_222} :catchall_1f9
move-object/from16 v22, v2
:try_start_224
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
:try_end_229
.catch Ljava/io/IOException; {:try_start_224 .. :try_end_229} :catch_27d
.catch Ljava/lang/RuntimeException; {:try_start_224 .. :try_end_229} :catch_27b
.catch Ljava/lang/Error; {:try_start_224 .. :try_end_229} :catch_279
.catchall {:try_start_224 .. :try_end_229} :catchall_277
move/from16 v23, v5
:try_start_22b
const-string v5, "Redirecting to: "
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-interface {v1, v2}, Lcom/amazonaws/logging/Log;->f(Ljava/lang/Object;)V
.line 86
invoke-static {v0}, Ljava/net/URI;->create(Ljava/lang/String;)Ljava/net/URI;
move-result-object v17
.line 87
move-object v1, v8
check-cast v1, Lcom/amazonaws/DefaultRequest;
:try_end_241
.catch Ljava/io/IOException; {:try_start_22b .. :try_end_241} :catch_275
.catch Ljava/lang/RuntimeException; {:try_start_22b .. :try_end_241} :catch_27b
.catch Ljava/lang/Error; {:try_start_22b .. :try_end_241} :catch_279
.catchall {:try_start_22b .. :try_end_241} :catchall_277
const/4 v2, 0x0
.line 88
:try_start_242
iput-object v2, v1, Lcom/amazonaws/DefaultRequest;->e:Ljava/net/URI;
.line 89
move-object v1, v8
check-cast v1, Lcom/amazonaws/DefaultRequest;
.line 90
iput-object v2, v1, Lcom/amazonaws/DefaultRequest;->a:Ljava/lang/String;
:try_end_249
.catch Ljava/io/IOException; {:try_start_242 .. :try_end_249} :catch_272
.catch Ljava/lang/RuntimeException; {:try_start_242 .. :try_end_249} :catch_27b
.catch Ljava/lang/Error; {:try_start_242 .. :try_end_249} :catch_279
.catchall {:try_start_242 .. :try_end_249} :catchall_277
.line 91
:try_start_249
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->StatusCode:Lcom/amazonaws/util/AWSRequestMetrics$Field;
.line 92
iget v2, v3, Lcom/amazonaws/http/HttpResponse;->b:I
.line 93
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v10, v1, v2}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 94
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->RedirectLocation:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 95
sget-object v0, Lcom/amazonaws/util/AWSRequestMetrics$Field;->AWSRequestID:Lcom/amazonaws/util/AWSRequestMetrics$Field;
:try_end_25b
.catch Ljava/io/IOException; {:try_start_249 .. :try_end_25b} :catch_275
.catch Ljava/lang/RuntimeException; {:try_start_249 .. :try_end_25b} :catch_27b
.catch Ljava/lang/Error; {:try_start_249 .. :try_end_25b} :catch_279
.catchall {:try_start_249 .. :try_end_25b} :catchall_277
const/4 v5, 0x0
:try_start_25c
invoke-virtual {v10, v0, v5}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
:try_end_25f
.catch Ljava/io/IOException; {:try_start_25c .. :try_end_25f} :catch_270
.catch Ljava/lang/RuntimeException; {:try_start_25c .. :try_end_25f} :catch_27b
.catch Ljava/lang/Error; {:try_start_25c .. :try_end_25f} :catch_279
.catchall {:try_start_25c .. :try_end_25f} :catchall_277
move-object/from16 v18, v4
move-wide/from16 v27, v12
move-object/from16 v9, v22
move/from16 v20, v23
move-object v12, v5
move-object/from16 v23, v6
move-object/from16 v22, v11
move-object v11, v3
move-object v6, v12
goto/16 :goto_30c
:catch_270
move-exception v0
goto :goto_28e
:catch_272
move-exception v0
move-object v5, v2
goto :goto_28e
:catch_275
move-exception v0
goto :goto_20d
:catchall_277
move-exception v0
goto :goto_281
:catch_279
move-exception v0
goto :goto_286
:catch_27b
move-exception v0
goto :goto_28a
:catch_27d
move-exception v0
:goto_27e
move/from16 v23, v5
goto :goto_20d
:goto_281
move-object v1, v0
move-object/from16 v9, v22
goto/16 :goto_469
:goto_286
move-object/from16 v9, v22
goto/16 :goto_3be
:goto_28a
move-object/from16 v9, v22
goto/16 :goto_3c7
:goto_28e
move-object/from16 v18, v6
move-wide/from16 v27, v12
move-object/from16 v9, v22
move/from16 v20, v23
move-object v13, v4
move-object v12, v5
move-object/from16 v22, v11
goto/16 :goto_1a4
:catch_29c
move-exception v0
move-object/from16 v22, v2
goto :goto_27e
:cond_2a0
move-object/from16 v22, v2
move/from16 v23, v5
const/4 v5, 0x0
.line 96
:try_start_2a5
invoke-interface/range {p3 .. p3}, Lcom/amazonaws/http/HttpResponseHandler;->a()Z
move-result v19
move-object/from16 v2, p3
.line 97
invoke-virtual {v7, v8, v2, v3}, Lcom/amazonaws/http/AmazonHttpClient;->d(Lcom/amazonaws/Request;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponse;)Lcom/amazonaws/AmazonServiceException;
move-result-object v0
.line 98
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->AWSRequestID:Lcom/amazonaws/util/AWSRequestMetrics$Field;
:try_end_2b1
.catch Ljava/io/IOException; {:try_start_2a5 .. :try_end_2b1} :catch_34d
.catch Ljava/lang/RuntimeException; {:try_start_2a5 .. :try_end_2b1} :catch_348
.catch Ljava/lang/Error; {:try_start_2a5 .. :try_end_2b1} :catch_343
.catchall {:try_start_2a5 .. :try_end_2b1} :catchall_33e
.line 99
:try_start_2b1
iget-object v5, v0, Lcom/amazonaws/AmazonServiceException;->a:Ljava/lang/String;
.line 100
invoke-virtual {v10, v1, v5}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 101
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->AWSErrorCode:Lcom/amazonaws/util/AWSRequestMetrics$Field;
.line 102
iget-object v5, v0, Lcom/amazonaws/AmazonServiceException;->b:Ljava/lang/String;
.line 103
invoke-virtual {v10, v1, v5}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 104
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->StatusCode:Lcom/amazonaws/util/AWSRequestMetrics$Field;
.line 105
iget v5, v0, Lcom/amazonaws/AmazonServiceException;->d:I
.line 106
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
invoke-virtual {v10, v1, v5}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 107
move-object v1, v8
check-cast v1, Lcom/amazonaws/DefaultRequest;
.line 108
iget-object v5, v1, Lcom/amazonaws/DefaultRequest;->g:Lcom/amazonaws/AmazonWebServiceRequest;
.line 109
iget-object v1, v4, Lcom/amazonaws/http/HttpRequest;->d:Ljava/io/InputStream;
move-object/from16 v18, v1
.line 110
iget-object v1, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 111
iget-object v1, v1, Lcom/amazonaws/ClientConfiguration;->c:Lcom/amazonaws/retry/RetryPolicy;
:try_end_2d5
.catch Ljava/io/IOException; {:try_start_2b1 .. :try_end_2d5} :catch_32e
.catch Ljava/lang/RuntimeException; {:try_start_2b1 .. :try_end_2d5} :catch_348
.catch Ljava/lang/Error; {:try_start_2b1 .. :try_end_2d5} :catch_343
.catchall {:try_start_2b1 .. :try_end_2d5} :catchall_33e
move-object/from16 v21, v1
move-object/from16 v1, p0
move-object/from16 v9, v22
move-object v2, v5
move-object v5, v3
move-object/from16 v3, v18
move-object/from16 v18, v4
move-object v4, v0
move-object/from16 v22, v11
move/from16 v20, v23
const/16 v23, 0x0
move-object v11, v5
move/from16 v5, v20
move-wide/from16 v27, v12
move-object/from16 v12, v23
move-object/from16 v23, v6
move-object/from16 v6, v21
.line 112
:try_start_2f3
invoke-virtual/range {v1 .. v6}, Lcom/amazonaws/http/AmazonHttpClient;->j(Lcom/amazonaws/AmazonWebServiceRequest;Ljava/io/InputStream;Lcom/amazonaws/AmazonClientException;ILcom/amazonaws/retry/RetryPolicy;)Z
move-result v1
if-eqz v1, :cond_324
.line 113
invoke-static {v0}, Lcom/amazonaws/retry/RetryUtils;->a(Lcom/amazonaws/AmazonServiceException;)Z
move-result v1
if-eqz v1, :cond_308
.line 114
invoke-virtual {v7, v11, v0}, Lcom/amazonaws/http/AmazonHttpClient;->g(Lcom/amazonaws/http/HttpResponse;Lcom/amazonaws/AmazonServiceException;)J
move-result-wide v1
.line 115
sget-object v3, Lcom/amazonaws/SDKGlobalConfiguration;->a:Ljava/util/concurrent/atomic/AtomicLong;
invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;->set(J)V
.line 116
:cond_308
invoke-virtual {v7, v8, v0}, Lcom/amazonaws/http/AmazonHttpClient;->i(Lcom/amazonaws/Request;Ljava/lang/Exception;)V
:try_end_30b
.catch Ljava/io/IOException; {:try_start_2f3 .. :try_end_30b} :catch_32b
.catch Ljava/lang/RuntimeException; {:try_start_2f3 .. :try_end_30b} :catch_328
.catch Ljava/lang/Error; {:try_start_2f3 .. :try_end_30b} :catch_325
.catchall {:try_start_2f3 .. :try_end_30b} :catchall_466
move-object v6, v0
:goto_30c
if-nez v19, :cond_31c
.line 117
:try_start_30e
iget-object v0, v11, Lcom/amazonaws/http/HttpResponse;->c:Ljava/io/InputStream;
if-eqz v0, :cond_31c
.line 118
invoke-virtual {v0}, Ljava/io/InputStream;->close()V
:try_end_315
.catch Ljava/io/IOException; {:try_start_30e .. :try_end_315} :catch_316
goto :goto_31c
:catch_316
move-exception v0
.line 119
sget-object v1, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {v1, v9, v0}, Lcom/amazonaws/logging/Log;->d(Ljava/lang/Object;Ljava/lang/Throwable;)V
:cond_31c
:goto_31c
move-object v4, v6
move-object v3, v11
move-object/from16 v5, v18
move-object/from16 v18, v23
goto/16 :goto_457
.line 120
:cond_324
:try_start_324
throw v0
:try_end_325
.catch Ljava/io/IOException; {:try_start_324 .. :try_end_325} :catch_32b
.catch Ljava/lang/RuntimeException; {:try_start_324 .. :try_end_325} :catch_328
.catch Ljava/lang/Error; {:try_start_324 .. :try_end_325} :catch_325
.catchall {:try_start_324 .. :try_end_325} :catchall_466
:catch_325
move-exception v0
goto/16 :goto_36f
:catch_328
move-exception v0
goto/16 :goto_375
:catch_32b
move-exception v0
goto/16 :goto_377
:catch_32e
move-exception v0
move-object/from16 v18, v4
move-wide/from16 v27, v12
move-object/from16 v9, v22
move/from16 v20, v23
const/4 v12, 0x0
:goto_338
move-object/from16 v23, v6
move-object/from16 v22, v11
:goto_33c
move-object v11, v3
goto :goto_377
:catchall_33e
move-exception v0
move-object v11, v3
move-object/from16 v9, v22
goto :goto_369
:catch_343
move-exception v0
move-object v11, v3
move-object/from16 v9, v22
goto :goto_36f
:catch_348
move-exception v0
move-object v11, v3
move-object/from16 v9, v22
goto :goto_375
:catch_34d
move-exception v0
move-object/from16 v18, v4
move-wide/from16 v27, v12
move-object/from16 v9, v22
move/from16 v20, v23
move-object v12, v5
goto :goto_338
:catch_358
move-exception v0
move-object v9, v2
move-object/from16 v18, v4
move/from16 v20, v5
move-object/from16 v23, v6
move-object/from16 v22, v11
move-wide/from16 v27, v12
const/4 v12, 0x0
goto :goto_33c
:catchall_366
move-exception v0
move-object v9, v2
move-object v11, v3
:goto_369
move-object v3, v11
goto/16 :goto_3bb
:catch_36c
move-exception v0
move-object v9, v2
move-object v11, v3
:goto_36f
move-object v3, v11
goto/16 :goto_3be
:catch_372
move-exception v0
move-object v9, v2
move-object v11, v3
:goto_375
move-object v3, v11
goto :goto_3c7
:goto_377
move-object/from16 v13, v18
move-object/from16 v18, v23
goto/16 :goto_3dd
:catchall_37d
move-exception v0
move-object v9, v2
move-object/from16 v18, v4
move/from16 v20, v5
move-object/from16 v23, v6
move-object/from16 v22, v11
move-wide/from16 v27, v12
const/4 v12, 0x0
.line 121
:try_start_38a
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->HttpRequestTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
.line 122
throw v0
:try_end_390
.catch Ljava/io/IOException; {:try_start_38a .. :try_end_390} :catch_396
.catch Ljava/lang/RuntimeException; {:try_start_38a .. :try_end_390} :catch_394
.catch Ljava/lang/Error; {:try_start_38a .. :try_end_390} :catch_392
.catchall {:try_start_38a .. :try_end_390} :catchall_390
:catchall_390
move-exception v0
goto :goto_3bb
:catch_392
move-exception v0
goto :goto_3be
:catch_394
move-exception v0
goto :goto_3c7
:catch_396
move-exception v0
:goto_397
move-object/from16 v5, v18
goto :goto_3b5
:catch_39a
move-exception v0
move-object v9, v2
move-object/from16 v18, v4
move/from16 v20, v5
move-object/from16 v23, v6
move-object/from16 v22, v11
move-wide/from16 v27, v12
const/4 v12, 0x0
goto :goto_397
:catch_3a8
move-exception v0
move-object v9, v2
move/from16 v20, v5
move-object/from16 v23, v6
move-object/from16 v22, v11
move-wide/from16 v27, v12
const/4 v12, 0x0
move-object/from16 v5, v21
:goto_3b5
move-object/from16 v18, v23
goto :goto_3db
:catchall_3b8
move-exception v0
goto/16 :goto_195
:goto_3bb
move-object v1, v0
goto/16 :goto_469
.line 123
:goto_3be
:try_start_3be
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->Exception:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->c(Lcom/amazonaws/metrics/MetricType;)V
.line 124
invoke-virtual {v10, v1, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 125
throw v0
.line 126
:goto_3c7
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->Exception:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->c(Lcom/amazonaws/metrics/MetricType;)V
.line 127
invoke-virtual {v10, v1, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 128
throw v0
:try_end_3d0
.catchall {:try_start_3be .. :try_end_3d0} :catchall_390
:catch_3d0
move-exception v0
move-object v9, v2
move/from16 v20, v5
move-object/from16 v22, v11
move-wide/from16 v27, v12
const/4 v12, 0x0
move-object/from16 v5, v21
:goto_3db
move-object v11, v3
move-object v13, v5
.line 129
:goto_3dd
:try_start_3dd
sget-object v1, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {v1}, Lcom/amazonaws/logging/Log;->isDebugEnabled()Z
move-result v2
:try_end_3e3
.catchall {:try_start_3dd .. :try_end_3e3} :catchall_466
const-string v3, "Unable to execute HTTP request: "
if-eqz v2, :cond_3fd
.line 130
:try_start_3e7
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-interface {v1, v2, v0}, Lcom/amazonaws/logging/Log;->b(Ljava/lang/Object;Ljava/lang/Throwable;)V
.line 131
:cond_3fd
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->Exception:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->c(Lcom/amazonaws/metrics/MetricType;)V
.line 132
invoke-virtual {v10, v1, v0}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 133
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->AWSRequestID:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {v10, v1, v12}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 134
new-instance v6, Lcom/amazonaws/AmazonClientException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 135
invoke-virtual {v0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v6, v1, v0}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
.line 136
move-object v1, v8
check-cast v1, Lcom/amazonaws/DefaultRequest;
.line 137
iget-object v2, v1, Lcom/amazonaws/DefaultRequest;->g:Lcom/amazonaws/AmazonWebServiceRequest;
.line 138
iget-object v3, v13, Lcom/amazonaws/http/HttpRequest;->d:Ljava/io/InputStream;
.line 139
iget-object v1, v7, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 140
iget-object v5, v1, Lcom/amazonaws/ClientConfiguration;->c:Lcom/amazonaws/retry/RetryPolicy;
move-object/from16 v1, p0
move-object v4, v6
move-object/from16 v21, v5
move/from16 v5, v20
move-object/from16 v23, v6
move-object/from16 v6, v21
.line 141
invoke-virtual/range {v1 .. v6}, Lcom/amazonaws/http/AmazonHttpClient;->j(Lcom/amazonaws/AmazonWebServiceRequest;Ljava/io/InputStream;Lcom/amazonaws/AmazonClientException;ILcom/amazonaws/retry/RetryPolicy;)Z
move-result v1
if-eqz v1, :cond_465
.line 142
invoke-virtual {v7, v8, v0}, Lcom/amazonaws/http/AmazonHttpClient;->i(Lcom/amazonaws/Request;Ljava/lang/Exception;)V
:try_end_441
.catchall {:try_start_3e7 .. :try_end_441} :catchall_466
if-nez v19, :cond_453
if-eqz v11, :cond_453
.line 143
:try_start_445
iget-object v0, v11, Lcom/amazonaws/http/HttpResponse;->c:Ljava/io/InputStream;
if-eqz v0, :cond_453
.line 144
invoke-virtual {v0}, Ljava/io/InputStream;->close()V
:try_end_44c
.catch Ljava/io/IOException; {:try_start_445 .. :try_end_44c} :catch_44d
goto :goto_453
:catch_44d
move-exception v0
.line 145
sget-object v1, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {v1, v9, v0}, Lcom/amazonaws/logging/Log;->d(Ljava/lang/Object;Ljava/lang/Throwable;)V
:cond_453
:goto_453
move-object v3, v11
move-object v5, v13
move-object/from16 v4, v23
:goto_457
move-wide/from16 v1, v27
move-object/from16 v9, p4
move/from16 v0, v20
move-object/from16 v11, v22
move-object/from16 v12, v25
move-object/from16 v13, v26
goto/16 :goto_8b
.line 146
:cond_465
:try_start_465
throw v23
:try_end_466
.catchall {:try_start_465 .. :try_end_466} :catchall_466
:catchall_466
move-exception v0
goto/16 :goto_369
:goto_469
if-nez v19, :cond_47b
if-eqz v3, :cond_47b
.line 147
:try_start_46d
iget-object v0, v3, Lcom/amazonaws/http/HttpResponse;->c:Ljava/io/InputStream;
if-eqz v0, :cond_47b
.line 148
invoke-virtual {v0}, Ljava/io/InputStream;->close()V
:try_end_474
.catch Ljava/io/IOException; {:try_start_46d .. :try_end_474} :catch_475
goto :goto_47b
:catch_475
move-exception v0
.line 149
sget-object v2, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {v2, v9, v0}, Lcom/amazonaws/logging/Log;->d(Ljava/lang/Object;Ljava/lang/Throwable;)V
.line 150
:cond_47b
:goto_47b
throw v1
.end method
.method public final d(Lcom/amazonaws/Request;Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponse;)Lcom/amazonaws/AmazonServiceException;
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/http/HttpResponseHandler<",
"Lcom/amazonaws/AmazonServiceException;",
">;",
"Lcom/amazonaws/http/HttpResponse;",
")",
"Lcom/amazonaws/AmazonServiceException;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
iget v0, p3, Lcom/amazonaws/http/HttpResponse;->b:I
.line 2
:try_start_2
invoke-interface {p2, p3}, Lcom/amazonaws/http/HttpResponseHandler;->b(Lcom/amazonaws/http/HttpResponse;)Ljava/lang/Object;
move-result-object p2
check-cast p2, Lcom/amazonaws/AmazonServiceException;
.line 3
sget-object v1, Lcom/amazonaws/http/AmazonHttpClient;->d:Lcom/amazonaws/logging/Log;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Received error response: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-interface {v1, v2}, Lcom/amazonaws/logging/Log;->f(Ljava/lang/Object;)V
:try_end_22
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_22} :catch_23
goto :goto_5f
:catch_23
move-exception p2
const/16 v1, 0x19d
if-ne v0, v1, :cond_3d
.line 4
new-instance p2, Lcom/amazonaws/AmazonServiceException;
const-string p3, "Request entity too large"
invoke-direct {p2, p3}, Lcom/amazonaws/AmazonServiceException;-><init>(Ljava/lang/String;)V
.line 5
move-object v2, p1
check-cast v2, Lcom/amazonaws/DefaultRequest;
.line 6
iget-object v2, v2, Lcom/amazonaws/DefaultRequest;->f:Ljava/lang/String;
.line 7
iput-object v2, p2, Lcom/amazonaws/AmazonServiceException;->e:Ljava/lang/String;
.line 8
iput v1, p2, Lcom/amazonaws/AmazonServiceException;->d:I
.line 9
sget-object v1, Lcom/amazonaws/AmazonServiceException$ErrorType;->Client:Lcom/amazonaws/AmazonServiceException$ErrorType;
.line 10
iput-object p3, p2, Lcom/amazonaws/AmazonServiceException;->b:Ljava/lang/String;
goto :goto_5f
:cond_3d
const/16 v1, 0x1f7
if-ne v0, v1, :cond_6b
.line 11
iget-object v2, p3, Lcom/amazonaws/http/HttpResponse;->a:Ljava/lang/String;
const-string v3, "Service Unavailable"
.line 12
invoke-virtual {v3, v2}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_6b
.line 13
new-instance p2, Lcom/amazonaws/AmazonServiceException;
const-string p3, "Service unavailable"
invoke-direct {p2, p3}, Lcom/amazonaws/AmazonServiceException;-><init>(Ljava/lang/String;)V
.line 14
move-object v2, p1
check-cast v2, Lcom/amazonaws/DefaultRequest;
.line 15
iget-object v2, v2, Lcom/amazonaws/DefaultRequest;->f:Ljava/lang/String;
.line 16
iput-object v2, p2, Lcom/amazonaws/AmazonServiceException;->e:Ljava/lang/String;
.line 17
iput v1, p2, Lcom/amazonaws/AmazonServiceException;->d:I
.line 18
sget-object v1, Lcom/amazonaws/AmazonServiceException$ErrorType;->Service:Lcom/amazonaws/AmazonServiceException$ErrorType;
.line 19
iput-object p3, p2, Lcom/amazonaws/AmazonServiceException;->b:Ljava/lang/String;
.line 20
:goto_5f
iput v0, p2, Lcom/amazonaws/AmazonServiceException;->d:I
.line 21
check-cast p1, Lcom/amazonaws/DefaultRequest;
.line 22
iget-object p1, p1, Lcom/amazonaws/DefaultRequest;->f:Ljava/lang/String;
.line 23
iput-object p1, p2, Lcom/amazonaws/AmazonServiceException;->e:Ljava/lang/String;
.line 24
invoke-virtual {p2}, Ljava/lang/Throwable;->fillInStackTrace()Ljava/lang/Throwable;
return-object p2
.line 25
:cond_6b
instance-of p1, p2, Ljava/io/IOException;
if-eqz p1, :cond_72
.line 26
check-cast p2, Ljava/io/IOException;
throw p2
:cond_72
const-string p1, "Unable to unmarshall error response ("
.line 27
invoke-static {p1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
.line 28
invoke-virtual {p2}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "). Response Code: "
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v0, ", Response Text: "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 29
iget-object v0, p3, Lcom/amazonaws/http/HttpResponse;->a:Ljava/lang/String;
.line 30
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ", Response Headers: "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 31
iget-object p3, p3, Lcom/amazonaws/http/HttpResponse;->d:Ljava/util/Map;
.line 32
invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
.line 33
new-instance p3, Lcom/amazonaws/AmazonClientException;
invoke-direct {p3, p1, p2}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p3
.end method
.method public final e(Lcom/amazonaws/http/HttpResponseHandler;Lcom/amazonaws/http/HttpResponse;Lcom/amazonaws/http/ExecutionContext;)Ljava/lang/Object;
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/http/HttpResponseHandler<",
"Lcom/amazonaws/AmazonWebServiceResponse<",
"TT;>;>;",
"Lcom/amazonaws/http/HttpResponse;",
"Lcom/amazonaws/http/ExecutionContext;",
")TT;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
const-string v0, ", Response Text: "
.line 1
:try_start_2
iget-object p3, p3, Lcom/amazonaws/http/ExecutionContext;->a:Lcom/amazonaws/util/AWSRequestMetrics;
.line 2
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->ResponseProcessingTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {p3, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->e(Lcom/amazonaws/metrics/MetricType;)V
:try_end_9
.catch Ljava/io/IOException; {:try_start_2 .. :try_end_9} :catch_9c
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_9} :catch_72
.line 3
:try_start_9
invoke-interface {p1, p2}, Lcom/amazonaws/http/HttpResponseHandler;->b(Lcom/amazonaws/http/HttpResponse;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/amazonaws/AmazonWebServiceResponse;
:try_end_f
.catchall {:try_start_9 .. :try_end_f} :catchall_6b
.line 4
:try_start_f
invoke-virtual {p3, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
if-eqz p1, :cond_4a
.line 5
sget-object v1, Lcom/amazonaws/http/AmazonHttpClient;->d:Lcom/amazonaws/logging/Log;
invoke-interface {v1}, Lcom/amazonaws/logging/Log;->isDebugEnabled()Z
move-result v2
if-eqz v2, :cond_3e
.line 6
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Received successful response: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 7
iget v3, p2, Lcom/amazonaws/http/HttpResponse;->b:I
.line 8
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v3, ", AWS Request ID: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 9
invoke-virtual {p1}, Lcom/amazonaws/AmazonWebServiceResponse;->a()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
.line 10
invoke-interface {v1, v2}, Lcom/amazonaws/logging/Log;->f(Ljava/lang/Object;)V
.line 11
:cond_3e
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->AWSRequestID:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {p1}, Lcom/amazonaws/AmazonWebServiceResponse;->a()Ljava/lang/String;
move-result-object v2
invoke-virtual {p3, v1, v2}, Lcom/amazonaws/util/AWSRequestMetrics;->a(Lcom/amazonaws/metrics/MetricType;Ljava/lang/Object;)V
.line 12
iget-object p1, p1, Lcom/amazonaws/AmazonWebServiceResponse;->a:Ljava/lang/Object;
return-object p1
.line 13
:cond_4a
new-instance p1, Ljava/lang/RuntimeException;
new-instance p3, Ljava/lang/StringBuilder;
invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Unable to unmarshall response metadata. Response Code: "
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 14
iget v1, p2, Lcom/amazonaws/http/HttpResponse;->b:I
.line 15
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 16
iget-object v1, p2, Lcom/amazonaws/http/HttpResponse;->a:Ljava/lang/String;
.line 17
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-direct {p1, p3}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:catchall_6b
move-exception p1
.line 18
sget-object v1, Lcom/amazonaws/util/AWSRequestMetrics$Field;->ResponseProcessingTime:Lcom/amazonaws/util/AWSRequestMetrics$Field;
invoke-virtual {p3, v1}, Lcom/amazonaws/util/AWSRequestMetrics;->b(Lcom/amazonaws/metrics/MetricType;)V
.line 19
throw p1
:try_end_72
.catch Ljava/io/IOException; {:try_start_f .. :try_end_72} :catch_9c
.catch Ljava/lang/Exception; {:try_start_f .. :try_end_72} :catch_72
:catch_72
move-exception p1
const-string p3, "Unable to unmarshall response ("
.line 20
invoke-static {p3}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p3
.line 21
invoke-virtual {p1}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "). Response Code: "
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 22
iget v1, p2, Lcom/amazonaws/http/HttpResponse;->b:I
.line 23
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 24
iget-object p2, p2, Lcom/amazonaws/http/HttpResponse;->a:Ljava/lang/String;
.line 25
invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
.line 26
new-instance p3, Lcom/amazonaws/AmazonClientException;
invoke-direct {p3, p2, p1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p3
:catch_9c
move-exception p1
.line 27
throw p1
.end method
.method public final finalize()V
.registers 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Throwable;
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/http/AmazonHttpClient;->a:Lcom/amazonaws/http/HttpClient;
invoke-static {v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
.line 2
invoke-super {p0}, Ljava/lang/Object;->finalize()V
return-void
.end method
.method public final g(Lcom/amazonaws/http/HttpResponse;Lcom/amazonaws/AmazonServiceException;)J
.registers 6
.line 1
new-instance v0, Ljava/util/Date;
invoke-direct {v0}, Ljava/util/Date;-><init>()V
.line 2
iget-object p1, p1, Lcom/amazonaws/http/HttpResponse;->d:Ljava/util/Map;
const-string v1, "Date"
.line 3
invoke-interface {p1, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/String;
if-eqz p1, :cond_1f
.line 4
:try_start_11
invoke-virtual {p1}, Ljava/lang/String;->isEmpty()Z
move-result v1
:try_end_15
.catch Ljava/lang/RuntimeException; {:try_start_11 .. :try_end_15} :catch_56
if-eqz v1, :cond_18
goto :goto_1f
.line 5
:cond_18
:try_start_18
invoke-static {p1}, Lcom/amazonaws/util/DateUtils;->e(Ljava/lang/String;)Ljava/util/Date;
move-result-object p1
:try_end_1c
.catch Ljava/lang/RuntimeException; {:try_start_18 .. :try_end_1c} :catch_1d
goto :goto_49
:catch_1d
move-exception p2
goto :goto_59
.line 6
:cond_1f
:goto_1f
:try_start_1f
invoke-virtual {p2}, Lcom/amazonaws/AmazonServiceException;->getMessage()Ljava/lang/String;
move-result-object p1
const-string p2, "("
.line 7
invoke-virtual {p1, p2}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result p2
const-string v1, " + 15"
.line 8
invoke-virtual {p1, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_36
.line 9
invoke-virtual {p1, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v1
goto :goto_3c
:cond_36
const-string v1, " - 15"
.line 10
invoke-virtual {p1, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v1
:goto_3c
add-int/lit8 p2, p2, 0x1
.line 11
invoke-virtual {p1, p2, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object p1
:try_end_42
.catch Ljava/lang/RuntimeException; {:try_start_1f .. :try_end_42} :catch_56
:try_start_42
const-string/jumbo p2, "yyyyMMdd\'T\'HHmmss\'Z\'"
.line 12
invoke-static {p2, p1}, Lcom/amazonaws/util/DateUtils;->d(Ljava/lang/String;Ljava/lang/String;)Ljava/util/Date;
move-result-object p1
:try_end_49
.catch Ljava/lang/RuntimeException; {:try_start_42 .. :try_end_49} :catch_1d
.line 13
:goto_49
invoke-virtual {v0}, Ljava/util/Date;->getTime()J
move-result-wide v0
invoke-virtual {p1}, Ljava/util/Date;->getTime()J
move-result-wide p1
sub-long/2addr v0, p1
const-wide/16 p1, 0x3e8
.line 14
div-long/2addr v0, p1
return-wide v0
:catch_56
move-exception p1
move-object p2, p1
const/4 p1, 0x0
.line 15
:goto_59
sget-object v0, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Unable to parse clock skew offset from response: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-interface {v0, p1, p2}, Lcom/amazonaws/logging/Log;->d(Ljava/lang/Object;Ljava/lang/Throwable;)V
const-wide/16 p1, 0x0
return-wide p1
.end method
.method public final h(Lcom/amazonaws/AmazonWebServiceRequest;Lcom/amazonaws/AmazonClientException;ILcom/amazonaws/retry/RetryPolicy;)J
.registers 7
add-int/lit8 p3, p3, -0x1
add-int/lit8 p3, p3, -0x1
.line 1
iget-object p1, p4, Lcom/amazonaws/retry/RetryPolicy;->b:Lcom/amazonaws/retry/RetryPolicy$BackoffStrategy;
.line 2
invoke-interface {p1, p3}, Lcom/amazonaws/retry/RetryPolicy$BackoffStrategy;->a(I)J
move-result-wide p1
.line 3
sget-object p4, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {p4}, Lcom/amazonaws/logging/Log;->isDebugEnabled()Z
move-result v0
if-eqz v0, :cond_2e
.line 4
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Retriable error detected, will retry in "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
const-string v1, "ms, attempt number: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-interface {p4, p3}, Lcom/amazonaws/logging/Log;->f(Ljava/lang/Object;)V
.line 5
:cond_2e
:try_start_2e
invoke-static {p1, p2}, Ljava/lang/Thread;->sleep(J)V
:try_end_31
.catch Ljava/lang/InterruptedException; {:try_start_2e .. :try_end_31} :catch_32
return-wide p1
:catch_32
move-exception p1
.line 6
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Thread;->interrupt()V
.line 7
new-instance p2, Lcom/amazonaws/AmazonClientException;
invoke-virtual {p1}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object p3
invoke-direct {p2, p3, p1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
.end method
.method public final i(Lcom/amazonaws/Request;Ljava/lang/Exception;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Ljava/lang/Exception;",
")V"
}
.end annotation
.line 1
move-object v0, p1
check-cast v0, Lcom/amazonaws/DefaultRequest;
.line 2
iget-object v0, v0, Lcom/amazonaws/DefaultRequest;->i:Ljava/io/InputStream;
if-nez v0, :cond_8
return-void
.line 3
:cond_8
invoke-virtual {v0}, Ljava/io/InputStream;->markSupported()Z
move-result v0
if-eqz v0, :cond_1e
.line 4
:try_start_e
check-cast p1, Lcom/amazonaws/DefaultRequest;
.line 5
iget-object p1, p1, Lcom/amazonaws/DefaultRequest;->i:Ljava/io/InputStream;
.line 6
invoke-virtual {p1}, Ljava/io/InputStream;->reset()V
:try_end_15
.catch Ljava/io/IOException; {:try_start_e .. :try_end_15} :catch_16
return-void
.line 7
:catch_16
new-instance p1, Lcom/amazonaws/AmazonClientException;
const-string v0, "Encountered an exception and couldn\'t reset the stream to retry"
invoke-direct {p1, v0, p2}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
.line 8
:cond_1e
new-instance p1, Lcom/amazonaws/AmazonClientException;
const-string v0, "Encountered an exception and stream is not resettable"
invoke-direct {p1, v0, p2}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
.end method
.method public final j(Lcom/amazonaws/AmazonWebServiceRequest;Ljava/io/InputStream;Lcom/amazonaws/AmazonClientException;ILcom/amazonaws/retry/RetryPolicy;)Z
.registers 7
add-int/lit8 p4, p4, -0x1
.line 1
iget-object p1, p0, Lcom/amazonaws/http/AmazonHttpClient;->b:Lcom/amazonaws/ClientConfiguration;
.line 2
iget p1, p1, Lcom/amazonaws/ClientConfiguration;->b:I
if-ltz p1, :cond_c
.line 3
iget-boolean v0, p5, Lcom/amazonaws/retry/RetryPolicy;->d:Z
if-nez v0, :cond_e
.line 4
:cond_c
iget p1, p5, Lcom/amazonaws/retry/RetryPolicy;->c:I
:cond_e
const/4 v0, 0x0
if-lt p4, p1, :cond_12
return v0
:cond_12
if-eqz p2, :cond_28
.line 5
invoke-virtual {p2}, Ljava/io/InputStream;->markSupported()Z
move-result p1
if-nez p1, :cond_28
.line 6
sget-object p1, Lcom/amazonaws/http/AmazonHttpClient;->e:Lcom/amazonaws/logging/Log;
invoke-interface {p1}, Lcom/amazonaws/logging/Log;->isDebugEnabled()Z
move-result p2
if-eqz p2, :cond_27
const-string p2, "Content not repeatable"
.line 7
invoke-interface {p1, p2}, Lcom/amazonaws/logging/Log;->f(Ljava/lang/Object;)V
:cond_27
return v0
.line 8
:cond_28
iget-object p1, p5, Lcom/amazonaws/retry/RetryPolicy;->a:Lcom/amazonaws/retry/RetryPolicy$RetryCondition;
.line 9
invoke-interface {p1, p3, p4}, Lcom/amazonaws/retry/RetryPolicy$RetryCondition;->a(Lcom/amazonaws/AmazonClientException;I)Z
move-result p1
return p1
.end method