CertificatePinner$Pin.smali
.class public final Lokhttp3/CertificatePinner$Pin;
.super Ljava/lang/Object;
.source "CertificatePinner.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lokhttp3/CertificatePinner;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Pin"
.end annotation
.annotation runtime Lkotlin/Metadata;
bv = {
0x1,
0x0,
0x3
}
d1 = {
"\u0000*\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0000\n\u0002\u0010\u000e\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\n\n\u0002\u0010\u000b\n\u0002\u0008\u0002\n\u0002\u0010\u0008\n\u0002\u0008\u0004\u0008\u0080\u0008\u0018\u00002\u00020\u0001B\u001d\u0012\u0006\u0010\u0002\u001a\u00020\u0003\u0012\u0006\u0010\u0004\u001a\u00020\u0003\u0012\u0006\u0010\u0005\u001a\u00020\u0006\u00a2\u0006\u0002\u0010\u0007J\t\u0010\u000c\u001a\u00020\u0003H\u00c2\u0003J\t\u0010\r\u001a\u00020\u0003H\u00c6\u0003J\t\u0010\u000e\u001a\u00020\u0006H\u00c6\u0003J\'\u0010\u000f\u001a\u00020\u00002\u0008\u0008\u0002\u0010\u0002\u001a\u00020\u00032\u0008\u0008\u0002\u0010\u0004\u001a\u00020\u00032\u0008\u0008\u0002\u0010\u0005\u001a\u00020\u0006H\u00c6\u0001J\u0013\u0010\u0010\u001a\u00020\u00112\u0008\u0010\u0012\u001a\u0004\u0018\u00010\u0001H\u00d6\u0003J\t\u0010\u0013\u001a\u00020\u0014H\u00d6\u0001J\u000e\u0010\u0015\u001a\u00020\u00112\u0006\u0010\u0016\u001a\u00020\u0003J\u0008\u0010\u0017\u001a\u00020\u0003H\u0016R\u0011\u0010\u0005\u001a\u00020\u0006\u00a2\u0006\u0008\n\u0000\u001a\u0004\u0008\u0008\u0010\tR\u0011\u0010\u0004\u001a\u00020\u0003\u00a2\u0006\u0008\n\u0000\u001a\u0004\u0008\n\u0010\u000bR\u000e\u0010\u0002\u001a\u00020\u0003X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u00a8\u0006\u0018"
}
d2 = {
"Lokhttp3/CertificatePinner$Pin;",
"",
"pattern",
"",
"hashAlgorithm",
"hash",
"Lokio/ByteString;",
"(Ljava/lang/String;Ljava/lang/String;Lokio/ByteString;)V",
"getHash",
"()Lokio/ByteString;",
"getHashAlgorithm",
"()Ljava/lang/String;",
"component1",
"component2",
"component3",
"copy",
"equals",
"",
"other",
"hashCode",
"",
"matches",
"hostname",
"toString",
"okhttp"
}
k = 0x1
mv = {
0x1,
0x1,
0x10
}
.end annotation
# instance fields
.field private final hash:Lokio/ByteString;
.field private final hashAlgorithm:Ljava/lang/String;
.field private final pattern:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Lokio/ByteString;)V
.registers 5
const-string v0, "pattern"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "hashAlgorithm"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "hash"
invoke-static {p3, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
.line 250
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
iput-object p2, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
iput-object p3, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
return-void
.end method
.method private final component1()Ljava/lang/String;
.registers 2
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
return-object v0
.end method
.method public static synthetic copy$default(Lokhttp3/CertificatePinner$Pin;Ljava/lang/String;Ljava/lang/String;Lokio/ByteString;ILjava/lang/Object;)Lokhttp3/CertificatePinner$Pin;
.registers 6
and-int/lit8 p5, p4, 0x1
if-eqz p5, :cond_6
iget-object p1, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
:cond_6
and-int/lit8 p5, p4, 0x2
if-eqz p5, :cond_c
iget-object p2, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
:cond_c
and-int/lit8 p4, p4, 0x4
if-eqz p4, :cond_12
iget-object p3, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
:cond_12
invoke-virtual {p0, p1, p2, p3}, Lokhttp3/CertificatePinner$Pin;->copy(Ljava/lang/String;Ljava/lang/String;Lokio/ByteString;)Lokhttp3/CertificatePinner$Pin;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public final component2()Ljava/lang/String;
.registers 2
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
return-object v0
.end method
.method public final component3()Lokio/ByteString;
.registers 2
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
return-object v0
.end method
.method public final copy(Ljava/lang/String;Ljava/lang/String;Lokio/ByteString;)Lokhttp3/CertificatePinner$Pin;
.registers 5
const-string v0, "pattern"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "hashAlgorithm"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "hash"
invoke-static {p3, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
new-instance v0, Lokhttp3/CertificatePinner$Pin;
invoke-direct {v0, p1, p2, p3}, Lokhttp3/CertificatePinner$Pin;-><init>(Ljava/lang/String;Ljava/lang/String;Lokio/ByteString;)V
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.registers 4
if-eq p0, p1, :cond_29
instance-of v0, p1, Lokhttp3/CertificatePinner$Pin;
if-eqz v0, :cond_27
check-cast p1, Lokhttp3/CertificatePinner$Pin;
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
iget-object v1, p1, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_27
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
iget-object v1, p1, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_27
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
iget-object p1, p1, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
invoke-static {v0, p1}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_27
goto :goto_29
:cond_27
const/4 p1, 0x0
return p1
:cond_29
:goto_29
const/4 p1, 0x1
return p1
.end method
.method public final getHash()Lokio/ByteString;
.registers 2
.line 256
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
return-object v0
.end method
.method public final getHashAlgorithm()Ljava/lang/String;
.registers 2
.line 254
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
return-object v0
.end method
.method public hashCode()I
.registers 4
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
const/4 v1, 0x0
if-eqz v0, :cond_a
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
goto :goto_b
:cond_a
const/4 v0, 0x0
:goto_b
mul-int/lit8 v0, v0, 0x1f
iget-object v2, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
if-eqz v2, :cond_16
invoke-virtual {v2}, Ljava/lang/Object;->hashCode()I
move-result v2
goto :goto_17
:cond_16
const/4 v2, 0x0
:goto_17
add-int/2addr v0, v2
mul-int/lit8 v0, v0, 0x1f
iget-object v2, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
if-eqz v2, :cond_22
invoke-virtual {v2}, Ljava/lang/Object;->hashCode()I
move-result v1
:cond_22
add-int/2addr v0, v1
return v0
.end method
.method public final matches(Ljava/lang/String;)Z
.registers 13
const-string v0, "hostname"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
.line 260
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
const-string v1, "**."
const/4 v2, 0x0
const/4 v3, 0x2
const/4 v4, 0x0
invoke-static {v0, v1, v2, v3, v4}, Lkotlin/text/StringsKt;->startsWith$default(Ljava/lang/String;Ljava/lang/String;ZILjava/lang/Object;)Z
move-result v0
const/4 v1, 0x1
if-eqz v0, :cond_41
.line 262
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
add-int/lit8 v7, v0, -0x3
.line 263
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
sub-int/2addr v0, v7
.line 264
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
sub-int v4, v3, v7
iget-object v5, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
const/4 v6, 0x3
const/4 v8, 0x0
const/16 v9, 0x10
const/4 v10, 0x0
move-object v3, p1
invoke-static/range {v3 .. v10}, Lkotlin/text/StringsKt;->regionMatches$default(Ljava/lang/String;ILjava/lang/String;IIZILjava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_84
if-eqz v0, :cond_3f
sub-int/2addr v0, v1
.line 265
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result p1
const/16 v0, 0x2e
if-ne p1, v0, :cond_84
:cond_3f
:goto_3f
const/4 v2, 0x1
goto :goto_84
.line 267
:cond_41
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
const-string v5, "*."
invoke-static {v0, v5, v2, v3, v4}, Lkotlin/text/StringsKt;->startsWith$default(Ljava/lang/String;Ljava/lang/String;ZILjava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_7e
.line 269
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
add-int/lit8 v7, v0, -0x1
.line 270
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
sub-int/2addr v0, v7
.line 271
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
sub-int v4, v3, v7
iget-object v5, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
const/4 v6, 0x1
const/4 v8, 0x0
const/16 v9, 0x10
const/4 v10, 0x0
move-object v3, p1
invoke-static/range {v3 .. v10}, Lkotlin/text/StringsKt;->regionMatches$default(Ljava/lang/String;ILjava/lang/String;IIZILjava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_84
.line 272
move-object v4, p1
check-cast v4, Ljava/lang/CharSequence;
const/16 v5, 0x2e
add-int/lit8 v6, v0, -0x1
const/4 v7, 0x0
const/4 v8, 0x4
const/4 v9, 0x0
invoke-static/range {v4 .. v9}, Lkotlin/text/StringsKt;->lastIndexOf$default(Ljava/lang/CharSequence;CIZILjava/lang/Object;)I
move-result p1
const/4 v0, -0x1
if-ne p1, v0, :cond_84
goto :goto_3f
.line 274
:cond_7e
iget-object v0, p0, Lokhttp3/CertificatePinner$Pin;->pattern:Ljava/lang/String;
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v2
:cond_84
:goto_84
return v2
.end method
.method public toString()Ljava/lang/String;
.registers 3
.line 278
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
iget-object v1, p0, Lokhttp3/CertificatePinner$Pin;->hashAlgorithm:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lokhttp3/CertificatePinner$Pin;->hash:Lokio/ByteString;
invoke-virtual {v1}, Lokio/ByteString;->base64()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
return-object v0
.end method