This commit is contained in:
2022-06-10 21:38:30 +09:00
commit 27f5152838
51323 changed files with 12934539 additions and 0 deletions
+856
View File
@@ -0,0 +1,856 @@
.class public Lcom/amazonaws/auth/AWS3Signer;
.super Lcom/amazonaws/auth/AbstractAWSSigner;
.source "AWS3Signer.java"
# annotations
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# static fields
.field private static final AUTHORIZATION_HEADER:Ljava/lang/String; = "X-Amzn-Authorization"
.field private static final HTTPS_SCHEME:Ljava/lang/String; = "AWS3-HTTPS"
.field private static final HTTP_SCHEME:Ljava/lang/String; = "AWS3"
.field private static final NONCE_HEADER:Ljava/lang/String; = "x-amz-nonce"
.field private static final log:Lcom/amazonaws/logging/Log;
# instance fields
.field private overriddenDate:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/AWS3Signer;
invoke-static {v0}, Lcom/amazonaws/logging/LogFactory;->getLog(Ljava/lang/Class;)Lcom/amazonaws/logging/Log;
move-result-object v0
sput-object v0, Lcom/amazonaws/auth/AWS3Signer;->log:Lcom/amazonaws/logging/Log;
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/AbstractAWSSigner;-><init>()V
return-void
.end method
.method private getSignedHeadersComponent(Lcom/amazonaws/Request;)Ljava/lang/String;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;)",
"Ljava/lang/String;"
}
.end annotation
const-string v0, "SignedHeaders="
.line 1
invoke-static {v0}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
.line 2
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AWS3Signer;->getHeadersForStringToSign(Lcom/amazonaws/Request;)Ljava/util/List;
move-result-object p1
invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p1
const/4 v1, 0x1
:goto_0
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
if-nez v1, :cond_0
const-string v1, ";"
.line 3
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 4
:cond_0
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 v1, 0x0
goto :goto_0
.line 5
:cond_1
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
# virtual methods
.method public addSessionCredentials(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSSessionCredentials;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSSessionCredentials;",
")V"
}
.end annotation
.line 1
invoke-interface {p2}, Lcom/amazonaws/auth/AWSSessionCredentials;->getSessionToken()Ljava/lang/String;
move-result-object p2
const-string v0, "x-amz-security-token"
invoke-interface {p1, v0, p2}, Lcom/amazonaws/Request;->addHeader(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public getCanonicalizedHeadersForStringToSign(Lcom/amazonaws/Request;)Ljava/lang/String;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;)",
"Ljava/lang/String;"
}
.end annotation
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AWS3Signer;->getHeadersForStringToSign(Lcom/amazonaws/Request;)Ljava/util/List;
move-result-object v0
const/4 v1, 0x0
.line 2
:goto_0
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v2
if-ge v1, v2, :cond_0
.line 3
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
invoke-static {v2}, Lcom/amazonaws/util/StringUtils;->lowerCase(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-interface {v0, v1, v2}, Ljava/util/List;->set(ILjava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 4
:cond_0
new-instance v1, Ljava/util/TreeMap;
invoke-direct {v1}, Ljava/util/TreeMap;-><init>()V
.line 5
invoke-interface {p1}, Lcom/amazonaws/Request;->getHeaders()Ljava/util/Map;
move-result-object p1
invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p1
invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p1
:cond_1
:goto_1
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_2
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/Map$Entry;
.line 6
invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
invoke-static {v3}, Lcom/amazonaws/util/StringUtils;->lowerCase(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-interface {v0, v3}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_1
.line 7
invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
invoke-static {v3}, Lcom/amazonaws/util/StringUtils;->lowerCase(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v2
invoke-virtual {v1, v3, v2}, Ljava/util/TreeMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_1
.line 8
:cond_2
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
.line 9
invoke-virtual {v1}, Ljava/util/TreeMap;->entrySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_2
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_3
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map$Entry;
.line 10
invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
invoke-static {v2}, Lcom/amazonaws/util/StringUtils;->lowerCase(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ":"
invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 11
invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "\n"
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_2
.line 12
:cond_3
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public getHeadersForStringToSign(Lcom/amazonaws/Request;)Ljava/util/List;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;)",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 2
invoke-interface {p1}, Lcom/amazonaws/Request;->getHeaders()Ljava/util/Map;
move-result-object p1
invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p1
invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p1
:cond_0
:goto_0
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map$Entry;
.line 3
invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
.line 4
invoke-static {v1}, Lcom/amazonaws/util/StringUtils;->lowerCase(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
const-string v3, "x-amz"
.line 5
invoke-virtual {v2, v3}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v3
if-nez v3, :cond_1
const-string v3, "host"
.line 6
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_0
.line 7
:cond_1
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
goto :goto_0
.line 8
:cond_2
invoke-static {v0}, Ljava/util/Collections;->sort(Ljava/util/List;)V
return-object v0
.end method
.method public overrideDate(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/AWS3Signer;->overriddenDate:Ljava/lang/String;
return-void
.end method
.method public shouldUseHttpsScheme(Lcom/amazonaws/Request;)Z
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;)Z"
}
.end annotation
.line 1
:try_start_0
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object p1
invoke-virtual {p1}, Ljava/net/URI;->toURL()Ljava/net/URL;
move-result-object p1
invoke-virtual {p1}, Ljava/net/URL;->getProtocol()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Lcom/amazonaws/util/StringUtils;->lowerCase(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "http"
.line 2
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
const/4 p1, 0x0
return p1
:cond_0
const-string v0, "https"
.line 3
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1
const/4 p1, 0x1
return p1
.line 4
:cond_1
new-instance v0, Lcom/amazonaws/AmazonClientException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Unknown request endpoint protocol encountered while signing request: "
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-direct {v0, p1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_0
.catch Ljava/net/MalformedURLException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
move-exception p1
.line 5
new-instance v0, Lcom/amazonaws/AmazonClientException;
const-string v1, "Unable to parse request endpoint during signing"
invoke-direct {v0, v1, p1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
.end method
.method public sign(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSCredentials;)V
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSCredentials;",
")V"
}
.end annotation
.line 1
instance-of v0, p2, Lcom/amazonaws/auth/AnonymousAWSCredentials;
if-eqz v0, :cond_0
return-void
.line 2
:cond_0
invoke-virtual {p0, p2}, Lcom/amazonaws/auth/AbstractAWSSigner;->sanitizeCredentials(Lcom/amazonaws/auth/AWSCredentials;)Lcom/amazonaws/auth/AWSCredentials;
move-result-object p2
.line 3
sget-object v0, Lcom/amazonaws/auth/SigningAlgorithm;->HmacSHA256:Lcom/amazonaws/auth/SigningAlgorithm;
.line 4
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object v1
invoke-virtual {v1}, Ljava/util/UUID;->toString()Ljava/lang/String;
.line 5
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getTimeOffset(Lcom/amazonaws/Request;)I
move-result v1
.line 6
invoke-virtual {p0, v1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getSignatureDate(I)Ljava/util/Date;
move-result-object v1
.line 7
invoke-static {v1}, Lcom/amazonaws/util/DateUtils;->formatRFC822Date(Ljava/util/Date;)Ljava/lang/String;
move-result-object v1
.line 8
iget-object v2, p0, Lcom/amazonaws/auth/AWS3Signer;->overriddenDate:Ljava/lang/String;
if-eqz v2, :cond_1
move-object v1, v2
:cond_1
const-string v2, "Date"
.line 9
invoke-interface {p1, v2, v1}, Lcom/amazonaws/Request;->addHeader(Ljava/lang/String;Ljava/lang/String;)V
const-string v2, "X-Amz-Date"
.line 10
invoke-interface {p1, v2, v1}, Lcom/amazonaws/Request;->addHeader(Ljava/lang/String;Ljava/lang/String;)V
.line 11
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v1
invoke-virtual {v1}, Ljava/net/URI;->getHost()Ljava/lang/String;
move-result-object v1
.line 12
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v2
invoke-static {v2}, Lcom/amazonaws/util/HttpUtils;->isUsingNonDefaultPort(Ljava/net/URI;)Z
move-result v2
if-eqz v2, :cond_2
const-string v2, ":"
.line 13
invoke-static {v1, v2}, Landroid/support/v4/media/e;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v2
invoke-virtual {v2}, Ljava/net/URI;->getPort()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
:cond_2
const-string v2, "Host"
.line 14
invoke-interface {p1, v2, v1}, Lcom/amazonaws/Request;->addHeader(Ljava/lang/String;Ljava/lang/String;)V
.line 15
instance-of v1, p2, Lcom/amazonaws/auth/AWSSessionCredentials;
if-eqz v1, :cond_3
.line 16
move-object v1, p2
check-cast v1, Lcom/amazonaws/auth/AWSSessionCredentials;
invoke-virtual {p0, p1, v1}, Lcom/amazonaws/auth/AWS3Signer;->addSessionCredentials(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSSessionCredentials;)V
.line 17
:cond_3
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v1
invoke-virtual {v1}, Ljava/net/URI;->getPath()Ljava/lang/String;
move-result-object v1
.line 18
invoke-interface {p1}, Lcom/amazonaws/Request;->getResourcePath()Ljava/lang/String;
move-result-object v2
.line 19
invoke-static {v1, v2}, Lcom/amazonaws/util/HttpUtils;->appendUri(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 20
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-interface {p1}, Lcom/amazonaws/Request;->getHttpMethod()Lcom/amazonaws/http/HttpMethodName;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, "\n"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 21
invoke-virtual {p0, v1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getCanonicalizedResourcePath(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 22
invoke-interface {p1}, Lcom/amazonaws/Request;->getParameters()Ljava/util/Map;
move-result-object v1
invoke-virtual {p0, v1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getCanonicalizedQueryString(Ljava/util/Map;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 23
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AWS3Signer;->getCanonicalizedHeadersForStringToSign(Lcom/amazonaws/Request;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 24
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getRequestPayloadWithoutQueryParams(Lcom/amazonaws/Request;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 25
invoke-virtual {p0, v1}, Lcom/amazonaws/auth/AbstractAWSSigner;->hash(Ljava/lang/String;)[B
move-result-object v2
.line 26
sget-object v3, Lcom/amazonaws/auth/AWS3Signer;->log:Lcom/amazonaws/logging/Log;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "Calculated StringToSign: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-interface {v3, v1}, Lcom/amazonaws/logging/Log;->debug(Ljava/lang/Object;)V
.line 27
invoke-interface {p2}, Lcom/amazonaws/auth/AWSCredentials;->getAWSSecretKey()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v2, v1, v0}, Lcom/amazonaws/auth/AbstractAWSSigner;->signAndBase64Encode([BLjava/lang/String;Lcom/amazonaws/auth/SigningAlgorithm;)Ljava/lang/String;
move-result-object v1
const-string v2, "AWS3"
const-string v3, " "
.line 28
invoke-static {v2, v3}, Landroid/support/v4/media/e;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, "AWSAccessKeyId="
.line 29
invoke-static {v3}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-interface {p2}, Lcom/amazonaws/auth/AWSCredentials;->getAWSAccessKeyId()Ljava/lang/String;
move-result-object p2
invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p2, ","
invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 30
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Algorithm="
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 31
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-direct {p0, p1}, Lcom/amazonaws/auth/AWS3Signer;->getSignedHeadersComponent(Lcom/amazonaws/Request;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 32
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Signature="
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 33
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
const-string v0, "X-Amzn-Authorization"
invoke-interface {p1, v0, p2}, Lcom/amazonaws/Request;->addHeader(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
@@ -0,0 +1,107 @@
.class public Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;
.super Ljava/lang/Object;
.source "AWS4Signer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/AWS4Signer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "HeaderSigningResult"
.end annotation
# instance fields
.field private final dateTime:Ljava/lang/String;
.field private final kSigning:[B
.field private final scope:Ljava/lang/String;
.field private final signature:[B
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;[B[B)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->dateTime:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->scope:Ljava/lang/String;
.line 4
iput-object p3, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->kSigning:[B
.line 5
iput-object p4, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->signature:[B
return-void
.end method
# virtual methods
.method public getDateTime()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->dateTime:Ljava/lang/String;
return-object v0
.end method
.method public getKSigning()[B
.locals 4
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->kSigning:[B
array-length v1, v0
new-array v1, v1, [B
.line 2
array-length v2, v0
const/4 v3, 0x0
invoke-static {v0, v3, v1, v3, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object v1
.end method
.method public getScope()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->scope:Ljava/lang/String;
return-object v0
.end method
.method public getSignature()[B
.locals 4
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWS4Signer$HeaderSigningResult;->signature:[B
array-length v1, v0
new-array v1, v1, [B
.line 2
array-length v2, v0
const/4 v3, 0x0
invoke-static {v0, v3, v1, v3, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object v1
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,92 @@
.class public abstract Lcom/amazonaws/auth/AWSAbstractCognitoDeveloperIdentityProvider;
.super Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;
.source "AWSAbstractCognitoDeveloperIdentityProvider.java"
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 1
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoDeveloperIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 3
new-instance v0, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p3}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoDeveloperIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;Lcom/amazonaws/regions/Regions;)V
.locals 2
.line 4
new-instance v0, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p3}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoDeveloperIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
.line 5
iget-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->cib:Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;
invoke-static {p4}, Lcom/amazonaws/regions/Region;->getRegion(Lcom/amazonaws/regions/Regions;)Lcom/amazonaws/regions/Region;
move-result-object p2
invoke-interface {p1, p2}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;->setRegion(Lcom/amazonaws/regions/Region;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/regions/Regions;)V
.locals 1
.line 2
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, v0, p3}, Lcom/amazonaws/auth/AWSAbstractCognitoDeveloperIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;Lcom/amazonaws/regions/Regions;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
.locals 0
.line 6
invoke-direct {p0, p1, p2, p3}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
# virtual methods
.method public abstract getProviderName()Ljava/lang/String;
.end method
@@ -0,0 +1,568 @@
.class public abstract Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;
.super Ljava/lang/Object;
.source "AWSAbstractCognitoIdentityProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCognitoIdentityProvider;
# instance fields
.field private final accountId:Ljava/lang/String;
.field public final cib:Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;
.field public identityId:Ljava/lang/String;
.field private final identityPoolId:Ljava/lang/String;
.field public listeners:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/IdentityChangedListener;",
">;"
}
.end annotation
.end field
.field public loginsMap:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field public token:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 10
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 7
new-instance v0, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p3}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;Lcom/amazonaws/regions/Regions;)V
.locals 2
.line 8
new-instance v0, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p3}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
.line 9
iget-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->cib:Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;
invoke-static {p4}, Lcom/amazonaws/regions/Region;->getRegion(Lcom/amazonaws/regions/Regions;)Lcom/amazonaws/regions/Region;
move-result-object p2
invoke-interface {p1, p2}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;->setRegion(Lcom/amazonaws/regions/Region;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/regions/Regions;)V
.locals 1
.line 11
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, v0, p3}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;Lcom/amazonaws/regions/Regions;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->accountId:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityPoolId:Ljava/lang/String;
.line 4
new-instance p1, Ljava/util/HashMap;
invoke-direct {p1}, Ljava/util/HashMap;-><init>()V
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->loginsMap:Ljava/util/Map;
.line 5
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->listeners:Ljava/util/List;
.line 6
iput-object p3, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->cib:Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;
return-void
.end method
# virtual methods
.method public appendUserAgent(Lcom/amazonaws/AmazonWebServiceRequest;Ljava/lang/String;)V
.locals 0
.line 1
invoke-virtual {p1}, Lcom/amazonaws/AmazonWebServiceRequest;->getRequestClientOptions()Lcom/amazonaws/RequestClientOptions;
move-result-object p1
invoke-virtual {p1, p2}, Lcom/amazonaws/RequestClientOptions;->appendUserAgent(Ljava/lang/String;)V
return-void
.end method
.method public clearListeners()V
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->listeners:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
return-void
.end method
.method public getAccountId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->accountId:Ljava/lang/String;
return-object v0
.end method
.method public getIdentityId()Ljava/lang/String;
.locals 2
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
if-nez v0, :cond_0
.line 2
new-instance v0, Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;
invoke-direct {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;-><init>()V
.line 3
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getAccountId()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;->withAccountId(Ljava/lang/String;)Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;
move-result-object v0
.line 4
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getIdentityPoolId()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;->withIdentityPoolId(Ljava/lang/String;)Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;
move-result-object v0
iget-object v1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->loginsMap:Ljava/util/Map;
.line 5
invoke-virtual {v0, v1}, Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;->withLogins(Ljava/util/Map;)Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;
move-result-object v0
.line 6
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getUserAgent()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v0, v1}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->appendUserAgent(Lcom/amazonaws/AmazonWebServiceRequest;Ljava/lang/String;)V
.line 7
iget-object v1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->cib:Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;
invoke-interface {v1, v0}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;->getId(Lcom/amazonaws/services/cognitoidentity/model/GetIdRequest;)Lcom/amazonaws/services/cognitoidentity/model/GetIdResult;
move-result-object v0
.line 8
invoke-virtual {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetIdResult;->getIdentityId()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_0
.line 9
invoke-virtual {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetIdResult;->getIdentityId()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityChanged(Ljava/lang/String;)V
.line 10
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
return-object v0
.end method
.method public getIdentityPoolId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityPoolId:Ljava/lang/String;
return-object v0
.end method
.method public getLogins()Ljava/util/Map;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->loginsMap:Ljava/util/Map;
return-object v0
.end method
.method public abstract getProviderName()Ljava/lang/String;
.end method
.method public getToken()Ljava/lang/String;
.locals 3
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->token:Ljava/lang/String;
if-nez v0, :cond_1
.line 2
new-instance v0, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;
invoke-direct {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;-><init>()V
.line 3
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getIdentityId()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;->withIdentityId(Ljava/lang/String;)Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;
move-result-object v0
iget-object v1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->loginsMap:Ljava/util/Map;
invoke-virtual {v0, v1}, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;->withLogins(Ljava/util/Map;)Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;
move-result-object v0
.line 4
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getUserAgent()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v0, v1}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->appendUserAgent(Lcom/amazonaws/AmazonWebServiceRequest;Ljava/lang/String;)V
.line 5
iget-object v1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->cib:Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;
.line 6
invoke-interface {v1, v0}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;->getOpenIdToken(Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenRequest;)Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenResult;
move-result-object v0
.line 7
invoke-virtual {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenResult;->getIdentityId()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getIdentityId()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_0
.line 8
invoke-virtual {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenResult;->getIdentityId()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v1}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityChanged(Ljava/lang/String;)V
.line 9
:cond_0
invoke-virtual {v0}, Lcom/amazonaws/services/cognitoidentity/model/GetOpenIdTokenResult;->getToken()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->token:Ljava/lang/String;
.line 10
:cond_1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->token:Ljava/lang/String;
return-object v0
.end method
.method public getUserAgent()Ljava/lang/String;
.locals 1
const-string v0, ""
return-object v0
.end method
.method public identityChanged(Ljava/lang/String;)V
.locals 3
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
if-eqz v0, :cond_0
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
return-void
.line 2
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
.line 3
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
.line 4
iget-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->listeners:Ljava/util/List;
invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p1
:goto_0
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/amazonaws/auth/IdentityChangedListener;
.line 5
iget-object v2, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
invoke-interface {v1, v0, v2}, Lcom/amazonaws/auth/IdentityChangedListener;->identityChanged(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_0
:cond_1
return-void
.end method
.method public isAuthenticated()Z
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->loginsMap:Ljava/util/Map;
if-eqz v0, :cond_0
invoke-interface {v0}, Ljava/util/Map;->size()I
move-result v0
if-lez v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method
.method public refresh()Ljava/lang/String;
.locals 2
.line 1
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getIdentityId()Ljava/lang/String;
.line 2
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getToken()Ljava/lang/String;
move-result-object v0
.line 3
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getIdentityId()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v1, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->update(Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
.method public registerIdentityChangedListener(Lcom/amazonaws/auth/IdentityChangedListener;)V
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->listeners:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public setIdentityId(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
return-void
.end method
.method public setLogins(Ljava/util/Map;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;)V"
}
.end annotation
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->loginsMap:Ljava/util/Map;
return-void
.end method
.method public setToken(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->token:Ljava/lang/String;
return-void
.end method
.method public unregisterIdentityChangedListener(Lcom/amazonaws/auth/IdentityChangedListener;)V
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->listeners:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
return-void
.end method
.method public update(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityId:Ljava/lang/String;
if-eqz v0, :cond_0
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_1
.line 2
:cond_0
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->identityChanged(Ljava/lang/String;)V
.line 3
:cond_1
iget-object p1, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->token:Ljava/lang/String;
if-eqz p1, :cond_2
invoke-virtual {p1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-nez p1, :cond_3
.line 4
:cond_2
iput-object p2, p0, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->token:Ljava/lang/String;
:cond_3
return-void
.end method
@@ -0,0 +1,70 @@
.class public Lcom/amazonaws/auth/AWSBasicCognitoIdentityProvider;
.super Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;
.source "AWSBasicCognitoIdentityProvider.java"
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSBasicCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 2
.line 2
new-instance v0, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p3}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSBasicCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
.locals 0
.line 3
invoke-direct {p0, p1, p2, p3}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
# virtual methods
.method public getProviderName()Ljava/lang/String;
.locals 1
const-string v0, "Cognito"
return-object v0
.end method
.method public refresh()Ljava/lang/String;
.locals 1
const/4 v0, 0x0
.line 1
invoke-virtual {p0, v0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->setToken(Ljava/lang/String;)V
.line 2
invoke-super {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->refresh()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,53 @@
.class public interface abstract Lcom/amazonaws/auth/AWSCognitoIdentityProvider;
.super Ljava/lang/Object;
.source "AWSCognitoIdentityProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSIdentityProvider;
# virtual methods
.method public abstract clearListeners()V
.end method
.method public abstract getIdentityId()Ljava/lang/String;
.end method
.method public abstract getIdentityPoolId()Ljava/lang/String;
.end method
.method public abstract getLogins()Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
.end method
.method public abstract identityChanged(Ljava/lang/String;)V
.end method
.method public abstract isAuthenticated()Z
.end method
.method public abstract registerIdentityChangedListener(Lcom/amazonaws/auth/IdentityChangedListener;)V
.end method
.method public abstract setLogins(Ljava/util/Map;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;)V"
}
.end annotation
.end method
.method public abstract unregisterIdentityChangedListener(Lcom/amazonaws/auth/IdentityChangedListener;)V
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/AWSCredentials;
.super Ljava/lang/Object;
.source "AWSCredentials.java"
# virtual methods
.method public abstract getAWSAccessKeyId()Ljava/lang/String;
.end method
.method public abstract getAWSSecretKey()Ljava/lang/String;
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/AWSCredentialsProvider;
.super Ljava/lang/Object;
.source "AWSCredentialsProvider.java"
# virtual methods
.method public abstract getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.end method
.method public abstract refresh()V
.end method
@@ -0,0 +1,293 @@
.class public Lcom/amazonaws/auth/AWSCredentialsProviderChain;
.super Ljava/lang/Object;
.source "AWSCredentialsProviderChain.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# static fields
.field private static final log:Lcom/amazonaws/logging/Log;
# instance fields
.field private credentialsProviders:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/AWSCredentialsProvider;",
">;"
}
.end annotation
.end field
.field private lastUsedProvider:Lcom/amazonaws/auth/AWSCredentialsProvider;
.field private reuseLastProvider:Z
# direct methods
.method public static constructor <clinit>()V
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;
invoke-static {v0}, Lcom/amazonaws/logging/LogFactory;->getLog(Ljava/lang/Class;)Lcom/amazonaws/logging/Log;
move-result-object v0
sput-object v0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->log:Lcom/amazonaws/logging/Log;
return-void
.end method
.method public varargs constructor <init>([Lcom/amazonaws/auth/AWSCredentialsProvider;)V
.locals 4
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->credentialsProviders:Ljava/util/List;
const/4 v0, 0x1
.line 3
iput-boolean v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->reuseLastProvider:Z
if-eqz p1, :cond_1
.line 4
array-length v0, p1
if-eqz v0, :cond_1
.line 5
array-length v0, p1
const/4 v1, 0x0
:goto_0
if-ge v1, v0, :cond_0
aget-object v2, p1, v1
.line 6
iget-object v3, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->credentialsProviders:Ljava/util/List;
invoke-interface {v3, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_0
return-void
.line 7
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "No credential providers specified"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 6
.line 1
iget-boolean v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->reuseLastProvider:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->lastUsedProvider:Lcom/amazonaws/auth/AWSCredentialsProvider;
if-eqz v0, :cond_0
.line 2
invoke-interface {v0}, Lcom/amazonaws/auth/AWSCredentialsProvider;->getCredentials()Lcom/amazonaws/auth/AWSCredentials;
move-result-object v0
return-object v0
.line 3
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->credentialsProviders:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_1
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/amazonaws/auth/AWSCredentialsProvider;
.line 4
:try_start_0
invoke-interface {v1}, Lcom/amazonaws/auth/AWSCredentialsProvider;->getCredentials()Lcom/amazonaws/auth/AWSCredentials;
move-result-object v2
.line 5
invoke-interface {v2}, Lcom/amazonaws/auth/AWSCredentials;->getAWSAccessKeyId()Ljava/lang/String;
move-result-object v3
if-eqz v3, :cond_1
.line 6
invoke-interface {v2}, Lcom/amazonaws/auth/AWSCredentials;->getAWSSecretKey()Ljava/lang/String;
move-result-object v3
if-eqz v3, :cond_1
.line 7
sget-object v3, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->log:Lcom/amazonaws/logging/Log;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "Loading credentials from "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-interface {v3, v4}, Lcom/amazonaws/logging/Log;->debug(Ljava/lang/Object;)V
.line 8
iput-object v1, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->lastUsedProvider:Lcom/amazonaws/auth/AWSCredentialsProvider;
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object v2
:catch_0
move-exception v2
.line 9
sget-object v3, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->log:Lcom/amazonaws/logging/Log;
const-string v4, "Unable to load credentials from "
invoke-static {v4}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, ": "
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 10
invoke-virtual {v2}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 11
invoke-interface {v3, v1}, Lcom/amazonaws/logging/Log;->debug(Ljava/lang/Object;)V
goto :goto_0
.line 12
:cond_2
new-instance v0, Lcom/amazonaws/AmazonClientException;
const-string v1, "Unable to load AWS credentials from any provider in the chain"
invoke-direct {v0, v1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getReuseLastProvider()Z
.locals 1
.line 1
iget-boolean v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->reuseLastProvider:Z
return v0
.end method
.method public refresh()V
.locals 2
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->credentialsProviders:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/amazonaws/auth/AWSCredentialsProvider;
.line 2
invoke-interface {v1}, Lcom/amazonaws/auth/AWSCredentialsProvider;->refresh()V
goto :goto_0
:cond_0
return-void
.end method
.method public setReuseLastProvider(Z)V
.locals 0
.line 1
iput-boolean p1, p0, Lcom/amazonaws/auth/AWSCredentialsProviderChain;->reuseLastProvider:Z
return-void
.end method
@@ -0,0 +1,65 @@
.class public final Lcom/amazonaws/auth/AWSEnhancedCognitoIdentityProvider;
.super Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;
.source "AWSEnhancedCognitoIdentityProvider.java"
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSEnhancedCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 2
.line 2
new-instance v0, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p3}, Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentityClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, v0}, Lcom/amazonaws/auth/AWSEnhancedCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
.locals 0
.line 3
invoke-direct {p0, p1, p2, p3}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/cognitoidentity/AmazonCognitoIdentity;)V
return-void
.end method
# virtual methods
.method public getProviderName()Ljava/lang/String;
.locals 1
const-string v0, "Cognito"
return-object v0
.end method
.method public refresh()Ljava/lang/String;
.locals 1
.line 1
invoke-virtual {p0}, Lcom/amazonaws/auth/AWSAbstractCognitoIdentityProvider;->getIdentityId()Ljava/lang/String;
const/4 v0, 0x0
return-object v0
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/AWSIdentityProvider;
.super Ljava/lang/Object;
.source "AWSIdentityProvider.java"
# virtual methods
.method public abstract getToken()Ljava/lang/String;
.end method
.method public abstract refresh()Ljava/lang/String;
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/AWSRefreshableSessionCredentials;
.super Ljava/lang/Object;
.source "AWSRefreshableSessionCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSSessionCredentials;
# virtual methods
.method public abstract refreshCredentials()V
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/AWSSessionCredentials;
.super Ljava/lang/Object;
.source "AWSSessionCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentials;
# virtual methods
.method public abstract getSessionToken()Ljava/lang/String;
.end method
@@ -0,0 +1,89 @@
.class final Lcom/amazonaws/auth/AbstractAWSSigner$1;
.super Ljava/lang/ThreadLocal;
.source "AbstractAWSSigner.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/AbstractAWSSigner;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ThreadLocal<",
"Ljava/security/MessageDigest;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/ThreadLocal;-><init>()V
return-void
.end method
# virtual methods
.method public bridge synthetic initialValue()Ljava/lang/Object;
.locals 1
.line 1
invoke-virtual {p0}, Lcom/amazonaws/auth/AbstractAWSSigner$1;->initialValue()Ljava/security/MessageDigest;
move-result-object v0
return-object v0
.end method
.method public initialValue()Ljava/security/MessageDigest;
.locals 4
:try_start_0
const-string v0, "SHA-256"
.line 2
invoke-static {v0}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v0
:try_end_0
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception v0
.line 3
new-instance v1, Lcom/amazonaws/AmazonClientException;
const-string v2, "Unable to get SHA256 Function"
invoke-static {v2}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
.line 4
invoke-virtual {v0}, Ljava/security/NoSuchAlgorithmException;->getMessage()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-direct {v1, v2, v0}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,35 @@
.class public Lcom/amazonaws/auth/AnonymousAWSCredentials;
.super Ljava/lang/Object;
.source "AnonymousAWSCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentials;
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public getAWSAccessKeyId()Ljava/lang/String;
.locals 1
const/4 v0, 0x0
return-object v0
.end method
.method public getAWSSecretKey()Ljava/lang/String;
.locals 1
const/4 v0, 0x0
return-object v0
.end method
@@ -0,0 +1,73 @@
.class public Lcom/amazonaws/auth/BasicAWSCredentials;
.super Ljava/lang/Object;
.source "BasicAWSCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentials;
# instance fields
.field private final accessKey:Ljava/lang/String;
.field private final secretKey:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_1
if-eqz p2, :cond_0
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/BasicAWSCredentials;->accessKey:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/BasicAWSCredentials;->secretKey:Ljava/lang/String;
return-void
.line 4
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Secret key cannot be null."
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 5
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Access key cannot be null."
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public getAWSAccessKeyId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/BasicAWSCredentials;->accessKey:Ljava/lang/String;
return-object v0
.end method
.method public getAWSSecretKey()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/BasicAWSCredentials;->secretKey:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,63 @@
.class public Lcom/amazonaws/auth/BasicSessionCredentials;
.super Ljava/lang/Object;
.source "BasicSessionCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSSessionCredentials;
# instance fields
.field private final awsAccessKey:Ljava/lang/String;
.field private final awsSecretKey:Ljava/lang/String;
.field private final sessionToken:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/BasicSessionCredentials;->awsAccessKey:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/BasicSessionCredentials;->awsSecretKey:Ljava/lang/String;
.line 4
iput-object p3, p0, Lcom/amazonaws/auth/BasicSessionCredentials;->sessionToken:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public getAWSAccessKeyId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/BasicSessionCredentials;->awsAccessKey:Ljava/lang/String;
return-object v0
.end method
.method public getAWSSecretKey()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/BasicSessionCredentials;->awsSecretKey:Ljava/lang/String;
return-object v0
.end method
.method public getSessionToken()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/BasicSessionCredentials;->sessionToken:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,192 @@
.class public Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;
.super Ljava/lang/Object;
.source "ClasspathPropertiesFileCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# annotations
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# static fields
.field private static defaultPropertiesFile:Ljava/lang/String; = "AwsCredentials.properties"
# instance fields
.field private final credentialsFilePath:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 0
return-void
.end method
.method public constructor <init>()V
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->defaultPropertiesFile:Ljava/lang/String;
invoke-direct {p0, v0}, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;-><init>(Ljava/lang/String;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 2
.line 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_1
const-string v0, "/"
.line 3
invoke-virtual {p1, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_0
.line 4
invoke-static {v0, p1}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
goto :goto_0
.line 5
:cond_0
iput-object p1, p0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
:goto_0
return-void
.line 6
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Credentials file path cannot be null"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 5
.line 1
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
iget-object v1, p0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/Class;->getResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream;
move-result-object v0
const-string v1, " file on the classpath"
const-string v2, "Unable to load AWS credentials from the "
if-eqz v0, :cond_0
.line 2
:try_start_0
new-instance v3, Lcom/amazonaws/auth/PropertiesCredentials;
invoke-direct {v3, v0}, Lcom/amazonaws/auth/PropertiesCredentials;-><init>(Ljava/io/InputStream;)V
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
return-object v3
:catch_0
move-exception v0
.line 3
new-instance v3, Lcom/amazonaws/AmazonClientException;
invoke-static {v2}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
iget-object v4, p0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
invoke-static {v2, v4, v1}, Landroidx/camera/camera2/internal/b;->a(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v3, v1, v0}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v3
.line 4
:cond_0
new-instance v0, Lcom/amazonaws/AmazonClientException;
invoke-static {v2}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
iget-object v3, p0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
invoke-static {v2, v3, v1}, Landroidx/camera/camera2/internal/b;->a(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public refresh()V
.locals 0
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 3
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()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;
iget-object v1, p0, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
const-string v2, ")"
invoke-static {v0, v1, v2}, Landroidx/camera/camera2/internal/b;->a(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,61 @@
.class Lcom/amazonaws/auth/CognitoCachingCredentialsProvider$1;
.super Ljava/lang/Object;
.source "CognitoCachingCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/IdentityChangedListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/CognitoCachingCredentialsProvider$1;->this$0:Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public identityChanged(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
invoke-static {}, Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;->access$000()Lcom/amazonaws/logging/Log;
move-result-object p1
const-string v0, "Identity id is changed"
invoke-interface {p1, v0}, Lcom/amazonaws/logging/Log;->debug(Ljava/lang/Object;)V
.line 2
iget-object p1, p0, Lcom/amazonaws/auth/CognitoCachingCredentialsProvider$1;->this$0:Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;
invoke-static {p1, p2}, Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;->access$100(Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;Ljava/lang/String;)V
.line 3
iget-object p1, p0, Lcom/amazonaws/auth/CognitoCachingCredentialsProvider$1;->this$0:Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;
invoke-virtual {p1}, Lcom/amazonaws/auth/CognitoCachingCredentialsProvider;->clearCredentials()V
return-void
.end method
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,39 @@
.class public Lcom/amazonaws/auth/DefaultAWSCredentialsProviderChain;
.super Lcom/amazonaws/auth/AWSCredentialsProviderChain;
.source "DefaultAWSCredentialsProviderChain.java"
# annotations
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# direct methods
.method public constructor <init>()V
.locals 3
const/4 v0, 0x2
new-array v0, v0, [Lcom/amazonaws/auth/AWSCredentialsProvider;
.line 1
new-instance v1, Lcom/amazonaws/auth/SystemPropertiesCredentialsProvider;
invoke-direct {v1}, Lcom/amazonaws/auth/SystemPropertiesCredentialsProvider;-><init>()V
const/4 v2, 0x0
aput-object v1, v0, v2
new-instance v1, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;
invoke-direct {v1}, Lcom/amazonaws/auth/ClasspathPropertiesFileCredentialsProvider;-><init>()V
const/4 v2, 0x1
aput-object v1, v0, v2
invoke-direct {p0, v0}, Lcom/amazonaws/auth/AWSCredentialsProviderChain;-><init>([Lcom/amazonaws/auth/AWSCredentialsProvider;)V
return-void
.end method
@@ -0,0 +1,8 @@
.class public interface abstract Lcom/amazonaws/auth/IdentityChangedListener;
.super Ljava/lang/Object;
.source "IdentityChangedListener.java"
# virtual methods
.method public abstract identityChanged(Ljava/lang/String;Ljava/lang/String;)V
.end method
+34
View File
@@ -0,0 +1,34 @@
.class public Lcom/amazonaws/auth/NoOpSigner;
.super Ljava/lang/Object;
.source "NoOpSigner.java"
# interfaces
.implements Lcom/amazonaws/auth/Signer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public sign(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSCredentials;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSCredentials;",
")V"
}
.end annotation
return-void
.end method
@@ -0,0 +1,3 @@
.class public interface abstract Lcom/amazonaws/auth/NoSessionSupportCredentials;
.super Ljava/lang/Object;
.source "NoSessionSupportCredentials.java"
+18
View File
@@ -0,0 +1,18 @@
.class public interface abstract Lcom/amazonaws/auth/Presigner;
.super Ljava/lang/Object;
.source "Presigner.java"
# virtual methods
.method public abstract presignRequest(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSCredentials;Ljava/util/Date;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSCredentials;",
"Ljava/util/Date;",
")V"
}
.end annotation
.end method
@@ -0,0 +1,269 @@
.class public Lcom/amazonaws/auth/PropertiesCredentials;
.super Ljava/lang/Object;
.source "PropertiesCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentials;
# instance fields
.field private final accessKey:Ljava/lang/String;
.field private final secretAccessKey:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/io/File;)V
.locals 5
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
const-string v0, "secretKey"
const-string v1, "accessKey"
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
invoke-virtual {p1}, Ljava/io/File;->exists()Z
move-result v2
if-eqz v2, :cond_1
.line 3
new-instance v2, Ljava/io/FileInputStream;
invoke-direct {v2, p1}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
.line 4
:try_start_0
new-instance v3, Ljava/util/Properties;
invoke-direct {v3}, Ljava/util/Properties;-><init>()V
.line 5
invoke-virtual {v3, v2}, Ljava/util/Properties;->load(Ljava/io/InputStream;)V
.line 6
invoke-virtual {v3, v1}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
if-eqz v4, :cond_0
.line 7
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
if-eqz v4, :cond_0
.line 8
invoke-virtual {v3, v1}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/PropertiesCredentials;->accessKey:Ljava/lang/String;
.line 9
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/PropertiesCredentials;->secretAccessKey:Ljava/lang/String;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 10
:try_start_1
invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
:try_end_1
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0
:catch_0
return-void
.line 11
:cond_0
:try_start_2
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "The specified file ("
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 12
invoke-virtual {p1}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object p1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, ") doesn\'t contain the expected properties \'accessKey\' and \'secretKey\'."
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-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
:catchall_0
move-exception p1
.line 13
:try_start_3
invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
:try_end_3
.catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_1
.line 14
:catch_1
throw p1
.line 15
:cond_1
new-instance v0, Ljava/io/FileNotFoundException;
const-string v1, "File doesn\'t exist: "
invoke-static {v1}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 16
invoke-virtual {p1}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object p1
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-direct {v0, p1}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public constructor <init>(Ljava/io/InputStream;)V
.locals 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 17
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 18
new-instance v0, Ljava/util/Properties;
invoke-direct {v0}, Ljava/util/Properties;-><init>()V
.line 19
:try_start_0
invoke-virtual {v0, p1}, Ljava/util/Properties;->load(Ljava/io/InputStream;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 20
:try_start_1
invoke-virtual {p1}, Ljava/io/InputStream;->close()V
:try_end_1
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0
:catch_0
const-string p1, "accessKey"
.line 21
invoke-virtual {v0, p1}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_0
const-string v1, "secretKey"
.line 22
invoke-virtual {v0, v1}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
if-eqz v2, :cond_0
.line 23
invoke-virtual {v0, p1}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/PropertiesCredentials;->accessKey:Ljava/lang/String;
.line 24
invoke-virtual {v0, v1}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/PropertiesCredentials;->secretAccessKey:Ljava/lang/String;
return-void
.line 25
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "The specified properties data doesn\'t contain the expected properties \'accessKey\' and \'secretKey\'."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:catchall_0
move-exception v0
.line 26
:try_start_2
invoke-virtual {p1}, Ljava/io/InputStream;->close()V
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
.line 27
:catch_1
throw v0
.end method
# virtual methods
.method public getAWSAccessKeyId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/PropertiesCredentials;->accessKey:Ljava/lang/String;
return-object v0
.end method
.method public getAWSSecretKey()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/PropertiesCredentials;->secretAccessKey:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,121 @@
.class public Lcom/amazonaws/auth/PropertiesFileCredentialsProvider;
.super Ljava/lang/Object;
.source "PropertiesFileCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# instance fields
.field private final credentialsFilePath:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_0
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/PropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
return-void
.line 3
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Credentials file path cannot be null"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 5
.line 1
:try_start_0
new-instance v0, Lcom/amazonaws/auth/PropertiesCredentials;
new-instance v1, Ljava/io/File;
iget-object v2, p0, Lcom/amazonaws/auth/PropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
invoke-direct {v1, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-direct {v0, v1}, Lcom/amazonaws/auth/PropertiesCredentials;-><init>(Ljava/io/File;)V
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception v0
.line 2
new-instance v1, Lcom/amazonaws/AmazonClientException;
const-string v2, "Unable to load AWS credentials from the "
invoke-static {v2}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
iget-object v3, p0, Lcom/amazonaws/auth/PropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
const-string v4, " file"
invoke-static {v2, v3, v4}, Landroidx/camera/camera2/internal/b;->a(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public refresh()V
.locals 0
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 3
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()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;
iget-object v1, p0, Lcom/amazonaws/auth/PropertiesFileCredentialsProvider;->credentialsFilePath:Ljava/lang/String;
const-string v2, ")"
invoke-static {v0, v1, v2}, Landroidx/camera/camera2/internal/b;->a(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,558 @@
.class public Lcom/amazonaws/auth/QueryStringSigner;
.super Lcom/amazonaws/auth/AbstractAWSSigner;
.source "QueryStringSigner.java"
# interfaces
.implements Lcom/amazonaws/auth/Signer;
# instance fields
.field private overriddenDate:Ljava/util/Date;
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/AbstractAWSSigner;-><init>()V
return-void
.end method
.method private calculateStringToSignV1(Ljava/util/Map;)Ljava/lang/String;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;)",
"Ljava/lang/String;"
}
.end annotation
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 2
new-instance v1, Ljava/util/TreeMap;
sget-object v2, Ljava/lang/String;->CASE_INSENSITIVE_ORDER:Ljava/util/Comparator;
invoke-direct {v1, v2}, Ljava/util/TreeMap;-><init>(Ljava/util/Comparator;)V
.line 3
invoke-virtual {v1, p1}, Ljava/util/TreeMap;->putAll(Ljava/util/Map;)V
.line 4
invoke-virtual {v1}, Ljava/util/TreeMap;->entrySet()Ljava/util/Set;
move-result-object p1
invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p1
:goto_0
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map$Entry;
.line 5
invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 6
invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_0
.line 7
:cond_0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method private calculateStringToSignV2(Lcom/amazonaws/Request;)Ljava/lang/String;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;)",
"Ljava/lang/String;"
}
.end annotation
.line 1
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v0
.line 2
invoke-interface {p1}, Lcom/amazonaws/Request;->getParameters()Ljava/util/Map;
move-result-object v1
const-string v2, "POST"
const-string v3, "\n"
.line 3
invoke-static {v2, v3}, Landroid/support/v4/media/e;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
.line 4
invoke-virtual {p0, v0}, Lcom/amazonaws/auth/AbstractAWSSigner;->getCanonicalizedEndpoint(Ljava/net/URI;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 5
invoke-direct {p0, p1}, Lcom/amazonaws/auth/QueryStringSigner;->getCanonicalizedResourcePath(Lcom/amazonaws/Request;)Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 6
invoke-virtual {p0, v1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getCanonicalizedQueryString(Ljava/util/Map;)Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 7
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method private getCanonicalizedResourcePath(Lcom/amazonaws/Request;)Ljava/lang/String;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;)",
"Ljava/lang/String;"
}
.end annotation
.line 1
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v0
invoke-virtual {v0}, Ljava/net/URI;->getPath()Ljava/lang/String;
move-result-object v0
const-string v1, ""
if-eqz v0, :cond_0
.line 2
invoke-static {v1}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-interface {p1}, Lcom/amazonaws/Request;->getEndpoint()Ljava/net/URI;
move-result-object v1
invoke-virtual {v1}, Ljava/net/URI;->getPath()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 v1
.line 3
:cond_0
invoke-interface {p1}, Lcom/amazonaws/Request;->getResourcePath()Ljava/lang/String;
move-result-object v0
const-string v2, "/"
if-eqz v0, :cond_2
.line 4
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v0
if-lez v0, :cond_1
.line 5
invoke-virtual {v1, v2}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_1
.line 6
invoke-interface {p1}, Lcom/amazonaws/Request;->getResourcePath()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_1
.line 7
invoke-static {v1, v2}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 8
:cond_1
invoke-static {v1}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-interface {p1}, Lcom/amazonaws/Request;->getResourcePath()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
goto :goto_0
.line 9
:cond_2
invoke-virtual {v1, v2}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result p1
if-nez p1, :cond_3
.line 10
invoke-static {v1, v2}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 11
:cond_3
:goto_0
invoke-virtual {v1, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result p1
if-nez p1, :cond_4
.line 12
invoke-static {v2, v1}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
:cond_4
const-string p1, "//"
.line 13
invoke-virtual {v1, p1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result p1
if-eqz p1, :cond_5
const/4 p1, 0x1
.line 14
invoke-virtual {v1, p1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v1
:cond_5
return-object v1
.end method
.method private getFormattedTimestamp(I)Ljava/lang/String;
.locals 2
.line 1
new-instance v0, Ljava/text/SimpleDateFormat;
const-string v1, "yyyy-MM-dd\'T\'HH:mm:ss.SSS\'Z\'"
invoke-direct {v0, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V
const-string v1, "UTC"
.line 2
invoke-static {v1}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V
.line 3
iget-object v1, p0, Lcom/amazonaws/auth/QueryStringSigner;->overriddenDate:Ljava/util/Date;
if-eqz v1, :cond_0
.line 4
invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
move-result-object p1
return-object p1
.line 5
:cond_0
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getSignatureDate(I)Ljava/util/Date;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
# virtual methods
.method public addSessionCredentials(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSSessionCredentials;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSSessionCredentials;",
")V"
}
.end annotation
.line 1
invoke-interface {p2}, Lcom/amazonaws/auth/AWSSessionCredentials;->getSessionToken()Ljava/lang/String;
move-result-object p2
const-string v0, "SecurityToken"
invoke-interface {p1, v0, p2}, Lcom/amazonaws/Request;->addParameter(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public overrideDate(Ljava/util/Date;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/QueryStringSigner;->overriddenDate:Ljava/util/Date;
return-void
.end method
.method public sign(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSCredentials;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSCredentials;",
")V"
}
.end annotation
.line 1
sget-object v0, Lcom/amazonaws/auth/SignatureVersion;->V2:Lcom/amazonaws/auth/SignatureVersion;
sget-object v1, Lcom/amazonaws/auth/SigningAlgorithm;->HmacSHA256:Lcom/amazonaws/auth/SigningAlgorithm;
invoke-virtual {p0, p1, v0, v1, p2}, Lcom/amazonaws/auth/QueryStringSigner;->sign(Lcom/amazonaws/Request;Lcom/amazonaws/auth/SignatureVersion;Lcom/amazonaws/auth/SigningAlgorithm;Lcom/amazonaws/auth/AWSCredentials;)V
return-void
.end method
.method public sign(Lcom/amazonaws/Request;Lcom/amazonaws/auth/SignatureVersion;Lcom/amazonaws/auth/SigningAlgorithm;Lcom/amazonaws/auth/AWSCredentials;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/SignatureVersion;",
"Lcom/amazonaws/auth/SigningAlgorithm;",
"Lcom/amazonaws/auth/AWSCredentials;",
")V"
}
.end annotation
.line 2
instance-of v0, p4, Lcom/amazonaws/auth/AnonymousAWSCredentials;
if-eqz v0, :cond_0
return-void
.line 3
:cond_0
invoke-virtual {p0, p4}, Lcom/amazonaws/auth/AbstractAWSSigner;->sanitizeCredentials(Lcom/amazonaws/auth/AWSCredentials;)Lcom/amazonaws/auth/AWSCredentials;
move-result-object p4
.line 4
invoke-interface {p4}, Lcom/amazonaws/auth/AWSCredentials;->getAWSAccessKeyId()Ljava/lang/String;
move-result-object v0
const-string v1, "AWSAccessKeyId"
invoke-interface {p1, v1, v0}, Lcom/amazonaws/Request;->addParameter(Ljava/lang/String;Ljava/lang/String;)V
.line 5
invoke-virtual {p2}, Lcom/amazonaws/auth/SignatureVersion;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "SignatureVersion"
invoke-interface {p1, v1, v0}, Lcom/amazonaws/Request;->addParameter(Ljava/lang/String;Ljava/lang/String;)V
.line 6
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/AbstractAWSSigner;->getTimeOffset(Lcom/amazonaws/Request;)I
move-result v0
.line 7
invoke-direct {p0, v0}, Lcom/amazonaws/auth/QueryStringSigner;->getFormattedTimestamp(I)Ljava/lang/String;
move-result-object v0
const-string v1, "Timestamp"
invoke-interface {p1, v1, v0}, Lcom/amazonaws/Request;->addParameter(Ljava/lang/String;Ljava/lang/String;)V
.line 8
instance-of v0, p4, Lcom/amazonaws/auth/AWSSessionCredentials;
if-eqz v0, :cond_1
.line 9
move-object v0, p4
check-cast v0, Lcom/amazonaws/auth/AWSSessionCredentials;
invoke-virtual {p0, p1, v0}, Lcom/amazonaws/auth/QueryStringSigner;->addSessionCredentials(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSSessionCredentials;)V
.line 10
:cond_1
sget-object v0, Lcom/amazonaws/auth/SignatureVersion;->V1:Lcom/amazonaws/auth/SignatureVersion;
invoke-virtual {p2, v0}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_2
.line 11
invoke-interface {p1}, Lcom/amazonaws/Request;->getParameters()Ljava/util/Map;
move-result-object p2
invoke-direct {p0, p2}, Lcom/amazonaws/auth/QueryStringSigner;->calculateStringToSignV1(Ljava/util/Map;)Ljava/lang/String;
move-result-object p2
goto :goto_0
.line 12
:cond_2
sget-object v0, Lcom/amazonaws/auth/SignatureVersion;->V2:Lcom/amazonaws/auth/SignatureVersion;
invoke-virtual {p2, v0}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z
move-result p2
if-eqz p2, :cond_3
.line 13
invoke-virtual {p3}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object p2
const-string v0, "SignatureMethod"
invoke-interface {p1, v0, p2}, Lcom/amazonaws/Request;->addParameter(Ljava/lang/String;Ljava/lang/String;)V
.line 14
invoke-direct {p0, p1}, Lcom/amazonaws/auth/QueryStringSigner;->calculateStringToSignV2(Lcom/amazonaws/Request;)Ljava/lang/String;
move-result-object p2
.line 15
:goto_0
invoke-interface {p4}, Lcom/amazonaws/auth/AWSCredentials;->getAWSSecretKey()Ljava/lang/String;
move-result-object p4
.line 16
invoke-virtual {p0, p2, p4, p3}, Lcom/amazonaws/auth/AbstractAWSSigner;->signAndBase64Encode(Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/auth/SigningAlgorithm;)Ljava/lang/String;
move-result-object p2
const-string p3, "Signature"
.line 17
invoke-interface {p1, p3, p2}, Lcom/amazonaws/Request;->addParameter(Ljava/lang/String;Ljava/lang/String;)V
return-void
.line 18
:cond_3
new-instance p1, Lcom/amazonaws/AmazonClientException;
const-string p2, "Invalid Signature Version specified"
invoke-direct {p1, p2}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;)V
throw p1
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/RegionAwareSigner;
.super Ljava/lang/Object;
.source "RegionAwareSigner.java"
# interfaces
.implements Lcom/amazonaws/auth/Signer;
# virtual methods
.method public abstract setRegionName(Ljava/lang/String;)V
.end method
@@ -0,0 +1,289 @@
.class public Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;
.super Ljava/lang/Object;
.source "STSAssumeRoleSessionCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# static fields
.field public static final DEFAULT_DURATION_SECONDS:I = 0x384
.field private static final EXPIRY_TIME_MILLIS:I = 0xea60
# instance fields
.field private roleArn:Ljava/lang/String;
.field private roleSessionName:Ljava/lang/String;
.field private final securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.field private sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
.field private sessionCredentialsExpiration:Ljava/util/Date;
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentials;Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 5
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, p3, v0}, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;-><init>(Lcom/amazonaws/auth/AWSCredentials;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentials;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 0
.line 6
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 7
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleArn:Ljava/lang/String;
.line 8
iput-object p3, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleSessionName:Ljava/lang/String;
.line 9
new-instance p2, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {p2, p1, p4}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentialsProvider;Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 10
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 11
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleArn:Ljava/lang/String;
.line 12
iput-object p3, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleSessionName:Ljava/lang/String;
.line 13
new-instance p2, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {p2, p1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentialsProvider;)V
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentialsProvider;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 0
.line 14
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 15
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleArn:Ljava/lang/String;
.line 16
iput-object p3, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleSessionName:Ljava/lang/String;
.line 17
new-instance p2, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {p2, p1, p4}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentialsProvider;Lcom/amazonaws/ClientConfiguration;)V
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleArn:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleSessionName:Ljava/lang/String;
.line 4
new-instance p1, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {p1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>()V
iput-object p1, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method private needsNewSession()Z
.locals 6
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
const/4 v1, 0x1
if-nez v0, :cond_0
return v1
.line 2
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->sessionCredentialsExpiration:Ljava/util/Date;
invoke-virtual {v0}, Ljava/util/Date;->getTime()J
move-result-wide v2
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v2, v4
const-wide/32 v4, 0xea60
cmp-long v0, v2, v4
if-gez v0, :cond_1
goto :goto_0
:cond_1
const/4 v1, 0x0
:goto_0
return v1
.end method
.method private startSession()V
.locals 5
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
new-instance v1, Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;
invoke-direct {v1}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;-><init>()V
iget-object v2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleArn:Ljava/lang/String;
.line 2
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;->withRoleArn(Ljava/lang/String;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;
move-result-object v1
const/16 v2, 0x384
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;->withDurationSeconds(Ljava/lang/Integer;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;
move-result-object v1
iget-object v2, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->roleSessionName:Ljava/lang/String;
.line 3
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;->withRoleSessionName(Ljava/lang/String;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;
move-result-object v1
.line 4
invoke-interface {v0, v1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;->assumeRole(Lcom/amazonaws/services/securitytoken/model/AssumeRoleRequest;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleResult;
move-result-object v0
.line 5
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleResult;->getCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
.line 6
new-instance v1, Lcom/amazonaws/auth/BasicSessionCredentials;
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getAccessKeyId()Ljava/lang/String;
move-result-object v2
.line 7
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSecretAccessKey()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSessionToken()Ljava/lang/String;
move-result-object v4
invoke-direct {v1, v2, v3, v4}, Lcom/amazonaws/auth/BasicSessionCredentials;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
iput-object v1, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
.line 8
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getExpiration()Ljava/util/Date;
move-result-object v0
iput-object v0, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->sessionCredentialsExpiration:Ljava/util/Date;
return-void
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 1
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->needsNewSession()Z
move-result v0
if-eqz v0, :cond_0
.line 2
invoke-direct {p0}, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->startSession()V
.line 3
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
return-object v0
.end method
.method public refresh()V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->startSession()V
return-void
.end method
.method public setSTSClientEndpoint(Ljava/lang/String;)V
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
invoke-interface {v0, p1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;->setEndpoint(Ljava/lang/String;)V
const/4 p1, 0x0
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
return-void
.end method
@@ -0,0 +1,342 @@
.class public Lcom/amazonaws/auth/STSSessionCredentials;
.super Ljava/lang/Object;
.source "STSSessionCredentials.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSRefreshableSessionCredentials;
# annotations
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# static fields
.field public static final DEFAULT_DURATION_SECONDS:I = 0xe10
# instance fields
.field private final securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.field private sessionCredentials:Lcom/amazonaws/services/securitytoken/model/Credentials;
.field private final sessionDurationSeconds:I
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentials;)V
.locals 1
const/16 v0, 0xe10
.line 1
invoke-direct {p0, p1, v0}, Lcom/amazonaws/auth/STSSessionCredentials;-><init>(Lcom/amazonaws/auth/AWSCredentials;I)V
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentials;I)V
.locals 1
.line 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 3
new-instance v0, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {v0, p1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;)V
iput-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentials;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.line 4
iput p2, p0, Lcom/amazonaws/auth/STSSessionCredentials;->sessionDurationSeconds:I
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;)V
.locals 1
const/16 v0, 0xe10
.line 5
invoke-direct {p0, p1, v0}, Lcom/amazonaws/auth/STSSessionCredentials;-><init>(Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;I)V
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;I)V
.locals 0
.line 6
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 7
iput-object p1, p0, Lcom/amazonaws/auth/STSSessionCredentials;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.line 8
iput p2, p0, Lcom/amazonaws/auth/STSSessionCredentials;->sessionDurationSeconds:I
return-void
.end method
.method private declared-synchronized getSessionCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
.locals 1
monitor-enter p0
.line 1
:try_start_0
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentials;->needsNewSession()Z
move-result v0
if-eqz v0, :cond_0
.line 2
invoke-virtual {p0}, Lcom/amazonaws/auth/STSSessionCredentials;->refreshCredentials()V
.line 3
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentials;->sessionCredentials:Lcom/amazonaws/services/securitytoken/model/Credentials;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method private needsNewSession()Z
.locals 6
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentials;->sessionCredentials:Lcom/amazonaws/services/securitytoken/model/Credentials;
const/4 v1, 0x1
if-nez v0, :cond_0
return v1
.line 2
:cond_0
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getExpiration()Ljava/util/Date;
move-result-object v0
.line 3
invoke-virtual {v0}, Ljava/util/Date;->getTime()J
move-result-wide v2
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v2, v4
const-wide/32 v4, 0xea60
cmp-long v0, v2, v4
if-gez v0, :cond_1
return v1
:cond_1
const/4 v0, 0x0
return v0
.end method
# virtual methods
.method public declared-synchronized getAWSAccessKeyId()Ljava/lang/String;
.locals 1
monitor-enter p0
.line 1
:try_start_0
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentials;->getSessionCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getAccessKeyId()Ljava/lang/String;
move-result-object v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized getAWSSecretKey()Ljava/lang/String;
.locals 1
monitor-enter p0
.line 1
:try_start_0
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentials;->getSessionCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSecretAccessKey()Ljava/lang/String;
move-result-object v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized getImmutableCredentials()Lcom/amazonaws/auth/AWSSessionCredentials;
.locals 4
monitor-enter p0
.line 1
:try_start_0
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentials;->getSessionCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
.line 2
new-instance v1, Lcom/amazonaws/auth/BasicSessionCredentials;
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getAccessKeyId()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSecretAccessKey()Ljava/lang/String;
move-result-object v3
.line 3
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSessionToken()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v2, v3, v0}, Lcom/amazonaws/auth/BasicSessionCredentials;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 4
monitor-exit p0
return-object v1
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized getSessionToken()Ljava/lang/String;
.locals 1
monitor-enter p0
.line 1
:try_start_0
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentials;->getSessionCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSessionToken()Ljava/lang/String;
move-result-object v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized refreshCredentials()V
.locals 3
monitor-enter p0
.line 1
:try_start_0
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentials;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
new-instance v1, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;
invoke-direct {v1}, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;-><init>()V
iget v2, p0, Lcom/amazonaws/auth/STSSessionCredentials;->sessionDurationSeconds:I
.line 2
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;->withDurationSeconds(Ljava/lang/Integer;)Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;
move-result-object v1
.line 3
invoke-interface {v0, v1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;->getSessionToken(Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;)Lcom/amazonaws/services/securitytoken/model/GetSessionTokenResult;
move-result-object v0
.line 4
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenResult;->getCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
iput-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentials;->sessionCredentials:Lcom/amazonaws/services/securitytoken/model/Credentials;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 5
monitor-exit p0
return-void
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
@@ -0,0 +1,232 @@
.class public Lcom/amazonaws/auth/STSSessionCredentialsProvider;
.super Ljava/lang/Object;
.source "STSSessionCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# static fields
.field public static final DEFAULT_DURATION_SECONDS:I = 0xe10
# instance fields
.field private final securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.field private sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
.field private sessionCredentialsExpiration:Ljava/util/Date;
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentials;)V
.locals 1
.line 1
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, v0}, Lcom/amazonaws/auth/STSSessionCredentialsProvider;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
.locals 1
.line 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 3
new-instance v0, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {v0, p1, p2}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
iput-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentialsProvider;)V
.locals 1
.line 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 5
new-instance v0, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {v0, p1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentialsProvider;)V
iput-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/AWSCredentialsProvider;Lcom/amazonaws/ClientConfiguration;)V
.locals 1
.line 6
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 7
new-instance v0, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
invoke-direct {v0, p1, p2}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentialsProvider;Lcom/amazonaws/ClientConfiguration;)V
iput-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
return-void
.end method
.method private needsNewSession()Z
.locals 6
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
const/4 v1, 0x1
if-nez v0, :cond_0
return v1
.line 2
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->sessionCredentialsExpiration:Ljava/util/Date;
invoke-virtual {v0}, Ljava/util/Date;->getTime()J
move-result-wide v2
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v2, v4
const-wide/32 v4, 0xea60
cmp-long v0, v2, v4
if-gez v0, :cond_1
goto :goto_0
:cond_1
const/4 v1, 0x0
:goto_0
return v1
.end method
.method private startSession()V
.locals 5
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
new-instance v1, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;
invoke-direct {v1}, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;-><init>()V
const/16 v2, 0xe10
.line 2
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;->withDurationSeconds(Ljava/lang/Integer;)Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;
move-result-object v1
.line 3
invoke-interface {v0, v1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;->getSessionToken(Lcom/amazonaws/services/securitytoken/model/GetSessionTokenRequest;)Lcom/amazonaws/services/securitytoken/model/GetSessionTokenResult;
move-result-object v0
.line 4
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/GetSessionTokenResult;->getCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v0
.line 5
new-instance v1, Lcom/amazonaws/auth/BasicSessionCredentials;
.line 6
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getAccessKeyId()Ljava/lang/String;
move-result-object v2
.line 7
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSecretAccessKey()Ljava/lang/String;
move-result-object v3
.line 8
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSessionToken()Ljava/lang/String;
move-result-object v4
invoke-direct {v1, v2, v3, v4}, Lcom/amazonaws/auth/BasicSessionCredentials;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
iput-object v1, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
.line 9
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getExpiration()Ljava/util/Date;
move-result-object v0
iput-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->sessionCredentialsExpiration:Ljava/util/Date;
return-void
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 1
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->needsNewSession()Z
move-result v0
if-eqz v0, :cond_0
.line 2
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->startSession()V
.line 3
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
return-object v0
.end method
.method public refresh()V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->startSession()V
return-void
.end method
.method public setSTSClientEndpoint(Ljava/lang/String;)V
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
invoke-interface {v0, p1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;->setEndpoint(Ljava/lang/String;)V
const/4 p1, 0x0
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
return-void
.end method
@@ -0,0 +1,11 @@
.class public interface abstract Lcom/amazonaws/auth/ServiceAwareSigner;
.super Ljava/lang/Object;
.source "ServiceAwareSigner.java"
# interfaces
.implements Lcom/amazonaws/auth/Signer;
# virtual methods
.method public abstract setServiceName(Ljava/lang/String;)V
.end method
@@ -0,0 +1,168 @@
.class final Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;
.super Ljava/lang/Object;
.source "SessionCredentialsProviderFactory.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/SessionCredentialsProviderFactory;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Key"
.end annotation
# instance fields
.field private final awsAccessKeyId:Ljava/lang/String;
.field private final serviceEndpoint:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->awsAccessKeyId:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->serviceEndpoint:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public equals(Ljava/lang/Object;)Z
.locals 4
const/4 v0, 0x1
if-ne p0, p1, :cond_0
return v0
:cond_0
const/4 v1, 0x0
if-nez p1, :cond_1
return v1
.line 1
:cond_1
const-class v2, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
if-eq v2, v3, :cond_2
return v1
.line 2
:cond_2
check-cast p1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;
.line 3
iget-object v2, p0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->awsAccessKeyId:Ljava/lang/String;
if-nez v2, :cond_3
.line 4
iget-object v2, p1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->awsAccessKeyId:Ljava/lang/String;
if-eqz v2, :cond_4
return v1
.line 5
:cond_3
iget-object v3, p1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->awsAccessKeyId:Ljava/lang/String;
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_4
return v1
.line 6
:cond_4
iget-object v2, p0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->serviceEndpoint:Ljava/lang/String;
if-nez v2, :cond_5
.line 7
iget-object p1, p1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->serviceEndpoint:Ljava/lang/String;
if-eqz p1, :cond_6
return v1
.line 8
:cond_5
iget-object p1, p1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->serviceEndpoint:Ljava/lang/String;
invoke-virtual {v2, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-nez p1, :cond_6
return v1
:cond_6
return v0
.end method
.method public hashCode()I
.locals 3
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->awsAccessKeyId:Ljava/lang/String;
const/4 v1, 0x0
if-nez v0, :cond_0
move v0, v1
goto :goto_0
:cond_0
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v0
:goto_0
const/16 v2, 0x1f
add-int/2addr v0, v2
mul-int/2addr v0, v2
.line 2
iget-object v2, p0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;->serviceEndpoint:Ljava/lang/String;
if-nez v2, :cond_1
goto :goto_1
:cond_1
invoke-virtual {v2}, Ljava/lang/String;->hashCode()I
move-result v1
:goto_1
add-int/2addr v0, v1
return v0
.end method
@@ -0,0 +1,103 @@
.class public Lcom/amazonaws/auth/SessionCredentialsProviderFactory;
.super Ljava/lang/Object;
.source "SessionCredentialsProviderFactory.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;
}
.end annotation
# static fields
.field private static final cache:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;",
"Lcom/amazonaws/auth/STSSessionCredentialsProvider;",
">;"
}
.end annotation
.end field
# direct methods
.method public static constructor <clinit>()V
.locals 1
.line 1
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-object v0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory;->cache:Ljava/util/Map;
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static declared-synchronized getSessionCredentialsProvider(Lcom/amazonaws/auth/AWSCredentials;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)Lcom/amazonaws/auth/STSSessionCredentialsProvider;
.locals 3
const-class v0, Lcom/amazonaws/auth/SessionCredentialsProviderFactory;
monitor-enter v0
.line 1
:try_start_0
new-instance v1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;
invoke-interface {p0}, Lcom/amazonaws/auth/AWSCredentials;->getAWSAccessKeyId()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, p1}, Lcom/amazonaws/auth/SessionCredentialsProviderFactory$Key;-><init>(Ljava/lang/String;Ljava/lang/String;)V
.line 2
sget-object p1, Lcom/amazonaws/auth/SessionCredentialsProviderFactory;->cache:Ljava/util/Map;
invoke-interface {p1, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_0
.line 3
new-instance v2, Lcom/amazonaws/auth/STSSessionCredentialsProvider;
invoke-direct {v2, p0, p2}, Lcom/amazonaws/auth/STSSessionCredentialsProvider;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-interface {p1, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 4
:cond_0
invoke-interface {p1, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/STSSessionCredentialsProvider;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
monitor-exit v0
return-object p0
:catchall_0
move-exception p0
monitor-exit v0
throw p0
.end method
@@ -0,0 +1,130 @@
.class public final enum Lcom/amazonaws/auth/SignatureVersion;
.super Ljava/lang/Enum;
.source "SignatureVersion.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/SignatureVersion;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/SignatureVersion;
.field public static final enum V1:Lcom/amazonaws/auth/SignatureVersion;
.field public static final enum V2:Lcom/amazonaws/auth/SignatureVersion;
# instance fields
.field private value:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 6
.line 1
new-instance v0, Lcom/amazonaws/auth/SignatureVersion;
const-string v1, "V1"
const/4 v2, 0x0
const-string v3, "1"
invoke-direct {v0, v1, v2, v3}, Lcom/amazonaws/auth/SignatureVersion;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/SignatureVersion;->V1:Lcom/amazonaws/auth/SignatureVersion;
.line 2
new-instance v1, Lcom/amazonaws/auth/SignatureVersion;
const-string v3, "V2"
const/4 v4, 0x1
const-string v5, "2"
invoke-direct {v1, v3, v4, v5}, Lcom/amazonaws/auth/SignatureVersion;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v1, Lcom/amazonaws/auth/SignatureVersion;->V2:Lcom/amazonaws/auth/SignatureVersion;
const/4 v3, 0x2
new-array v3, v3, [Lcom/amazonaws/auth/SignatureVersion;
aput-object v0, v3, v2
aput-object v1, v3, v4
.line 3
sput-object v3, Lcom/amazonaws/auth/SignatureVersion;->$VALUES:[Lcom/amazonaws/auth/SignatureVersion;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;ILjava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
.line 2
iput-object p3, p0, Lcom/amazonaws/auth/SignatureVersion;->value:Ljava/lang/String;
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/SignatureVersion;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/SignatureVersion;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/SignatureVersion;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/SignatureVersion;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/SignatureVersion;->$VALUES:[Lcom/amazonaws/auth/SignatureVersion;
invoke-virtual {v0}, [Lcom/amazonaws/auth/SignatureVersion;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/SignatureVersion;
return-object v0
.end method
# virtual methods
.method public toString()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/SignatureVersion;->value:Ljava/lang/String;
return-object v0
.end method
+17
View File
@@ -0,0 +1,17 @@
.class public interface abstract Lcom/amazonaws/auth/Signer;
.super Ljava/lang/Object;
.source "Signer.java"
# virtual methods
.method public abstract sign(Lcom/amazonaws/Request;Lcom/amazonaws/auth/AWSCredentials;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/Request<",
"*>;",
"Lcom/amazonaws/auth/AWSCredentials;",
")V"
}
.end annotation
.end method
@@ -0,0 +1,251 @@
.class public final Lcom/amazonaws/auth/SignerFactory;
.super Ljava/lang/Object;
.source "SignerFactory.java"
# static fields
.field private static final NO_OP_SIGNER:Ljava/lang/String; = "NoOpSignerType"
.field private static final QUERY_STRING_SIGNER:Ljava/lang/String; = "QueryStringSignerType"
.field private static final SIGNERS:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/Class<",
"+",
"Lcom/amazonaws/auth/Signer;",
">;>;"
}
.end annotation
.end field
.field private static final VERSION_FOUR_SIGNER:Ljava/lang/String; = "AWS4SignerType"
# direct methods
.method public static constructor <clinit>()V
.locals 3
.line 1
new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;
invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;-><init>()V
sput-object v0, Lcom/amazonaws/auth/SignerFactory;->SIGNERS:Ljava/util/Map;
.line 2
const-class v1, Lcom/amazonaws/auth/QueryStringSigner;
const-string v2, "QueryStringSignerType"
invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 3
const-class v1, Lcom/amazonaws/auth/AWS4Signer;
const-string v2, "AWS4SignerType"
invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 4
const-class v1, Lcom/amazonaws/auth/NoOpSigner;
const-string v2, "NoOpSignerType"
invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static createSigner(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
.locals 2
const-string v0, "Cannot create an instance of "
.line 1
sget-object v1, Lcom/amazonaws/auth/SignerFactory;->SIGNERS:Ljava/util/Map;
invoke-interface {v1, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Class;
if-eqz p0, :cond_1
.line 2
:try_start_0
invoke-virtual {p0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/amazonaws/auth/Signer;
:try_end_0
.catch Ljava/lang/InstantiationException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_0
.line 3
instance-of p0, v1, Lcom/amazonaws/auth/ServiceAwareSigner;
if-eqz p0, :cond_0
.line 4
move-object p0, v1
check-cast p0, Lcom/amazonaws/auth/ServiceAwareSigner;
invoke-interface {p0, p1}, Lcom/amazonaws/auth/ServiceAwareSigner;->setServiceName(Ljava/lang/String;)V
:cond_0
return-object v1
:catch_0
move-exception p1
.line 5
new-instance v1, Ljava/lang/IllegalStateException;
invoke-static {v0}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
.line 6
invoke-static {p0, v0}, Li/g;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;)Ljava/lang/String;
move-result-object p0
invoke-direct {v1, p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
:catch_1
move-exception p1
.line 7
new-instance v1, Ljava/lang/IllegalStateException;
invoke-static {v0}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
.line 8
invoke-static {p0, v0}, Li/g;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;)Ljava/lang/String;
move-result-object p0
invoke-direct {v1, p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 9
:cond_1
new-instance p0, Ljava/lang/IllegalArgumentException;
invoke-direct {p0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p0
.end method
.method public static getSigner(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
.locals 0
.line 1
invoke-static {p0, p1}, Lcom/amazonaws/auth/SignerFactory;->lookupAndCreateSigner(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
move-result-object p0
return-object p0
.end method
.method public static getSignerByTypeAndService(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
.locals 0
.line 1
invoke-static {p0, p1}, Lcom/amazonaws/auth/SignerFactory;->createSigner(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
move-result-object p0
return-object p0
.end method
.method private static lookupAndCreateSigner(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
.locals 1
.line 1
invoke-static {}, Lcom/amazonaws/internal/config/InternalConfig$Factory;->getInternalConfig()Lcom/amazonaws/internal/config/InternalConfig;
move-result-object v0
.line 2
invoke-virtual {v0, p0, p1}, Lcom/amazonaws/internal/config/InternalConfig;->getSignerConfig(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/internal/config/SignerConfig;
move-result-object p1
.line 3
invoke-virtual {p1}, Lcom/amazonaws/internal/config/SignerConfig;->getSignerType()Ljava/lang/String;
move-result-object p1
.line 4
invoke-static {p1, p0}, Lcom/amazonaws/auth/SignerFactory;->createSigner(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/Signer;
move-result-object p0
return-object p0
.end method
.method public static registerSigner(Ljava/lang/String;Ljava/lang/Class;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/Class<",
"+",
"Lcom/amazonaws/auth/Signer;",
">;)V"
}
.end annotation
if-eqz p0, :cond_1
if-eqz p1, :cond_0
.line 1
sget-object v0, Lcom/amazonaws/auth/SignerFactory;->SIGNERS:Ljava/util/Map;
invoke-interface {v0, p0, p1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
return-void
.line 2
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string p1, "signerClass cannot be null"
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.line 3
:cond_1
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string p1, "signerType cannot be null"
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
@@ -0,0 +1,106 @@
.class public final enum Lcom/amazonaws/auth/SigningAlgorithm;
.super Ljava/lang/Enum;
.source "SigningAlgorithm.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/SigningAlgorithm;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/SigningAlgorithm;
.field public static final enum HmacSHA1:Lcom/amazonaws/auth/SigningAlgorithm;
.field public static final enum HmacSHA256:Lcom/amazonaws/auth/SigningAlgorithm;
# direct methods
.method public static constructor <clinit>()V
.locals 5
.line 1
new-instance v0, Lcom/amazonaws/auth/SigningAlgorithm;
const-string v1, "HmacSHA1"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/SigningAlgorithm;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/SigningAlgorithm;->HmacSHA1:Lcom/amazonaws/auth/SigningAlgorithm;
.line 2
new-instance v1, Lcom/amazonaws/auth/SigningAlgorithm;
const-string v3, "HmacSHA256"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/SigningAlgorithm;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/SigningAlgorithm;->HmacSHA256:Lcom/amazonaws/auth/SigningAlgorithm;
const/4 v3, 0x2
new-array v3, v3, [Lcom/amazonaws/auth/SigningAlgorithm;
aput-object v0, v3, v2
aput-object v1, v3, v4
.line 3
sput-object v3, Lcom/amazonaws/auth/SigningAlgorithm;->$VALUES:[Lcom/amazonaws/auth/SigningAlgorithm;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/SigningAlgorithm;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/SigningAlgorithm;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/SigningAlgorithm;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/SigningAlgorithm;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/SigningAlgorithm;->$VALUES:[Lcom/amazonaws/auth/SigningAlgorithm;
invoke-virtual {v0}, [Lcom/amazonaws/auth/SigningAlgorithm;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/SigningAlgorithm;
return-object v0
.end method
@@ -0,0 +1,94 @@
.class public Lcom/amazonaws/auth/SystemPropertiesCredentialsProvider;
.super Ljava/lang/Object;
.source "SystemPropertiesCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# annotations
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 3
const-string v0, "aws.accessKeyId"
.line 1
invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_0
const-string v1, "aws.secretKey"
.line 2
invoke-static {v1}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
if-eqz v2, :cond_0
.line 3
new-instance v2, Lcom/amazonaws/auth/BasicAWSCredentials;
.line 4
invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 5
invoke-static {v1}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v0, v1}, Lcom/amazonaws/auth/BasicAWSCredentials;-><init>(Ljava/lang/String;Ljava/lang/String;)V
return-object v2
.line 6
:cond_0
new-instance v0, Lcom/amazonaws/AmazonClientException;
const-string v1, "Unable to load AWS credentials from Java system properties (aws.accessKeyId and aws.secretKey)"
invoke-direct {v0, v1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public refresh()V
.locals 0
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 1
.line 1
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,333 @@
.class public Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;
.super Ljava/lang/Object;
.source "WebIdentityFederationSessionCredentialsProvider.java"
# interfaces
.implements Lcom/amazonaws/auth/AWSCredentialsProvider;
# static fields
.field public static final DEFAULT_DURATION_SECONDS:I = 0xe10
.field public static final DEFAULT_THRESHOLD_SECONDS:I = 0x1f4
# instance fields
.field private refreshThreshold:I
.field private final roleArn:Ljava/lang/String;
.field private final securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.field private sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
.field private sessionCredentialsExpiration:Ljava/util/Date;
.field private sessionDuration:I
.field private subjectFromWIF:Ljava/lang/String;
.field private final wifProvider:Ljava/lang/String;
.field private final wifToken:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
new-instance v0, Lcom/amazonaws/ClientConfiguration;
invoke-direct {v0}, Lcom/amazonaws/ClientConfiguration;-><init>()V
invoke-direct {p0, p1, p2, p3, v0}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/ClientConfiguration;)V
.locals 2
.line 2
new-instance v0, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;
new-instance v1, Lcom/amazonaws/auth/AnonymousAWSCredentials;
invoke-direct {v1}, Lcom/amazonaws/auth/AnonymousAWSCredentials;-><init>()V
invoke-direct {v0, v1, p4}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenServiceClient;-><init>(Lcom/amazonaws/auth/AWSCredentials;Lcom/amazonaws/ClientConfiguration;)V
invoke-direct {p0, p1, p2, p3, v0}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;)V
.locals 0
.line 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 4
iput-object p4, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
.line 5
iput-object p2, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->wifProvider:Ljava/lang/String;
.line 6
iput-object p1, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->wifToken:Ljava/lang/String;
.line 7
iput-object p3, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->roleArn:Ljava/lang/String;
const/16 p1, 0xe10
.line 8
iput p1, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionDuration:I
const/16 p1, 0x1f4
.line 9
iput p1, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->refreshThreshold:I
return-void
.end method
.method private needsNewSession()Z
.locals 6
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
const/4 v1, 0x1
if-nez v0, :cond_0
return v1
.line 2
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionCredentialsExpiration:Ljava/util/Date;
invoke-virtual {v0}, Ljava/util/Date;->getTime()J
move-result-wide v2
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v2, v4
.line 3
iget v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->refreshThreshold:I
mul-int/lit16 v0, v0, 0x3e8
int-to-long v4, v0
cmp-long v0, v2, v4
if-gez v0, :cond_1
goto :goto_0
:cond_1
const/4 v1, 0x0
:goto_0
return v1
.end method
.method private startSession()V
.locals 5
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->securityTokenService:Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;
new-instance v1, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;
invoke-direct {v1}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;-><init>()V
iget-object v2, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->wifToken:Ljava/lang/String;
.line 2
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;->withWebIdentityToken(Ljava/lang/String;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;
move-result-object v1
iget-object v2, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->wifProvider:Ljava/lang/String;
.line 3
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;->withProviderId(Ljava/lang/String;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;
move-result-object v1
iget-object v2, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->roleArn:Ljava/lang/String;
.line 4
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;->withRoleArn(Ljava/lang/String;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;
move-result-object v1
const-string v2, "ProviderSession"
.line 5
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;->withRoleSessionName(Ljava/lang/String;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;
move-result-object v1
iget v2, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionDuration:I
.line 6
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;->withDurationSeconds(Ljava/lang/Integer;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;
move-result-object v1
.line 7
invoke-interface {v0, v1}, Lcom/amazonaws/services/securitytoken/AWSSecurityTokenService;->assumeRoleWithWebIdentity(Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityRequest;)Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityResult;
move-result-object v0
.line 8
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityResult;->getCredentials()Lcom/amazonaws/services/securitytoken/model/Credentials;
move-result-object v1
.line 9
invoke-virtual {v0}, Lcom/amazonaws/services/securitytoken/model/AssumeRoleWithWebIdentityResult;->getSubjectFromWebIdentityToken()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->subjectFromWIF:Ljava/lang/String;
.line 10
new-instance v0, Lcom/amazonaws/auth/BasicSessionCredentials;
.line 11
invoke-virtual {v1}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getAccessKeyId()Ljava/lang/String;
move-result-object v2
.line 12
invoke-virtual {v1}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSecretAccessKey()Ljava/lang/String;
move-result-object v3
.line 13
invoke-virtual {v1}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getSessionToken()Ljava/lang/String;
move-result-object v4
invoke-direct {v0, v2, v3, v4}, Lcom/amazonaws/auth/BasicSessionCredentials;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
iput-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
.line 14
invoke-virtual {v1}, Lcom/amazonaws/services/securitytoken/model/Credentials;->getExpiration()Ljava/util/Date;
move-result-object v0
iput-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionCredentialsExpiration:Ljava/util/Date;
return-void
.end method
# virtual methods
.method public getCredentials()Lcom/amazonaws/auth/AWSCredentials;
.locals 1
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->needsNewSession()Z
move-result v0
if-eqz v0, :cond_0
.line 2
invoke-direct {p0}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->startSession()V
.line 3
:cond_0
iget-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionCredentials:Lcom/amazonaws/auth/AWSSessionCredentials;
return-object v0
.end method
.method public getRefreshThreshold()I
.locals 1
.line 1
iget v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->refreshThreshold:I
return v0
.end method
.method public getSessionDuration()I
.locals 1
.line 1
iget v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionDuration:I
return v0
.end method
.method public getSubjectFromWIF()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->subjectFromWIF:Ljava/lang/String;
return-object v0
.end method
.method public refresh()V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->startSession()V
return-void
.end method
.method public setRefreshThreshold(I)V
.locals 0
.line 1
iput p1, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->refreshThreshold:I
return-void
.end method
.method public setSessionDuration(I)V
.locals 0
.line 1
iput p1, p0, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->sessionDuration:I
return-void
.end method
.method public withRefreshThreshold(I)Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->setRefreshThreshold(I)V
return-object p0
.end method
.method public withSessionDuration(I)Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/WebIdentityFederationSessionCredentialsProvider;->setSessionDuration(I)V
return-object p0
.end method
@@ -0,0 +1,8 @@
.class public interface abstract Lcom/amazonaws/auth/policy/Action;
.super Ljava/lang/Object;
.source "Action.java"
# virtual methods
.method public abstract getActionName()Ljava/lang/String;
.end method
@@ -0,0 +1,151 @@
.class public Lcom/amazonaws/auth/policy/Condition;
.super Ljava/lang/Object;
.source "Condition.java"
# instance fields
.field public conditionKey:Ljava/lang/String;
.field public type:Ljava/lang/String;
.field public values:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public getConditionKey()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
return-object v0
.end method
.method public getType()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
return-object v0
.end method
.method public getValues()Ljava/util/List;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-object v0
.end method
.method public setConditionKey(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
return-void
.end method
.method public setType(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
return-void
.end method
.method public setValues(Ljava/util/List;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Ljava/lang/String;",
">;)V"
}
.end annotation
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
.method public withConditionKey(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Condition;->setConditionKey(Ljava/lang/String;)V
return-object p0
.end method
.method public withType(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Condition;->setType(Ljava/lang/String;)V
return-object p0
.end method
.method public withValues(Ljava/util/List;)Lcom/amazonaws/auth/policy/Condition;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Ljava/lang/String;",
">;)",
"Lcom/amazonaws/auth/policy/Condition;"
}
.end annotation
.line 2
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Condition;->setValues(Ljava/util/List;)V
return-object p0
.end method
.method public varargs withValues([Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
.locals 0
.line 1
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Condition;->setValues(Ljava/util/List;)V
return-object p0
.end method
@@ -0,0 +1,321 @@
.class public Lcom/amazonaws/auth/policy/Policy;
.super Ljava/lang/Object;
.source "Policy.java"
# static fields
.field private static final DEFAULT_POLICY_VERSION:Ljava/lang/String; = "2012-10-17"
# instance fields
.field private id:Ljava/lang/String;
.field private statements:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Statement;",
">;"
}
.end annotation
.end field
.field private version:Ljava/lang/String;
# direct methods
.method public constructor <init>()V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-string v0, "2012-10-17"
.line 2
iput-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->version:Ljava/lang/String;
.line 3
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->statements:Ljava/util/List;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 1
.line 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-string v0, "2012-10-17"
.line 5
iput-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->version:Ljava/lang/String;
.line 6
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->statements:Ljava/util/List;
.line 7
iput-object p1, p0, Lcom/amazonaws/auth/policy/Policy;->id:Ljava/lang/String;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/util/Collection;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Collection<",
"Lcom/amazonaws/auth/policy/Statement;",
">;)V"
}
.end annotation
.line 8
invoke-direct {p0, p1}, Lcom/amazonaws/auth/policy/Policy;-><init>(Ljava/lang/String;)V
.line 9
invoke-virtual {p0, p2}, Lcom/amazonaws/auth/policy/Policy;->setStatements(Ljava/util/Collection;)V
return-void
.end method
.method private assignUniqueStatementIds()V
.locals 5
.line 1
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
.line 2
iget-object v1, p0, Lcom/amazonaws/auth/policy/Policy;->statements:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_0
:goto_0
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/amazonaws/auth/policy/Statement;
.line 3
invoke-virtual {v2}, Lcom/amazonaws/auth/policy/Statement;->getId()Ljava/lang/String;
move-result-object v3
if-eqz v3, :cond_0
.line 4
invoke-virtual {v2}, Lcom/amazonaws/auth/policy/Statement;->getId()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
goto :goto_0
:cond_1
const/4 v1, 0x0
.line 5
iget-object v2, p0, Lcom/amazonaws/auth/policy/Policy;->statements:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_1
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_4
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/amazonaws/auth/policy/Statement;
.line 6
invoke-virtual {v3}, Lcom/amazonaws/auth/policy/Statement;->getId()Ljava/lang/String;
move-result-object v4
if-eqz v4, :cond_2
goto :goto_1
:cond_2
:goto_2
add-int/lit8 v1, v1, 0x1
.line 7
invoke-static {v1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
move-result-object v4
invoke-virtual {v0, v4}, Ljava/util/HashSet;->contains(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_3
goto :goto_2
.line 8
:cond_3
invoke-static {v1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Lcom/amazonaws/auth/policy/Statement;->setId(Ljava/lang/String;)V
goto :goto_1
:cond_4
return-void
.end method
.method public static fromJson(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Policy;
.locals 1
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;
invoke-direct {v0}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;-><init>()V
invoke-virtual {v0, p0}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->createPolicyFromJsonString(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Policy;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public getId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->id:Ljava/lang/String;
return-object v0
.end method
.method public getStatements()Ljava/util/Collection;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Collection<",
"Lcom/amazonaws/auth/policy/Statement;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->statements:Ljava/util/List;
return-object v0
.end method
.method public getVersion()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->version:Ljava/lang/String;
return-object v0
.end method
.method public setId(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Policy;->id:Ljava/lang/String;
return-void
.end method
.method public setStatements(Ljava/util/Collection;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Collection<",
"Lcom/amazonaws/auth/policy/Statement;",
">;)V"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Policy;->statements:Ljava/util/List;
.line 2
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Policy;->assignUniqueStatementIds()V
return-void
.end method
.method public toJson()Ljava/lang/String;
.locals 1
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter;
invoke-direct {v0}, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter;-><init>()V
invoke-virtual {v0, p0}, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter;->writePolicyToString(Lcom/amazonaws/auth/policy/Policy;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public withId(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Policy;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Policy;->setId(Ljava/lang/String;)V
return-object p0
.end method
.method public varargs withStatements([Lcom/amazonaws/auth/policy/Statement;)Lcom/amazonaws/auth/policy/Policy;
.locals 0
.line 1
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Policy;->setStatements(Ljava/util/Collection;)V
return-object p0
.end method
@@ -0,0 +1,250 @@
.class public final enum Lcom/amazonaws/auth/policy/Principal$Services;
.super Ljava/lang/Enum;
.source "Principal.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/Principal;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "Services"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/Principal$Services;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/Principal$Services;
.field public static final enum AWSCloudHSM:Lcom/amazonaws/auth/policy/Principal$Services;
.field public static final enum AWSDataPipeline:Lcom/amazonaws/auth/policy/Principal$Services;
.field public static final enum AWSOpsWorks:Lcom/amazonaws/auth/policy/Principal$Services;
.field public static final enum AllServices:Lcom/amazonaws/auth/policy/Principal$Services;
.field public static final enum AmazonEC2:Lcom/amazonaws/auth/policy/Principal$Services;
.field public static final enum AmazonElasticTranscoder:Lcom/amazonaws/auth/policy/Principal$Services;
# instance fields
.field private serviceId:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 14
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/Principal$Services;
const-string v1, "AWSDataPipeline"
const/4 v2, 0x0
const-string v3, "datapipeline.amazonaws.com"
invoke-direct {v0, v1, v2, v3}, Lcom/amazonaws/auth/policy/Principal$Services;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/Principal$Services;->AWSDataPipeline:Lcom/amazonaws/auth/policy/Principal$Services;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/Principal$Services;
const-string v3, "AmazonElasticTranscoder"
const/4 v4, 0x1
const-string v5, "elastictranscoder.amazonaws.com"
invoke-direct {v1, v3, v4, v5}, Lcom/amazonaws/auth/policy/Principal$Services;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v1, Lcom/amazonaws/auth/policy/Principal$Services;->AmazonElasticTranscoder:Lcom/amazonaws/auth/policy/Principal$Services;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/Principal$Services;
const-string v5, "AmazonEC2"
const/4 v6, 0x2
const-string v7, "ec2.amazonaws.com"
invoke-direct {v3, v5, v6, v7}, Lcom/amazonaws/auth/policy/Principal$Services;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v3, Lcom/amazonaws/auth/policy/Principal$Services;->AmazonEC2:Lcom/amazonaws/auth/policy/Principal$Services;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/Principal$Services;
const-string v7, "AWSOpsWorks"
const/4 v8, 0x3
const-string v9, "opsworks.amazonaws.com"
invoke-direct {v5, v7, v8, v9}, Lcom/amazonaws/auth/policy/Principal$Services;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v5, Lcom/amazonaws/auth/policy/Principal$Services;->AWSOpsWorks:Lcom/amazonaws/auth/policy/Principal$Services;
.line 5
new-instance v7, Lcom/amazonaws/auth/policy/Principal$Services;
const-string v9, "AWSCloudHSM"
const/4 v10, 0x4
const-string v11, "cloudhsm.amazonaws.com"
invoke-direct {v7, v9, v10, v11}, Lcom/amazonaws/auth/policy/Principal$Services;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v7, Lcom/amazonaws/auth/policy/Principal$Services;->AWSCloudHSM:Lcom/amazonaws/auth/policy/Principal$Services;
.line 6
new-instance v9, Lcom/amazonaws/auth/policy/Principal$Services;
const-string v11, "AllServices"
const/4 v12, 0x5
const-string v13, "*"
invoke-direct {v9, v11, v12, v13}, Lcom/amazonaws/auth/policy/Principal$Services;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v9, Lcom/amazonaws/auth/policy/Principal$Services;->AllServices:Lcom/amazonaws/auth/policy/Principal$Services;
const/4 v11, 0x6
new-array v11, v11, [Lcom/amazonaws/auth/policy/Principal$Services;
aput-object v0, v11, v2
aput-object v1, v11, v4
aput-object v3, v11, v6
aput-object v5, v11, v8
aput-object v7, v11, v10
aput-object v9, v11, v12
.line 7
sput-object v11, Lcom/amazonaws/auth/policy/Principal$Services;->$VALUES:[Lcom/amazonaws/auth/policy/Principal$Services;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;ILjava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
.line 2
iput-object p3, p0, Lcom/amazonaws/auth/policy/Principal$Services;->serviceId:Ljava/lang/String;
return-void
.end method
.method public static fromString(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal$Services;
.locals 5
if-eqz p0, :cond_1
.line 1
invoke-static {}, Lcom/amazonaws/auth/policy/Principal$Services;->values()[Lcom/amazonaws/auth/policy/Principal$Services;
move-result-object v0
array-length v1, v0
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_1
aget-object v3, v0, v2
.line 2
invoke-virtual {v3}, Lcom/amazonaws/auth/policy/Principal$Services;->getServiceId()Ljava/lang/String;
move-result-object v4
invoke-virtual {v4, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_0
return-object v3
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
const/4 p0, 0x0
return-object p0
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal$Services;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/Principal$Services;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/Principal$Services;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/Principal$Services;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/Principal$Services;->$VALUES:[Lcom/amazonaws/auth/policy/Principal$Services;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/Principal$Services;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/Principal$Services;
return-object v0
.end method
# virtual methods
.method public getServiceId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Principal$Services;->serviceId:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,216 @@
.class public final enum Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.super Ljava/lang/Enum;
.source "Principal.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/Principal;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "WebIdentityProviders"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.field public static final enum AllProviders:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.field public static final enum Amazon:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.field public static final enum Facebook:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.field public static final enum Google:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
# instance fields
.field private webIdentityProvider:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 10
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
const-string v1, "Facebook"
const/4 v2, 0x0
const-string v3, "graph.facebook.com"
invoke-direct {v0, v1, v2, v3}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->Facebook:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
const-string v3, "Google"
const/4 v4, 0x1
const-string v5, "accounts.google.com"
invoke-direct {v1, v3, v4, v5}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v1, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->Google:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
const-string v5, "Amazon"
const/4 v6, 0x2
const-string v7, "www.amazon.com"
invoke-direct {v3, v5, v6, v7}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v3, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->Amazon:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
const-string v7, "AllProviders"
const/4 v8, 0x3
const-string v9, "*"
invoke-direct {v5, v7, v8, v9}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v5, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->AllProviders:Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
const/4 v7, 0x4
new-array v7, v7, [Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
aput-object v0, v7, v2
aput-object v1, v7, v4
aput-object v3, v7, v6
aput-object v5, v7, v8
.line 5
sput-object v7, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->$VALUES:[Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;ILjava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
.line 2
iput-object p3, p0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->webIdentityProvider:Ljava/lang/String;
return-void
.end method
.method public static fromString(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.locals 5
if-eqz p0, :cond_1
.line 1
invoke-static {}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->values()[Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
move-result-object v0
array-length v1, v0
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_1
aget-object v3, v0, v2
.line 2
invoke-virtual {v3}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->getWebIdentityProvider()Ljava/lang/String;
move-result-object v4
invoke-virtual {v4, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_0
return-object v3
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
const/4 p0, 0x0
return-object p0
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->$VALUES:[Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
return-object v0
.end method
# virtual methods
.method public getWebIdentityProvider()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->webIdentityProvider:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,319 @@
.class public Lcom/amazonaws/auth/policy/Principal;
.super Ljava/lang/Object;
.source "Principal.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;,
Lcom/amazonaws/auth/policy/Principal$Services;
}
.end annotation
# static fields
.field public static final All:Lcom/amazonaws/auth/policy/Principal;
.field public static final AllServices:Lcom/amazonaws/auth/policy/Principal;
.field public static final AllUsers:Lcom/amazonaws/auth/policy/Principal;
.field public static final AllWebProviders:Lcom/amazonaws/auth/policy/Principal;
# instance fields
.field private final id:Ljava/lang/String;
.field private final provider:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 3
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/Principal;
const-string v1, "AWS"
const-string v2, "*"
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;Ljava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/Principal;->AllUsers:Lcom/amazonaws/auth/policy/Principal;
.line 2
new-instance v0, Lcom/amazonaws/auth/policy/Principal;
const-string v1, "Service"
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;Ljava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/Principal;->AllServices:Lcom/amazonaws/auth/policy/Principal;
.line 3
new-instance v0, Lcom/amazonaws/auth/policy/Principal;
const-string v1, "Federated"
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;Ljava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/Principal;->AllWebProviders:Lcom/amazonaws/auth/policy/Principal;
.line 4
new-instance v0, Lcom/amazonaws/auth/policy/Principal;
invoke-direct {v0, v2, v2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;Ljava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/Principal;->All:Lcom/amazonaws/auth/policy/Principal;
return-void
.end method
.method public constructor <init>(Lcom/amazonaws/auth/policy/Principal$Services;)V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_0
.line 2
invoke-virtual {p1}, Lcom/amazonaws/auth/policy/Principal$Services;->getServiceId()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->id:Ljava/lang/String;
const-string p1, "Service"
.line 3
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->provider:Ljava/lang/String;
return-void
.line 4
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Null AWS service name specified"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public constructor <init>(Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;)V
.locals 1
.line 14
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_0
.line 15
invoke-virtual {p1}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->getWebIdentityProvider()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->id:Ljava/lang/String;
const-string p1, "Federated"
.line 16
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->provider:Ljava/lang/String;
return-void
.line 17
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Null web identity provider specified"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 2
.line 10
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_0
const-string v0, "-"
const-string v1, ""
.line 11
invoke-virtual {p1, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->id:Ljava/lang/String;
const-string p1, "AWS"
.line 12
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->provider:Ljava/lang/String;
return-void
.line 13
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Null AWS account ID specified"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 5
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 6
iput-object p1, p0, Lcom/amazonaws/auth/policy/Principal;->provider:Ljava/lang/String;
const-string v0, "AWS"
.line 7
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
const-string p1, "-"
const-string v0, ""
.line 8
invoke-virtual {p2, p1, v0}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
.line 9
:cond_0
iput-object p2, p0, Lcom/amazonaws/auth/policy/Principal;->id:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public equals(Ljava/lang/Object;)Z
.locals 4
const/4 v0, 0x1
if-ne p0, p1, :cond_0
return v0
:cond_0
const/4 v1, 0x0
if-nez p1, :cond_1
return v1
.line 1
:cond_1
instance-of v2, p1, Lcom/amazonaws/auth/policy/Principal;
if-nez v2, :cond_2
return v1
.line 2
:cond_2
check-cast p1, Lcom/amazonaws/auth/policy/Principal;
.line 3
invoke-virtual {p0}, Lcom/amazonaws/auth/policy/Principal;->getProvider()Ljava/lang/String;
move-result-object v2
invoke-virtual {p1}, Lcom/amazonaws/auth/policy/Principal;->getProvider()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_3
.line 4
invoke-virtual {p0}, Lcom/amazonaws/auth/policy/Principal;->getId()Ljava/lang/String;
move-result-object v2
invoke-virtual {p1}, Lcom/amazonaws/auth/policy/Principal;->getId()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_3
return v0
:cond_3
return v1
.end method
.method public getId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Principal;->id:Ljava/lang/String;
return-object v0
.end method
.method public getProvider()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Principal;->provider:Ljava/lang/String;
return-object v0
.end method
.method public hashCode()I
.locals 3
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Principal;->provider:Ljava/lang/String;
const/16 v1, 0x1f
const/16 v2, 0x1f
invoke-static {v0, v1, v2}, Lb3/k;->a(Ljava/lang/String;II)I
move-result v0
.line 2
iget-object v1, p0, Lcom/amazonaws/auth/policy/Principal;->id:Ljava/lang/String;
invoke-virtual {v1}, Ljava/lang/String;->hashCode()I
move-result v1
add-int/2addr v1, v0
return v1
.end method
@@ -0,0 +1,32 @@
.class public Lcom/amazonaws/auth/policy/Resource;
.super Ljava/lang/Object;
.source "Resource.java"
# instance fields
.field private final resource:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/policy/Resource;->resource:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public getId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Resource;->resource:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,137 @@
.class public final enum Lcom/amazonaws/auth/policy/STSActions;
.super Ljava/lang/Enum;
.source "STSActions.java"
# interfaces
.implements Lcom/amazonaws/auth/policy/Action;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/STSActions;",
">;",
"Lcom/amazonaws/auth/policy/Action;"
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/STSActions;
.field public static final enum AssumeRole:Lcom/amazonaws/auth/policy/STSActions;
.field public static final enum AssumeRoleWithWebIdentity:Lcom/amazonaws/auth/policy/STSActions;
# instance fields
.field private final action:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 6
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/STSActions;
const-string v1, "AssumeRole"
const/4 v2, 0x0
const-string v3, "sts:AssumeRole"
invoke-direct {v0, v1, v2, v3}, Lcom/amazonaws/auth/policy/STSActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/STSActions;->AssumeRole:Lcom/amazonaws/auth/policy/STSActions;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/STSActions;
const-string v3, "AssumeRoleWithWebIdentity"
const/4 v4, 0x1
const-string v5, "sts:AssumeRoleWithWebIdentity"
invoke-direct {v1, v3, v4, v5}, Lcom/amazonaws/auth/policy/STSActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v1, Lcom/amazonaws/auth/policy/STSActions;->AssumeRoleWithWebIdentity:Lcom/amazonaws/auth/policy/STSActions;
const/4 v3, 0x2
new-array v3, v3, [Lcom/amazonaws/auth/policy/STSActions;
aput-object v0, v3, v2
aput-object v1, v3, v4
.line 3
sput-object v3, Lcom/amazonaws/auth/policy/STSActions;->$VALUES:[Lcom/amazonaws/auth/policy/STSActions;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;ILjava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
.line 2
iput-object p3, p0, Lcom/amazonaws/auth/policy/STSActions;->action:Ljava/lang/String;
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/STSActions;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/STSActions;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/STSActions;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/STSActions;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/STSActions;->$VALUES:[Lcom/amazonaws/auth/policy/STSActions;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/STSActions;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/STSActions;
return-object v0
.end method
# virtual methods
.method public getActionName()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/STSActions;->action:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,115 @@
.class public final enum Lcom/amazonaws/auth/policy/Statement$Effect;
.super Ljava/lang/Enum;
.source "Statement.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/Statement;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "Effect"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/Statement$Effect;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/Statement$Effect;
.field public static final enum Allow:Lcom/amazonaws/auth/policy/Statement$Effect;
.field public static final enum Deny:Lcom/amazonaws/auth/policy/Statement$Effect;
# direct methods
.method public static constructor <clinit>()V
.locals 5
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/Statement$Effect;
const-string v1, "Allow"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/Statement$Effect;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/policy/Statement$Effect;->Allow:Lcom/amazonaws/auth/policy/Statement$Effect;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/Statement$Effect;
const-string v3, "Deny"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/policy/Statement$Effect;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/policy/Statement$Effect;->Deny:Lcom/amazonaws/auth/policy/Statement$Effect;
const/4 v3, 0x2
new-array v3, v3, [Lcom/amazonaws/auth/policy/Statement$Effect;
aput-object v0, v3, v2
aput-object v1, v3, v4
.line 3
sput-object v3, Lcom/amazonaws/auth/policy/Statement$Effect;->$VALUES:[Lcom/amazonaws/auth/policy/Statement$Effect;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Statement$Effect;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/Statement$Effect;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/Statement$Effect;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/Statement$Effect;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/Statement$Effect;->$VALUES:[Lcom/amazonaws/auth/policy/Statement$Effect;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/Statement$Effect;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/Statement$Effect;
return-object v0
.end method
@@ -0,0 +1,357 @@
.class public Lcom/amazonaws/auth/policy/Statement;
.super Ljava/lang/Object;
.source "Statement.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/Statement$Effect;
}
.end annotation
# instance fields
.field private actions:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Action;",
">;"
}
.end annotation
.end field
.field private conditions:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Condition;",
">;"
}
.end annotation
.end field
.field private effect:Lcom/amazonaws/auth/policy/Statement$Effect;
.field private id:Ljava/lang/String;
.field private principals:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Principal;",
">;"
}
.end annotation
.end field
.field private resources:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Resource;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/policy/Statement$Effect;)V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->principals:Ljava/util/List;
.line 3
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->actions:Ljava/util/List;
.line 4
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->conditions:Ljava/util/List;
.line 5
iput-object p1, p0, Lcom/amazonaws/auth/policy/Statement;->effect:Lcom/amazonaws/auth/policy/Statement$Effect;
const/4 p1, 0x0
.line 6
iput-object p1, p0, Lcom/amazonaws/auth/policy/Statement;->id:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public getActions()Ljava/util/List;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Action;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->actions:Ljava/util/List;
return-object v0
.end method
.method public getConditions()Ljava/util/List;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Condition;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->conditions:Ljava/util/List;
return-object v0
.end method
.method public getEffect()Lcom/amazonaws/auth/policy/Statement$Effect;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->effect:Lcom/amazonaws/auth/policy/Statement$Effect;
return-object v0
.end method
.method public getId()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->id:Ljava/lang/String;
return-object v0
.end method
.method public getPrincipals()Ljava/util/List;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Principal;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->principals:Ljava/util/List;
return-object v0
.end method
.method public getResources()Ljava/util/List;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Resource;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->resources:Ljava/util/List;
return-object v0
.end method
.method public setActions(Ljava/util/Collection;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Collection<",
"Lcom/amazonaws/auth/policy/Action;",
">;)V"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->actions:Ljava/util/List;
return-void
.end method
.method public setConditions(Ljava/util/List;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Condition;",
">;)V"
}
.end annotation
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Statement;->conditions:Ljava/util/List;
return-void
.end method
.method public setEffect(Lcom/amazonaws/auth/policy/Statement$Effect;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Statement;->effect:Lcom/amazonaws/auth/policy/Statement$Effect;
return-void
.end method
.method public setId(Ljava/lang/String;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Statement;->id:Ljava/lang/String;
return-void
.end method
.method public setPrincipals(Ljava/util/Collection;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Collection<",
"Lcom/amazonaws/auth/policy/Principal;",
">;)V"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->principals:Ljava/util/List;
return-void
.end method
.method public varargs setPrincipals([Lcom/amazonaws/auth/policy/Principal;)V
.locals 1
.line 2
new-instance v0, Ljava/util/ArrayList;
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
invoke-virtual {p0, v0}, Lcom/amazonaws/auth/policy/Statement;->setPrincipals(Ljava/util/Collection;)V
return-void
.end method
.method public setResources(Ljava/util/Collection;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Collection<",
"Lcom/amazonaws/auth/policy/Resource;",
">;)V"
}
.end annotation
.line 1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
iput-object v0, p0, Lcom/amazonaws/auth/policy/Statement;->resources:Ljava/util/List;
return-void
.end method
.method public varargs withActions([Lcom/amazonaws/auth/policy/Action;)Lcom/amazonaws/auth/policy/Statement;
.locals 0
.line 1
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Statement;->setActions(Ljava/util/Collection;)V
return-object p0
.end method
.method public varargs withConditions([Lcom/amazonaws/auth/policy/Condition;)Lcom/amazonaws/auth/policy/Statement;
.locals 0
.line 1
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Statement;->setConditions(Ljava/util/List;)V
return-object p0
.end method
.method public withId(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Statement;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Statement;->setId(Ljava/lang/String;)V
return-object p0
.end method
.method public varargs withPrincipals([Lcom/amazonaws/auth/policy/Principal;)Lcom/amazonaws/auth/policy/Statement;
.locals 0
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Statement;->setPrincipals([Lcom/amazonaws/auth/policy/Principal;)V
return-object p0
.end method
.method public varargs withResources([Lcom/amazonaws/auth/policy/Resource;)Lcom/amazonaws/auth/policy/Statement;
.locals 0
.line 1
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/Statement;->setResources(Ljava/util/Collection;)V
return-object p0
.end method
@@ -0,0 +1,261 @@
.class public final enum Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.super Ljava/lang/Enum;
.source "SecurityTokenServiceActions.java"
# interfaces
.implements Lcom/amazonaws/auth/policy/Action;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;",
">;",
"Lcom/amazonaws/auth/policy/Action;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum AllSecurityTokenServiceActions:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum AssumeRole:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum AssumeRoleWithSAML:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum AssumeRoleWithWebIdentity:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum DecodeAuthorizationMessage:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum GetAccessKeyInfo:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum GetCallerIdentity:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum GetFederationToken:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.field public static final enum GetSessionToken:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
# instance fields
.field private final action:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 16
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v1, "AllSecurityTokenServiceActions"
const/4 v2, 0x0
const-string v3, "sts:*"
invoke-direct {v0, v1, v2, v3}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->AllSecurityTokenServiceActions:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v3, "AssumeRole"
const/4 v4, 0x1
const-string v5, "sts:AssumeRole"
invoke-direct {v1, v3, v4, v5}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v1, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->AssumeRole:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v5, "AssumeRoleWithSAML"
const/4 v6, 0x2
const-string v7, "sts:AssumeRoleWithSAML"
invoke-direct {v3, v5, v6, v7}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v3, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->AssumeRoleWithSAML:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v7, "AssumeRoleWithWebIdentity"
const/4 v8, 0x3
const-string v9, "sts:AssumeRoleWithWebIdentity"
invoke-direct {v5, v7, v8, v9}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v5, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->AssumeRoleWithWebIdentity:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 5
new-instance v7, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v9, "DecodeAuthorizationMessage"
const/4 v10, 0x4
const-string v11, "sts:DecodeAuthorizationMessage"
invoke-direct {v7, v9, v10, v11}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v7, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->DecodeAuthorizationMessage:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 6
new-instance v9, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v11, "GetAccessKeyInfo"
const/4 v12, 0x5
const-string v13, "sts:GetAccessKeyInfo"
invoke-direct {v9, v11, v12, v13}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v9, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->GetAccessKeyInfo:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 7
new-instance v11, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v13, "GetCallerIdentity"
const/4 v14, 0x6
const-string v15, "sts:GetCallerIdentity"
invoke-direct {v11, v13, v14, v15}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v11, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->GetCallerIdentity:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 8
new-instance v13, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v15, "GetFederationToken"
const/4 v14, 0x7
const-string v12, "sts:GetFederationToken"
invoke-direct {v13, v15, v14, v12}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v13, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->GetFederationToken:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.line 9
new-instance v12, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const-string v15, "GetSessionToken"
const/16 v14, 0x8
const-string v10, "sts:GetSessionToken"
invoke-direct {v12, v15, v14, v10}, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;-><init>(Ljava/lang/String;ILjava/lang/String;)V
sput-object v12, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->GetSessionToken:Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
const/16 v10, 0x9
new-array v10, v10, [Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
aput-object v0, v10, v2
aput-object v1, v10, v4
aput-object v3, v10, v6
aput-object v5, v10, v8
const/4 v0, 0x4
aput-object v7, v10, v0
const/4 v0, 0x5
aput-object v9, v10, v0
const/4 v0, 0x6
aput-object v11, v10, v0
const/4 v0, 0x7
aput-object v13, v10, v0
aput-object v12, v10, v14
.line 10
sput-object v10, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->$VALUES:[Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;ILjava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
.line 2
iput-object p3, p0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->action:Ljava/lang/String;
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->$VALUES:[Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;
return-object v0
.end method
# virtual methods
.method public getActionName()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/actions/SecurityTokenServiceActions;->action:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,145 @@
.class public final enum Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.super Ljava/lang/Enum;
.source "ArnCondition.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/conditions/ArnCondition;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "ArnComparisonType"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.field public static final enum ArnEquals:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.field public static final enum ArnLike:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.field public static final enum ArnNotEquals:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.field public static final enum ArnNotLike:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
# direct methods
.method public static constructor <clinit>()V
.locals 9
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
const-string v1, "ArnEquals"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->ArnEquals:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
const-string v3, "ArnLike"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->ArnLike:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
const-string v5, "ArnNotEquals"
const/4 v6, 0x2
invoke-direct {v3, v5, v6}, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->ArnNotEquals:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
const-string v7, "ArnNotLike"
const/4 v8, 0x3
invoke-direct {v5, v7, v8}, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v5, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->ArnNotLike:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
const/4 v7, 0x4
new-array v7, v7, [Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
aput-object v0, v7, v2
aput-object v1, v7, v4
aput-object v3, v7, v6
aput-object v5, v7, v8
.line 5
sput-object v7, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
return-object v0
.end method
@@ -0,0 +1,47 @@
.class public Lcom/amazonaws/auth/policy/conditions/ArnCondition;
.super Lcom/amazonaws/auth/policy/Condition;
.source "ArnCondition.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
}
.end annotation
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
.line 2
invoke-virtual {p1}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
const/4 p1, 0x1
new-array p1, p1, [Ljava/lang/String;
const/4 p2, 0x0
aput-object p3, p1, p2
.line 4
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
@@ -0,0 +1,42 @@
.class public Lcom/amazonaws/auth/policy/conditions/BooleanCondition;
.super Lcom/amazonaws/auth/policy/Condition;
.source "BooleanCondition.java"
# direct methods
.method public constructor <init>(Ljava/lang/String;Z)V
.locals 1
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
const-string v0, "Bool"
.line 2
iput-object v0, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
.line 3
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
const/4 p1, 0x1
new-array p1, p1, [Ljava/lang/String;
.line 4
invoke-static {p2}, Ljava/lang/Boolean;->toString(Z)Ljava/lang/String;
move-result-object p2
const/4 v0, 0x0
aput-object p2, p1, v0
.line 5
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
@@ -0,0 +1,86 @@
.class public final Lcom/amazonaws/auth/policy/conditions/ConditionFactory;
.super Ljava/lang/Object;
.source "ConditionFactory.java"
# static fields
.field public static final CURRENT_TIME_CONDITION_KEY:Ljava/lang/String; = "aws:CurrentTime"
.field public static final EPOCH_TIME_CONDITION_KEY:Ljava/lang/String; = "aws:EpochTime"
.field public static final REFERER_CONDITION_KEY:Ljava/lang/String; = "aws:Referer"
.field public static final SECURE_TRANSPORT_CONDITION_KEY:Ljava/lang/String; = "aws:SecureTransport"
.field public static final SOURCE_ARN_CONDITION_KEY:Ljava/lang/String; = "aws:SourceArn"
.field public static final SOURCE_IP_CONDITION_KEY:Ljava/lang/String; = "aws:SourceIp"
.field public static final USER_AGENT_CONDITION_KEY:Ljava/lang/String; = "aws:UserAgent"
# direct methods
.method private constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static newRefererCondition(Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
.locals 2
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/StringCondition;
const-string v1, "aws:Referer"
invoke-direct {v0, p0, v1, p1}, Lcom/amazonaws/auth/policy/conditions/StringCondition;-><init>(Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
.method public static newSecureTransportCondition()Lcom/amazonaws/auth/policy/Condition;
.locals 3
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/BooleanCondition;
const-string v1, "aws:SecureTransport"
const/4 v2, 0x1
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/conditions/BooleanCondition;-><init>(Ljava/lang/String;Z)V
return-object v0
.end method
.method public static newSourceArnCondition(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
.locals 3
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/ArnCondition;
sget-object v1, Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;->ArnLike:Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;
const-string v2, "aws:SourceArn"
invoke-direct {v0, v1, v2, p0}, Lcom/amazonaws/auth/policy/conditions/ArnCondition;-><init>(Lcom/amazonaws/auth/policy/conditions/ArnCondition$ArnComparisonType;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
.method public static newUserAgentCondition(Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
.locals 2
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/StringCondition;
const-string v1, "aws:UserAgent"
invoke-direct {v0, p0, v1, p1}, Lcom/amazonaws/auth/policy/conditions/StringCondition;-><init>(Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
@@ -0,0 +1,175 @@
.class public final enum Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.super Ljava/lang/Enum;
.source "DateCondition.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/conditions/DateCondition;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "DateComparisonType"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.field public static final enum DateEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.field public static final enum DateGreaterThan:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.field public static final enum DateGreaterThanEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.field public static final enum DateLessThan:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.field public static final enum DateLessThanEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.field public static final enum DateNotEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
# direct methods
.method public static constructor <clinit>()V
.locals 13
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const-string v1, "DateEquals"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->DateEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const-string v3, "DateGreaterThan"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->DateGreaterThan:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const-string v5, "DateGreaterThanEquals"
const/4 v6, 0x2
invoke-direct {v3, v5, v6}, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->DateGreaterThanEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const-string v7, "DateLessThan"
const/4 v8, 0x3
invoke-direct {v5, v7, v8}, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v5, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->DateLessThan:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.line 5
new-instance v7, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const-string v9, "DateLessThanEquals"
const/4 v10, 0x4
invoke-direct {v7, v9, v10}, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v7, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->DateLessThanEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.line 6
new-instance v9, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const-string v11, "DateNotEquals"
const/4 v12, 0x5
invoke-direct {v9, v11, v12}, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v9, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->DateNotEquals:Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
const/4 v11, 0x6
new-array v11, v11, [Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
aput-object v0, v11, v2
aput-object v1, v11, v4
aput-object v3, v11, v6
aput-object v5, v11, v8
aput-object v7, v11, v10
aput-object v9, v11, v12
.line 7
sput-object v11, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
return-object v0
.end method
@@ -0,0 +1,54 @@
.class public Lcom/amazonaws/auth/policy/conditions/DateCondition;
.super Lcom/amazonaws/auth/policy/Condition;
.source "DateCondition.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;
}
.end annotation
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/policy/conditions/DateCondition$DateComparisonType;Ljava/util/Date;)V
.locals 1
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
.line 2
invoke-virtual {p1}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
const-string p1, "aws:CurrentTime"
.line 3
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
const/4 p1, 0x1
new-array p1, p1, [Ljava/lang/String;
.line 4
invoke-static {p2}, Lcom/amazonaws/util/DateUtils;->formatISO8601Date(Ljava/util/Date;)Ljava/lang/String;
move-result-object p2
const/4 v0, 0x0
aput-object p2, p1, v0
.line 5
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
@@ -0,0 +1,115 @@
.class public final enum Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
.super Ljava/lang/Enum;
.source "IpAddressCondition.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/conditions/IpAddressCondition;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "IpAddressComparisonType"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
.field public static final enum IpAddress:Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
.field public static final enum NotIpAddress:Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
# direct methods
.method public static constructor <clinit>()V
.locals 5
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
const-string v1, "IpAddress"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;->IpAddress:Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
const-string v3, "NotIpAddress"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;->NotIpAddress:Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
const/4 v3, 0x2
new-array v3, v3, [Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
aput-object v0, v3, v2
aput-object v1, v3, v4
.line 3
sput-object v3, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
return-object v0
.end method
@@ -0,0 +1,60 @@
.class public Lcom/amazonaws/auth/policy/conditions/IpAddressCondition;
.super Lcom/amazonaws/auth/policy/Condition;
.source "IpAddressCondition.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
}
.end annotation
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;Ljava/lang/String;)V
.locals 1
.line 2
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
.line 3
invoke-virtual {p1}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
const-string p1, "aws:SourceIp"
.line 4
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
const/4 p1, 0x1
new-array p1, p1, [Ljava/lang/String;
const/4 v0, 0x0
aput-object p2, p1, v0
.line 5
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;->IpAddress:Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;
invoke-direct {p0, v0, p1}, Lcom/amazonaws/auth/policy/conditions/IpAddressCondition;-><init>(Lcom/amazonaws/auth/policy/conditions/IpAddressCondition$IpAddressComparisonType;Ljava/lang/String;)V
return-void
.end method
@@ -0,0 +1,175 @@
.class public final enum Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.super Ljava/lang/Enum;
.source "NumericCondition.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/conditions/NumericCondition;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "NumericComparisonType"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.field public static final enum NumericEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.field public static final enum NumericGreaterThan:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.field public static final enum NumericGreaterThanEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.field public static final enum NumericLessThan:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.field public static final enum NumericLessThanEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.field public static final enum NumericNotEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
# direct methods
.method public static constructor <clinit>()V
.locals 13
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const-string v1, "NumericEquals"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->NumericEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const-string v3, "NumericGreaterThan"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->NumericGreaterThan:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const-string v5, "NumericGreaterThanEquals"
const/4 v6, 0x2
invoke-direct {v3, v5, v6}, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->NumericGreaterThanEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const-string v7, "NumericLessThan"
const/4 v8, 0x3
invoke-direct {v5, v7, v8}, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v5, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->NumericLessThan:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.line 5
new-instance v7, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const-string v9, "NumericLessThanEquals"
const/4 v10, 0x4
invoke-direct {v7, v9, v10}, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v7, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->NumericLessThanEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.line 6
new-instance v9, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const-string v11, "NumericNotEquals"
const/4 v12, 0x5
invoke-direct {v9, v11, v12}, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v9, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->NumericNotEquals:Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
const/4 v11, 0x6
new-array v11, v11, [Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
aput-object v0, v11, v2
aput-object v1, v11, v4
aput-object v3, v11, v6
aput-object v5, v11, v8
aput-object v7, v11, v10
aput-object v9, v11, v12
.line 7
sput-object v11, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
return-object v0
.end method
@@ -0,0 +1,47 @@
.class public Lcom/amazonaws/auth/policy/conditions/NumericCondition;
.super Lcom/amazonaws/auth/policy/Condition;
.source "NumericCondition.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;
}
.end annotation
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/policy/conditions/NumericCondition$NumericComparisonType;Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
.line 2
invoke-virtual {p1}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
const/4 p1, 0x1
new-array p1, p1, [Ljava/lang/String;
const/4 p2, 0x0
aput-object p3, p1, p2
.line 4
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
@@ -0,0 +1,175 @@
.class public final enum Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.super Ljava/lang/Enum;
.source "StringCondition.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/conditions/StringCondition;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "StringComparisonType"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;",
">;"
}
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.field public static final enum StringEquals:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.field public static final enum StringEqualsIgnoreCase:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.field public static final enum StringLike:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.field public static final enum StringNotEquals:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.field public static final enum StringNotEqualsIgnoreCase:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.field public static final enum StringNotLike:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
# direct methods
.method public static constructor <clinit>()V
.locals 13
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const-string v1, "StringEquals"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->StringEquals:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.line 2
new-instance v1, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const-string v3, "StringEqualsIgnoreCase"
const/4 v4, 0x1
invoke-direct {v1, v3, v4}, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->StringEqualsIgnoreCase:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.line 3
new-instance v3, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const-string v5, "StringLike"
const/4 v6, 0x2
invoke-direct {v3, v5, v6}, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->StringLike:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.line 4
new-instance v5, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const-string v7, "StringNotEquals"
const/4 v8, 0x3
invoke-direct {v5, v7, v8}, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v5, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->StringNotEquals:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.line 5
new-instance v7, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const-string v9, "StringNotEqualsIgnoreCase"
const/4 v10, 0x4
invoke-direct {v7, v9, v10}, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v7, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->StringNotEqualsIgnoreCase:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.line 6
new-instance v9, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const-string v11, "StringNotLike"
const/4 v12, 0x5
invoke-direct {v9, v11, v12}, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;-><init>(Ljava/lang/String;I)V
sput-object v9, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->StringNotLike:Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
const/4 v11, 0x6
new-array v11, v11, [Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
aput-object v0, v11, v2
aput-object v1, v11, v4
aput-object v3, v11, v6
aput-object v5, v11, v8
aput-object v7, v11, v10
aput-object v9, v11, v12
.line 7
sput-object v11, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.locals 1
.line 1
const-class v0, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
return-object p0
.end method
.method public static values()[Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
.locals 1
.line 1
sget-object v0, Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->$VALUES:[Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
invoke-virtual {v0}, [Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
return-object v0
.end method
@@ -0,0 +1,47 @@
.class public Lcom/amazonaws/auth/policy/conditions/StringCondition;
.super Lcom/amazonaws/auth/policy/Condition;
.source "StringCondition.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;
}
.end annotation
# direct methods
.method public constructor <init>(Lcom/amazonaws/auth/policy/conditions/StringCondition$StringComparisonType;Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
.line 2
invoke-virtual {p1}, Ljava/lang/Enum;->toString()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->type:Ljava/lang/String;
.line 3
iput-object p2, p0, Lcom/amazonaws/auth/policy/Condition;->conditionKey:Ljava/lang/String;
const/4 p1, 0x1
new-array p1, p1, [Ljava/lang/String;
const/4 p2, 0x0
aput-object p3, p1, p2
.line 4
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/Condition;->values:Ljava/util/List;
return-void
.end method
@@ -0,0 +1,36 @@
.class public Lcom/amazonaws/auth/policy/internal/JsonDocumentFields;
.super Ljava/lang/Object;
.source "JsonDocumentFields.java"
# static fields
.field public static final ACTION:Ljava/lang/String; = "Action"
.field public static final CONDITION:Ljava/lang/String; = "Condition"
.field public static final EFFECT_VALUE_ALLOW:Ljava/lang/String; = "Allow"
.field public static final POLICY_ID:Ljava/lang/String; = "Id"
.field public static final PRINCIPAL:Ljava/lang/String; = "Principal"
.field public static final RESOURCE:Ljava/lang/String; = "Resource"
.field public static final STATEMENT:Ljava/lang/String; = "Statement"
.field public static final STATEMENT_EFFECT:Ljava/lang/String; = "Effect"
.field public static final STATEMENT_ID:Ljava/lang/String; = "Sid"
.field public static final VERSION:Ljava/lang/String; = "Version"
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
@@ -0,0 +1,46 @@
.class Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;
.super Ljava/lang/Object;
.source "JsonPolicyReader.java"
# interfaces
.implements Lcom/amazonaws/auth/policy/Action;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "NamedAction"
.end annotation
# instance fields
.field private final actionName:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;->actionName:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public getActionName()Ljava/lang/String;
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;->actionName:Ljava/lang/String;
return-object v0
.end method
@@ -0,0 +1,963 @@
.class public Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;
.super Ljava/lang/Object;
.source "JsonPolicyReader.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;
}
.end annotation
# static fields
.field private static final PRINCIPAL_SCHEMA_SERVICE:Ljava/lang/String; = "Service"
.field private static final PRINCIPAL_SCHEMA_USER:Ljava/lang/String; = "AWS"
.field private static final PRINICIPAL_SCHEMA_FEDERATED:Ljava/lang/String; = "Federated"
# instance fields
.field private reader:Lcom/amazonaws/util/json/AwsJsonReader;
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private actionsOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/util/json/AwsJsonReader;",
")",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Action;",
">;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 2
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->isContainer()Z
move-result v1
if-eqz v1, :cond_1
.line 3
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginArray()V
.line 4
:goto_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
.line 5
new-instance v1, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_0
.line 6
:cond_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->endArray()V
goto :goto_1
.line 7
:cond_1
new-instance v1, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader$NamedAction;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
:goto_1
return-object v0
.end method
.method private conditionsOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/util/json/AwsJsonReader;",
")",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Condition;",
">;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 2
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginObject()V
.line 3
:goto_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
.line 4
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextName()Ljava/lang/String;
move-result-object v1
invoke-direct {p0, v0, v1, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->convertConditionRecord(Ljava/util/List;Ljava/lang/String;Lcom/amazonaws/util/json/AwsJsonReader;)V
goto :goto_0
.line 5
:cond_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->endObject()V
return-object v0
.end method
.method private convertConditionRecord(Ljava/util/List;Ljava/lang/String;Lcom/amazonaws/util/json/AwsJsonReader;)V
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Condition;",
">;",
"Ljava/lang/String;",
"Lcom/amazonaws/util/json/AwsJsonReader;",
")V"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->beginObject()V
.line 2
:goto_0
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
.line 3
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->nextName()Ljava/lang/String;
move-result-object v0
.line 4
new-instance v1, Ljava/util/LinkedList;
invoke-direct {v1}, Ljava/util/LinkedList;-><init>()V
.line 5
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->isContainer()Z
move-result v2
if-eqz v2, :cond_1
.line 6
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->beginArray()V
.line 7
:goto_1
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v2
if-eqz v2, :cond_0
.line 8
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_1
.line 9
:cond_0
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->endArray()V
goto :goto_2
.line 10
:cond_1
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
.line 11
:goto_2
new-instance v2, Lcom/amazonaws/auth/policy/Condition;
invoke-direct {v2}, Lcom/amazonaws/auth/policy/Condition;-><init>()V
invoke-virtual {v2, p2}, Lcom/amazonaws/auth/policy/Condition;->withType(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
move-result-object v2
invoke-virtual {v2, v0}, Lcom/amazonaws/auth/policy/Condition;->withConditionKey(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Condition;
move-result-object v0
.line 12
invoke-virtual {v0, v1}, Lcom/amazonaws/auth/policy/Condition;->withValues(Ljava/util/List;)Lcom/amazonaws/auth/policy/Condition;
move-result-object v0
.line 13
invoke-interface {p1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_0
.line 14
:cond_2
invoke-interface {p3}, Lcom/amazonaws/util/json/AwsJsonReader;->endObject()V
return-void
.end method
.method private createPrincipal(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal;
.locals 2
const-string v0, "AWS"
.line 1
invoke-virtual {p1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_0
.line 2
new-instance p1, Lcom/amazonaws/auth/policy/Principal;
invoke-direct {p1, p2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;)V
return-object p1
:cond_0
const-string v0, "Service"
.line 3
invoke-virtual {p1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_1
.line 4
new-instance v0, Lcom/amazonaws/auth/policy/Principal;
invoke-direct {v0, p1, p2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;Ljava/lang/String;)V
return-object v0
:cond_1
const-string v0, "Federated"
.line 5
invoke-virtual {p1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_3
.line 6
invoke-static {p2}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->fromString(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
move-result-object p1
if-eqz p1, :cond_2
.line 7
new-instance p1, Lcom/amazonaws/auth/policy/Principal;
.line 8
invoke-static {p2}, Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;->fromString(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;
move-result-object p2
invoke-direct {p1, p2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Lcom/amazonaws/auth/policy/Principal$WebIdentityProviders;)V
return-object p1
.line 9
:cond_2
new-instance p1, Lcom/amazonaws/auth/policy/Principal;
invoke-direct {p1, v0, p2}, Lcom/amazonaws/auth/policy/Principal;-><init>(Ljava/lang/String;Ljava/lang/String;)V
return-object p1
.line 10
:cond_3
new-instance p2, Lcom/amazonaws/AmazonClientException;
const-string v0, "Schema "
const-string v1, " is not a valid value for the principal."
invoke-static {v0, p1, v1}, Landroid/support/v4/media/f;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;)V
throw p2
.end method
.method private principalOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/util/json/AwsJsonReader;",
")",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Principal;",
">;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 2
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->isContainer()Z
move-result v1
if-eqz v1, :cond_3
.line 3
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginObject()V
.line 4
:goto_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
.line 5
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextName()Ljava/lang/String;
move-result-object v1
.line 6
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->isContainer()Z
move-result v2
if-eqz v2, :cond_1
.line 7
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginArray()V
.line 8
:goto_1
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v2
if-eqz v2, :cond_0
.line 9
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-direct {p0, v1, v2}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->createPrincipal(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_1
.line 10
:cond_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->endArray()V
goto :goto_0
.line 11
:cond_1
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-direct {p0, v1, v2}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->createPrincipal(Ljava/lang/String;Ljava/lang/String;)Lcom/amazonaws/auth/policy/Principal;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_0
.line 12
:cond_2
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->endObject()V
goto :goto_2
.line 13
:cond_3
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object p1
const-string v1, "*"
.line 14
invoke-virtual {v1, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_4
.line 15
sget-object p1, Lcom/amazonaws/auth/policy/Principal;->All:Lcom/amazonaws/auth/policy/Principal;
invoke-virtual {v0, p1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
:goto_2
return-object v0
.line 16
:cond_4
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Invalid principals: "
invoke-static {v1, p1}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method private resourcesOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/util/json/AwsJsonReader;",
")",
"Ljava/util/List<",
"Lcom/amazonaws/auth/policy/Resource;",
">;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 2
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->isContainer()Z
move-result v1
if-eqz v1, :cond_1
.line 3
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginArray()V
.line 4
:goto_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
.line 5
new-instance v1, Lcom/amazonaws/auth/policy/Resource;
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Lcom/amazonaws/auth/policy/Resource;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_0
.line 6
:cond_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->endArray()V
goto :goto_1
.line 7
:cond_1
new-instance v1, Lcom/amazonaws/auth/policy/Resource;
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1}, Lcom/amazonaws/auth/policy/Resource;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
:goto_1
return-object v0
.end method
.method private statementOf(Lcom/amazonaws/util/json/AwsJsonReader;)Lcom/amazonaws/auth/policy/Statement;
.locals 4
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
new-instance v0, Lcom/amazonaws/auth/policy/Statement;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lcom/amazonaws/auth/policy/Statement;-><init>(Lcom/amazonaws/auth/policy/Statement$Effect;)V
.line 2
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginObject()V
.line 3
:goto_0
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v2
if-eqz v2, :cond_6
.line 4
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextName()Ljava/lang/String;
move-result-object v2
const-string v3, "Effect"
.line 5
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_0
.line 6
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/amazonaws/auth/policy/Statement$Effect;->valueOf(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Statement$Effect;
move-result-object v2
invoke-virtual {v0, v2}, Lcom/amazonaws/auth/policy/Statement;->setEffect(Lcom/amazonaws/auth/policy/Statement$Effect;)V
goto :goto_0
:cond_0
const-string v3, "Sid"
.line 7
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_1
.line 8
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Lcom/amazonaws/auth/policy/Statement;->setId(Ljava/lang/String;)V
goto :goto_0
:cond_1
const-string v3, "Action"
.line 9
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_2
.line 10
invoke-direct {p0, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->actionsOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
move-result-object v2
invoke-virtual {v0, v2}, Lcom/amazonaws/auth/policy/Statement;->setActions(Ljava/util/Collection;)V
goto :goto_0
:cond_2
const-string v3, "Resource"
.line 11
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_3
.line 12
invoke-direct {p0, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->resourcesOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
move-result-object v2
invoke-virtual {v0, v2}, Lcom/amazonaws/auth/policy/Statement;->setResources(Ljava/util/Collection;)V
goto :goto_0
:cond_3
const-string v3, "Principal"
.line 13
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_4
.line 14
invoke-direct {p0, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->principalOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
move-result-object v2
invoke-virtual {v0, v2}, Lcom/amazonaws/auth/policy/Statement;->setPrincipals(Ljava/util/Collection;)V
goto :goto_0
:cond_4
const-string v3, "Condition"
.line 15
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_5
.line 16
invoke-direct {p0, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->conditionsOf(Lcom/amazonaws/util/json/AwsJsonReader;)Ljava/util/List;
move-result-object v2
invoke-virtual {v0, v2}, Lcom/amazonaws/auth/policy/Statement;->setConditions(Ljava/util/List;)V
goto :goto_0
.line 17
:cond_5
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->skipValue()V
goto :goto_0
.line 18
:cond_6
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->endObject()V
.line 19
invoke-virtual {v0}, Lcom/amazonaws/auth/policy/Statement;->getEffect()Lcom/amazonaws/auth/policy/Statement$Effect;
move-result-object p1
if-nez p1, :cond_7
move-object v0, v1
:cond_7
return-object v0
.end method
# virtual methods
.method public createPolicyFromJsonString(Ljava/lang/String;)Lcom/amazonaws/auth/policy/Policy;
.locals 3
if-eqz p1, :cond_4
.line 1
new-instance v0, Ljava/io/StringReader;
invoke-direct {v0, p1}, Ljava/io/StringReader;-><init>(Ljava/lang/String;)V
invoke-static {v0}, Lcom/amazonaws/util/json/JsonUtils;->getJsonReader(Ljava/io/Reader;)Lcom/amazonaws/util/json/AwsJsonReader;
move-result-object p1
iput-object p1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
.line 2
new-instance p1, Lcom/amazonaws/auth/policy/Policy;
invoke-direct {p1}, Lcom/amazonaws/auth/policy/Policy;-><init>()V
.line 3
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 4
:try_start_0
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginObject()V
.line 5
:goto_0
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v1
if-eqz v1, :cond_3
.line 6
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextName()Ljava/lang/String;
move-result-object v1
const-string v2, "Id"
.line 7
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_0
.line 8
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Lcom/amazonaws/auth/policy/Policy;->setId(Ljava/lang/String;)V
goto :goto_0
:cond_0
const-string v2, "Statement"
.line 9
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_2
.line 10
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->beginArray()V
.line 11
:goto_1
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v1
if-eqz v1, :cond_1
.line 12
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-direct {p0, v1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->statementOf(Lcom/amazonaws/util/json/AwsJsonReader;)Lcom/amazonaws/auth/policy/Statement;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_1
.line 13
:cond_1
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->endArray()V
goto :goto_0
.line 14
:cond_2
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->skipValue()V
goto :goto_0
.line 15
:cond_3
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->endObject()V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 16
:try_start_1
iget-object v1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v1}, Lcom/amazonaws/util/json/AwsJsonReader;->close()V
:try_end_1
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0
.line 17
:catch_0
invoke-virtual {p1, v0}, Lcom/amazonaws/auth/policy/Policy;->setStatements(Ljava/util/Collection;)V
return-object p1
:catchall_0
move-exception p1
goto :goto_2
:catch_1
move-exception p1
.line 18
:try_start_2
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Unable to generate policy object fron JSON string "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 19
invoke-virtual {p1}, Ljava/lang/Exception;->getMessage()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 20
new-instance v1, Ljava/lang/IllegalArgumentException;
invoke-direct {v1, v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
.line 21
:goto_2
:try_start_3
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyReader;->reader:Lcom/amazonaws/util/json/AwsJsonReader;
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->close()V
:try_end_3
.catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_2
.line 22
:catch_2
throw p1
.line 23
:cond_4
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "JSON string cannot be null"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
@@ -0,0 +1,183 @@
.class Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;
.super Ljava/lang/Object;
.source "JsonPolicyWriter.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ConditionsByKey"
.end annotation
# instance fields
.field private conditionsByKey:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/util/List<",
"Ljava/lang/String;",
">;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
return-void
.end method
# virtual methods
.method public addValuesToKey(Ljava/lang/String;Ljava/util/List;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/List<",
"Ljava/lang/String;",
">;)V"
}
.end annotation
.line 1
invoke-virtual {p0, p1}, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->getConditionsByKey(Ljava/lang/String;)Ljava/util/List;
move-result-object v0
if-nez v0, :cond_0
.line 2
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1, p2}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
invoke-interface {v0, p1, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
.line 3
:cond_0
invoke-interface {v0, p2}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
:goto_0
return-void
.end method
.method public containsKey(Ljava/lang/String;)Z
.locals 1
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public getConditionsByKey(Ljava/lang/String;)Ljava/util/List;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 2
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/List;
return-object p1
.end method
.method public getConditionsByKey()Ljava/util/Map;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/util/List<",
"Ljava/lang/String;",
">;>;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
return-object v0
.end method
.method public keySet()Ljava/util/Set;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
invoke-interface {v0}, Ljava/util/Map;->keySet()Ljava/util/Set;
move-result-object v0
return-object v0
.end method
.method public setConditionsByKey(Ljava/util/Map;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/util/List<",
"Ljava/lang/String;",
">;>;)V"
}
.end annotation
.line 1
iput-object p1, p0, Lcom/amazonaws/auth/policy/internal/JsonPolicyWriter$ConditionsByKey;->conditionsByKey:Ljava/util/Map;
return-void
.end method
File diff suppressed because it is too large Load Diff