.class public Landroid/support/v4/os/ResultReceiver; .super Ljava/lang/Object; .source "SourceFile" # interfaces .implements Landroid/os/Parcelable; # annotations .annotation build Landroid/annotation/SuppressLint; value = { "BanParcelableUsage" } .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/os/ResultReceiver$MyRunnable;, Landroid/support/v4/os/ResultReceiver$MyResultReceiver; } .end annotation # static fields .field public static final CREATOR:Landroid/os/Parcelable$Creator; .annotation system Ldalvik/annotation/Signature; value = { "Landroid/os/Parcelable$Creator<", "Landroid/support/v4/os/ResultReceiver;", ">;" } .end annotation .end field # instance fields .field final mHandler:Landroid/os/Handler; .field final mLocal:Z .field mReceiver:Landroid/support/v4/os/IResultReceiver; # direct methods .method static constructor ()V .locals 1 .line 149 new-instance v0, Landroid/support/v4/os/ResultReceiver$1; invoke-direct {v0}, Landroid/support/v4/os/ResultReceiver$1;->()V sput-object v0, Landroid/support/v4/os/ResultReceiver;->CREATOR:Landroid/os/Parcelable$Creator; return-void .end method .method public constructor (Landroid/os/Handler;)V .locals 1 .line 83 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x1 iput-boolean v0, p0, Landroid/support/v4/os/ResultReceiver;->mLocal:Z iput-object p1, p0, Landroid/support/v4/os/ResultReceiver;->mHandler:Landroid/os/Handler; return-void .end method .method public constructor (Landroid/os/Parcel;)V .locals 1 .line 140 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x0 iput-boolean v0, p0, Landroid/support/v4/os/ResultReceiver;->mLocal:Z const/4 v0, 0x0 iput-object v0, p0, Landroid/support/v4/os/ResultReceiver;->mHandler:Landroid/os/Handler; .line 145 invoke-virtual {p1}, Landroid/os/Parcel;->readStrongBinder()Landroid/os/IBinder; move-result-object p1 invoke-static {p1}, Landroid/support/v4/os/IResultReceiver$Stub;->asInterface(Landroid/os/IBinder;)Landroid/support/v4/os/IResultReceiver; move-result-object p1 iput-object p1, p0, Landroid/support/v4/os/ResultReceiver;->mReceiver:Landroid/support/v4/os/IResultReceiver; return-void .end method # virtual methods .method public describeContents()I .locals 1 const/4 v0, 0x0 return v0 .end method .method public onReceiveResult(ILandroid/os/Bundle;)V .locals 0 return-void .end method .method public send(ILandroid/os/Bundle;)V .locals 2 iget-boolean v0, p0, Landroid/support/v4/os/ResultReceiver;->mLocal:Z if-eqz v0, :cond_1 iget-object v0, p0, Landroid/support/v4/os/ResultReceiver;->mHandler:Landroid/os/Handler; if-eqz v0, :cond_0 .line 98 new-instance v1, Landroid/support/v4/os/ResultReceiver$MyRunnable; invoke-direct {v1, p0, p1, p2}, Landroid/support/v4/os/ResultReceiver$MyRunnable;->(Landroid/support/v4/os/ResultReceiver;ILandroid/os/Bundle;)V invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z goto :goto_0 .line 100 :cond_0 invoke-virtual {p0, p1, p2}, Landroid/support/v4/os/ResultReceiver;->onReceiveResult(ILandroid/os/Bundle;)V :goto_0 return-void :cond_1 iget-object v0, p0, Landroid/support/v4/os/ResultReceiver;->mReceiver:Landroid/support/v4/os/IResultReceiver; if-eqz v0, :cond_2 .line 107 :try_start_0 invoke-interface {v0, p1, p2}, Landroid/support/v4/os/IResultReceiver;->send(ILandroid/os/Bundle;)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 :catch_0 :cond_2 return-void .end method .method public writeToParcel(Landroid/os/Parcel;I)V .locals 0 .param p1 # Landroid/os/Parcel; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 131 monitor-enter p0 :try_start_0 iget-object p2, p0, Landroid/support/v4/os/ResultReceiver;->mReceiver:Landroid/support/v4/os/IResultReceiver; if-nez p2, :cond_0 .line 133 new-instance p2, Landroid/support/v4/os/ResultReceiver$MyResultReceiver; invoke-direct {p2, p0}, Landroid/support/v4/os/ResultReceiver$MyResultReceiver;->(Landroid/support/v4/os/ResultReceiver;)V iput-object p2, p0, Landroid/support/v4/os/ResultReceiver;->mReceiver:Landroid/support/v4/os/IResultReceiver; goto :goto_0 :catchall_0 move-exception p1 goto :goto_1 :cond_0 :goto_0 iget-object p2, p0, Landroid/support/v4/os/ResultReceiver;->mReceiver:Landroid/support/v4/os/IResultReceiver; .line 135 invoke-interface {p2}, Landroid/os/IInterface;->asBinder()Landroid/os/IBinder; move-result-object p2 invoke-virtual {p1, p2}, Landroid/os/Parcel;->writeStrongBinder(Landroid/os/IBinder;)V .line 136 monitor-exit p0 return-void :goto_1 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method