apkfuckery/com.discord/smali/rx/internal/operators/OnSubscribeUsing$DisposeAction.smali
2019-02-04 21:05:16 +01:00

149 lines
4.2 KiB
Smali

.class final Lrx/internal/operators/OnSubscribeUsing$DisposeAction;
.super Ljava/util/concurrent/atomic/AtomicBoolean;
.source "OnSubscribeUsing.java"
# interfaces
.implements Lrx/functions/Action0;
.implements Lrx/Subscription;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lrx/internal/operators/OnSubscribeUsing;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "DisposeAction"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<Resource:",
"Ljava/lang/Object;",
">",
"Ljava/util/concurrent/atomic/AtomicBoolean;",
"Lrx/functions/Action0;",
"Lrx/Subscription;"
}
.end annotation
# static fields
.field private static final serialVersionUID:J = 0x3b28c647329bb8ccL
# instance fields
.field private dispose:Lrx/functions/Action1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lrx/functions/Action1",
"<-TResource;>;"
}
.end annotation
.end field
.field private resource:Ljava/lang/Object;
.annotation system Ldalvik/annotation/Signature;
value = {
"TResource;"
}
.end annotation
.end field
# direct methods
.method constructor <init>(Lrx/functions/Action1;Ljava/lang/Object;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lrx/functions/Action1",
"<-TResource;>;TResource;)V"
}
.end annotation
.prologue
.local p0, "this":Lrx/internal/operators/OnSubscribeUsing$DisposeAction;, "Lrx/internal/operators/OnSubscribeUsing$DisposeAction<TResource;>;"
.local p1, "dispose":Lrx/functions/Action1;, "Lrx/functions/Action1<-TResource;>;"
.local p2, "resource":Ljava/lang/Object;, "TResource;"
invoke-direct {p0}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>()V
iput-object p1, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->dispose:Lrx/functions/Action1;
iput-object p2, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->resource:Ljava/lang/Object;
const/4 v0, 0x0
invoke-virtual {p0, v0}, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->lazySet(Z)V
return-void
.end method
# virtual methods
.method public call()V
.locals 3
.prologue
.local p0, "this":Lrx/internal/operators/OnSubscribeUsing$DisposeAction;, "Lrx/internal/operators/OnSubscribeUsing$DisposeAction<TResource;>;"
const/4 v2, 0x0
const/4 v0, 0x0
const/4 v1, 0x1
invoke-virtual {p0, v0, v1}, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->compareAndSet(ZZ)Z
move-result v0
if-eqz v0, :cond_0
:try_start_0
iget-object v0, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->dispose:Lrx/functions/Action1;
iget-object v1, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->resource:Ljava/lang/Object;
invoke-interface {v0, v1}, Lrx/functions/Action1;->call(Ljava/lang/Object;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
iput-object v2, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->resource:Ljava/lang/Object;
iput-object v2, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->dispose:Lrx/functions/Action1;
:cond_0
return-void
:catchall_0
move-exception v0
iput-object v2, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->resource:Ljava/lang/Object;
iput-object v2, p0, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->dispose:Lrx/functions/Action1;
throw v0
.end method
.method public isUnsubscribed()Z
.locals 1
.prologue
.local p0, "this":Lrx/internal/operators/OnSubscribeUsing$DisposeAction;, "Lrx/internal/operators/OnSubscribeUsing$DisposeAction<TResource;>;"
invoke-virtual {p0}, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->get()Z
move-result v0
return v0
.end method
.method public unsubscribe()V
.locals 0
.prologue
.local p0, "this":Lrx/internal/operators/OnSubscribeUsing$DisposeAction;, "Lrx/internal/operators/OnSubscribeUsing$DisposeAction<TResource;>;"
invoke-virtual {p0}, Lrx/internal/operators/OnSubscribeUsing$DisposeAction;->call()V
return-void
.end method