f.smali

.class public final Lcom/subgraph/orchid/d/a/f;
.super Ljava/lang/Object;
.source "PortRange.java"


# static fields
.field public static final bGW:Lcom/subgraph/orchid/d/a/f;


# instance fields
.field private final bGX:I

.field private final bGY:I


# direct methods
.method static constructor <clinit>()V
    .registers 3

    .prologue
    .line 30
    new-instance v0, Lcom/subgraph/orchid/d/a/f;

    const/4 v1, 0x1

    const v2, 0xffff

    invoke-direct {v0, v1, v2}, Lcom/subgraph/orchid/d/a/f;-><init>(II)V

    sput-object v0, Lcom/subgraph/orchid/d/a/f;->bGW:Lcom/subgraph/orchid/d/a/f;

    return-void
.end method

.method private constructor <init>(I)V
    .registers 2

    .prologue
    .line 35
    invoke-direct {p0, p1, p1}, Lcom/subgraph/orchid/d/a/f;-><init>(II)V

    .line 36
    return-void
.end method

.method private constructor <init>(II)V
    .registers 6

    .prologue
    const/4 v0, 0x0

    .line 38
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 1046
    invoke-static {p1}, Lcom/subgraph/orchid/d/a/f;->eT(I)Z

    move-result v1

    if-eqz v1, :cond_10

    invoke-static {p2}, Lcom/subgraph/orchid/d/a/f;->eT(I)Z

    move-result v1

    if-nez v1, :cond_31

    .line 39
    :cond_10
    :goto_10
    if-nez v0, :cond_35

    .line 40
    new-instance v0, Lcom/subgraph/orchid/TorException;

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "Invalid port range: "

    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, "-"

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Lcom/subgraph/orchid/TorException;-><init>(Ljava/lang/String;)V

    throw v0

    .line 1048
    :cond_31
    if-gt p1, p2, :cond_10

    .line 1051
    const/4 v0, 0x1

    goto :goto_10

    .line 41
    :cond_35
    iput p1, p0, Lcom/subgraph/orchid/d/a/f;->bGX:I

    .line 42
    iput p2, p0, Lcom/subgraph/orchid/d/a/f;->bGY:I

    .line 43
    return-void
.end method

.method private static eT(I)Z
    .registers 2

    .prologue
    .line 55
    if-ltz p0, :cond_9

    const v0, 0xffff

    if-gt p0, v0, :cond_9

    const/4 v0, 0x1

    :goto_8
    return v0

    :cond_9
    const/4 v0, 0x0

    goto :goto_8
.end method

.method public static gW(Ljava/lang/String;)Lcom/subgraph/orchid/d/a/f;
    .registers 6

    .prologue
    const/4 v4, 0x1

    const/4 v3, 0x0

    .line 9
    const-string v0, "-"

    invoke-virtual {p0, v0}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object v1

    .line 10
    array-length v0, v1

    if-ne v0, v4, :cond_17

    .line 11
    new-instance v0, Lcom/subgraph/orchid/d/a/f;

    aget-object v1, v1, v3

    invoke-static {v1}, Lcom/subgraph/orchid/d/a/f;->gX(Ljava/lang/String;)I

    move-result v1

    invoke-direct {v0, v1}, Lcom/subgraph/orchid/d/a/f;-><init>(I)V

    .line 13
    :goto_16
    return-object v0

    .line 12
    :cond_17
    array-length v0, v1

    const/4 v2, 0x2

    if-ne v0, v2, :cond_2d

    .line 13
    new-instance v0, Lcom/subgraph/orchid/d/a/f;

    aget-object v2, v1, v3

    invoke-static {v2}, Lcom/subgraph/orchid/d/a/f;->gX(Ljava/lang/String;)I

    move-result v2

    aget-object v1, v1, v4

    invoke-static {v1}, Lcom/subgraph/orchid/d/a/f;->gX(Ljava/lang/String;)I

    move-result v1

    invoke-direct {v0, v2, v1}, Lcom/subgraph/orchid/d/a/f;-><init>(II)V

    goto :goto_16

    .line 15
    :cond_2d
    new-instance v0, Lcom/subgraph/orchid/TorParsingException;

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "Could not parse port range from string: "

    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Lcom/subgraph/orchid/TorParsingException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method private static gX(Ljava/lang/String;)I
    .registers 4

    .prologue
    .line 21
    :try_start_0
    invoke-static {p0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v0

    .line 22
    invoke-static {v0}, Lcom/subgraph/orchid/d/a/f;->eT(I)Z

    move-result v1

    if-nez v1, :cond_35

    .line 23
    new-instance v0, Lcom/subgraph/orchid/TorParsingException;

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "Illegal port value: "

    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Lcom/subgraph/orchid/TorParsingException;-><init>(Ljava/lang/String;)V

    throw v0
    :try_end_1f
    .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_1f} :catch_1f

    .line 26
    :catch_1f
    move-exception v0

    new-instance v0, Lcom/subgraph/orchid/TorParsingException;

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "Could not parse port value: "

    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Lcom/subgraph/orchid/TorParsingException;-><init>(Ljava/lang/String;)V

    throw v0

    .line 24
    :cond_35
    return v0
.end method


# virtual methods
.method public final eU(I)Z
    .registers 3

    .prologue
    .line 59
    iget v0, p0, Lcom/subgraph/orchid/d/a/f;->bGX:I

    if-lt p1, v0, :cond_a

    iget v0, p0, Lcom/subgraph/orchid/d/a/f;->bGY:I

    if-gt p1, v0, :cond_a

    const/4 v0, 0x1

    :goto_9
    return v0

    :cond_a
    const/4 v0, 0x0

    goto :goto_9
.end method

.method public final toString()Ljava/lang/String;
    .registers 3

    .prologue
    .line 63
    iget v0, p0, Lcom/subgraph/orchid/d/a/f;->bGX:I

    const/4 v1, 0x1

    if-ne v0, v1, :cond_f

    iget v0, p0, Lcom/subgraph/orchid/d/a/f;->bGY:I

    const v1, 0xffff

    if-ne v0, v1, :cond_f

    .line 64
    const-string v0, "*"

    .line 68
    :goto_e
    return-object v0

    .line 65
    :cond_f
    iget v0, p0, Lcom/subgraph/orchid/d/a/f;->bGX:I

    iget v1, p0, Lcom/subgraph/orchid/d/a/f;->bGY:I

    if-ne v0, v1, :cond_1c

    .line 66
    iget v0, p0, Lcom/subgraph/orchid/d/a/f;->bGX:I

    invoke-static {v0}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v0

    goto :goto_e

    .line 68
    :cond_1c
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    iget v1, p0, Lcom/subgraph/orchid/d/a/f;->bGX:I

    invoke-static {v1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    const-string v1, "-"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    iget v1, p0, Lcom/subgraph/orchid/d/a/f;->bGY:I

    invoke-static {v1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    goto :goto_e
.end method