m.smali
.class public final Lcom/subgraph/orchid/circuits/m;
.super Lcom/subgraph/orchid/circuits/f;
.source "DirectoryCircuitImpl.java"
# interfaces
.implements Lcom/subgraph/orchid/k;
# direct methods
.method protected constructor <init>(Lcom/subgraph/orchid/circuits/g;Ljava/util/List;)V
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/subgraph/orchid/circuits/g;",
"Ljava/util/List",
"<",
"Lcom/subgraph/orchid/v;",
">;)V"
}
.end annotation
.prologue
.line 16
invoke-direct {p0, p1, p2}, Lcom/subgraph/orchid/circuits/f;-><init>(Lcom/subgraph/orchid/circuits/g;Ljava/util/List;)V
.line 17
return-void
.end method
# virtual methods
.method public final Ji()Lcom/subgraph/orchid/aa;
.registers 3
.prologue
.line 20
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/subgraph/orchid/circuits/m;->be(Z)Lcom/subgraph/orchid/circuits/s;
move-result-object v0
.line 22
:try_start_5
invoke-virtual {v0}, Lcom/subgraph/orchid/circuits/s;->Lg()V
:try_end_8
.catch Ljava/lang/Exception; {:try_start_5 .. :try_end_8} :catch_9
.line 26
:goto_8
return-object v0
.line 24
:catch_9
move-exception v1
.line 25
invoke-virtual {p0, v0}, Lcom/subgraph/orchid/circuits/m;->a(Lcom/subgraph/orchid/circuits/s;)V
.line 26
invoke-static {v1}, Lcom/subgraph/orchid/circuits/m;->d(Ljava/lang/Exception;)Lcom/subgraph/orchid/aa;
move-result-object v0
goto :goto_8
.end method
.method protected final KK()Ljava/lang/String;
.registers 2
.prologue
.line 40
const-string v0, "Directory"
return-object v0
.end method
.method protected final b(Lcom/subgraph/orchid/circuits/path/d;)Ljava/util/List;
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/subgraph/orchid/circuits/path/d;",
")",
"Ljava/util/List",
"<",
"Lcom/subgraph/orchid/v;",
">;"
}
.end annotation
.prologue
const/4 v4, 0x1
const/4 v3, 0x0
.line 32
iget-object v0, p0, Lcom/subgraph/orchid/circuits/m;->bCc:Ljava/util/List;
if-eqz v0, :cond_9
.line 33
iget-object v0, p0, Lcom/subgraph/orchid/circuits/m;->bCc:Ljava/util/List;
.line 1050
:goto_8
return-object v0
.line 1044
:cond_9
iget-boolean v0, p1, Lcom/subgraph/orchid/circuits/path/d;->bFc:Z
if-eqz v0, :cond_34
iget-object v0, p1, Lcom/subgraph/orchid/circuits/path/d;->bEa:Lcom/subgraph/orchid/circuits/b/d;
.line 1054
iget-object v0, v0, Lcom/subgraph/orchid/circuits/b/d;->bBr:Lcom/subgraph/orchid/TorConfig;
invoke-interface {v0}, Lcom/subgraph/orchid/TorConfig;->Ku()Z
move-result v0
.line 1044
if-eqz v0, :cond_34
.line 1045
invoke-static {}, Ljava/util/Collections;->emptySet()Ljava/util/Set;
move-result-object v0
.line 1046
iget-object v1, p1, Lcom/subgraph/orchid/circuits/path/d;->bEa:Lcom/subgraph/orchid/circuits/b/d;
invoke-virtual {v1, v0}, Lcom/subgraph/orchid/circuits/b/d;->h(Ljava/util/Set;)Lcom/subgraph/orchid/v;
move-result-object v0
.line 1047
if-nez v0, :cond_2b
.line 1048
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Failed to choose bridge for directory request"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 1050
:cond_2b
new-array v1, v4, [Lcom/subgraph/orchid/v;
aput-object v0, v1, v3
invoke-static {v1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
goto :goto_8
.line 1052
:cond_34
iget-object v1, p1, Lcom/subgraph/orchid/circuits/path/d;->bDN:Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser;
.line 2039
new-instance v0, Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser$1;
invoke-direct {v0}, Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser$1;-><init>()V
.line 2044
invoke-virtual {v1, v0, v3}, Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser;->a(Lcom/subgraph/orchid/circuits/path/j;Z)Ljava/util/List;
move-result-object v0
.line 2045
sget-object v2, Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser$WeightRule;->WEIGHT_FOR_DIR:Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser$WeightRule;
invoke-virtual {v1, v0, v2}, Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser;->a(Ljava/util/List;Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser$WeightRule;)Lcom/subgraph/orchid/v;
move-result-object v0
.line 2046
if-nez v0, :cond_4d
.line 2047
iget-object v0, v1, Lcom/subgraph/orchid/circuits/path/CircuitNodeChooser;->bBs:Lcom/subgraph/orchid/j;
invoke-interface {v0}, Lcom/subgraph/orchid/j;->Jc()Lcom/subgraph/orchid/m;
move-result-object v0
.line 1053
:cond_4d
new-array v1, v4, [Lcom/subgraph/orchid/v;
aput-object v0, v1, v3
invoke-static {v1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
goto :goto_8
.end method