.class public Lcom/discord/models/domain/ModelPresence; .super Lcom/discord/models/domain/Model; .source "ModelPresence.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/discord/models/domain/ModelPresence$Game; } .end annotation # static fields .field public static final IDLE:I = 0x1 .field public static final OFFLINE:I = 0x0 .field public static final ONLINE:I = 0x2 # instance fields .field private game:Lcom/discord/models/domain/ModelPresence$Game; .field private transient guildId:J .field private status:I .field private transient user:Lcom/discord/models/domain/ModelUser; # direct methods .method public constructor ()V .locals 0 .prologue invoke-direct {p0}, Lcom/discord/models/domain/Model;->()V return-void .end method .method public static setPlaying(Landroid/widget/TextView;Lcom/discord/models/domain/ModelPresence;)V .locals 8 .param p0, "textView" # Landroid/widget/TextView; .annotation build Llombok/NonNull; .end annotation .end param .param p1, "presence" # Lcom/discord/models/domain/ModelPresence; .annotation build Landroid/support/annotation/Nullable; .end annotation .end param .prologue const/4 v4, 0x1 const/4 v3, 0x0 if-nez p0, :cond_0 new-instance v2, Ljava/lang/NullPointerException; const-string v3, "textView" invoke-direct {v2, v3}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw v2 :cond_0 if-eqz p1, :cond_2 invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v2 if-eqz v2, :cond_2 invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v2 invoke-virtual {v2}, Lcom/discord/models/domain/ModelPresence$Game;->isPlayingGame()Z move-result v2 if-eqz v2, :cond_2 move v1, v4 .local v1, "playingGame":Z :goto_0 if-eqz v1, :cond_3 move v2, v3 :goto_1 invoke-virtual {p0, v2}, Landroid/widget/TextView;->setVisibility(I)V if-eqz v1, :cond_1 new-instance v2, Lcom/miguelgaeta/spanner/Spanner; invoke-virtual {p0}, Landroid/widget/TextView;->getContext()Landroid/content/Context; move-result-object v5 const v6, 0x7f0602aa invoke-virtual {v5, v6}, Landroid/content/Context;->getString(I)Ljava/lang/String; move-result-object v5 const-string v6, "!!" const-string v7, "" invoke-virtual {v5, v6, v7}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; move-result-object v5 new-array v4, v4, [Ljava/lang/Object; invoke-virtual {p1}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v6 invoke-virtual {v6}, Lcom/discord/models/domain/ModelPresence$Game;->getName()Ljava/lang/String; move-result-object v6 aput-object v6, v4, v3 invoke-static {v5, v4}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; move-result-object v3 invoke-direct {v2, v3}, Lcom/miguelgaeta/spanner/Spanner;->(Ljava/lang/String;)V invoke-virtual {v2}, Lcom/miguelgaeta/spanner/Spanner;->addMarkdownBoldStrategy()Lcom/miguelgaeta/spanner/Spanner; move-result-object v2 invoke-virtual {v2}, Lcom/miguelgaeta/spanner/Spanner;->toSpannableString()Landroid/text/SpannableString; move-result-object v0 .local v0, "gameStatus":Landroid/text/SpannableString; invoke-virtual {p0, v0}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V .end local v0 # "gameStatus":Landroid/text/SpannableString; :cond_1 return-void .end local v1 # "playingGame":Z :cond_2 move v1, v3 goto :goto_0 .restart local v1 # "playingGame":Z :cond_3 const/16 v2, 0x8 goto :goto_1 .end method .method private setStatus(Ljava/lang/String;)I .locals 5 .param p1, "statusString" # Ljava/lang/String; .prologue const/4 v0, 0x2 const/4 v1, 0x1 const/4 v2, 0x0 if-eqz p1, :cond_1 const/4 v3, -0x1 invoke-virtual {p1}, Ljava/lang/String;->hashCode()I move-result v4 sparse-switch v4, :sswitch_data_0 :cond_0 :goto_0 packed-switch v3, :pswitch_data_0 :cond_1 move v0, v2 :goto_1 :pswitch_0 return v0 :sswitch_0 const-string v4, "online" invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v4 if-eqz v4, :cond_0 move v3, v2 goto :goto_0 :sswitch_1 const-string v4, "idle" invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v4 if-eqz v4, :cond_0 move v3, v1 goto :goto_0 :sswitch_2 const-string v4, "offline" invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v4 if-eqz v4, :cond_0 move v3, v0 goto :goto_0 :pswitch_1 move v0, v1 goto :goto_1 :pswitch_2 move v0, v2 goto :goto_1 :sswitch_data_0 .sparse-switch -0x5c4df21d -> :sswitch_2 -0x3c5549ad -> :sswitch_0 0x313fd4 -> :sswitch_1 .end sparse-switch :pswitch_data_0 .packed-switch 0x0 :pswitch_0 :pswitch_1 :pswitch_2 .end packed-switch .end method .method public static setStatus(Landroid/widget/ImageView;I)V .locals 2 .param p0, "imageView" # Landroid/widget/ImageView; .annotation build Llombok/NonNull; .end annotation .end param .param p1, "status" # I .prologue if-nez p0, :cond_0 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "imageView" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw v0 :cond_0 const/4 v0, 0x2 if-ne p1, v0, :cond_1 const v0, 0x7f0d0073 :goto_0 invoke-static {p0, v0}, Lcom/discord/utilities/mg_images/MGImages;->setImage(Landroid/widget/ImageView;I)V return-void :cond_1 if-nez p1, :cond_2 const v0, 0x7f0d0075 goto :goto_0 :cond_2 const v0, 0x7f0d0078 goto :goto_0 .end method .method public static setStatus(Landroid/widget/ImageView;Lcom/discord/models/domain/ModelPresence;)V .locals 2 .param p0, "imageView" # Landroid/widget/ImageView; .annotation build Llombok/NonNull; .end annotation .end param .param p1, "presence" # Lcom/discord/models/domain/ModelPresence; .prologue if-nez p0, :cond_0 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "imageView" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw v0 :cond_0 if-eqz p1, :cond_1 iget v0, p1, Lcom/discord/models/domain/ModelPresence;->status:I :goto_0 invoke-static {p0, v0}, Lcom/discord/models/domain/ModelPresence;->setStatus(Landroid/widget/ImageView;I)V return-void :cond_1 const/4 v0, 0x0 goto :goto_0 .end method # virtual methods .method protected assignField(Lcom/miguelgaeta/message_parser/MessageParser;)V .locals 4 .param p1, "reader" # Lcom/miguelgaeta/message_parser/MessageParser; .annotation build Llombok/NonNull; .end annotation .end param .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .prologue const/4 v3, 0x0 if-nez p1, :cond_0 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "reader" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw v0 :cond_0 invoke-interface {p1}, Lcom/miguelgaeta/message_parser/MessageParser;->nextName()Ljava/lang/String; move-result-object v1 const/4 v0, -0x1 invoke-virtual {v1}, Ljava/lang/String;->hashCode()I move-result v2 sparse-switch v2, :sswitch_data_0 :cond_1 :goto_0 packed-switch v0, :pswitch_data_0 invoke-interface {p1}, Lcom/miguelgaeta/message_parser/MessageParser;->skipValue()V :goto_1 return-void :sswitch_0 const-string v2, "status" invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 const/4 v0, 0x0 goto :goto_0 :sswitch_1 const-string v2, "game" invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 const/4 v0, 0x1 goto :goto_0 :sswitch_2 const-string v2, "user" invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 const/4 v0, 0x2 goto :goto_0 :sswitch_3 const-string v2, "guild_id" invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 const/4 v0, 0x3 goto :goto_0 :pswitch_0 invoke-interface {p1}, Lcom/miguelgaeta/message_parser/MessageParser;->nextStringOrNull()Ljava/lang/String; move-result-object v0 invoke-direct {p0, v0}, Lcom/discord/models/domain/ModelPresence;->setStatus(Ljava/lang/String;)I move-result v0 iput v0, p0, Lcom/discord/models/domain/ModelPresence;->status:I goto :goto_1 :pswitch_1 new-instance v0, Lcom/discord/models/domain/ModelPresence$Game; invoke-direct {v0}, Lcom/discord/models/domain/ModelPresence$Game;->()V invoke-virtual {v0, p1, v3}, Lcom/discord/models/domain/ModelPresence$Game;->parse(Lcom/miguelgaeta/message_parser/MessageParser;Lcom/discord/models/domain/Model;)Lcom/discord/models/domain/Model; move-result-object v0 check-cast v0, Lcom/discord/models/domain/ModelPresence$Game; iput-object v0, p0, Lcom/discord/models/domain/ModelPresence;->game:Lcom/discord/models/domain/ModelPresence$Game; goto :goto_1 :pswitch_2 new-instance v0, Lcom/discord/models/domain/ModelUser; invoke-direct {v0}, Lcom/discord/models/domain/ModelUser;->()V invoke-virtual {v0, p1, v3}, Lcom/discord/models/domain/ModelUser;->parse(Lcom/miguelgaeta/message_parser/MessageParser;Lcom/discord/models/domain/Model;)Lcom/discord/models/domain/Model; move-result-object v0 check-cast v0, Lcom/discord/models/domain/ModelUser; iput-object v0, p0, Lcom/discord/models/domain/ModelPresence;->user:Lcom/discord/models/domain/ModelUser; goto :goto_1 :pswitch_3 iget-wide v0, p0, Lcom/discord/models/domain/ModelPresence;->guildId:J invoke-interface {p1, v0, v1}, Lcom/miguelgaeta/message_parser/MessageParser;->nextLong(J)J move-result-wide v0 iput-wide v0, p0, Lcom/discord/models/domain/ModelPresence;->guildId:J goto :goto_1 :sswitch_data_0 .sparse-switch -0x4de03319 -> :sswitch_3 -0x3532300e -> :sswitch_0 0x304bf2 -> :sswitch_1 0x36ebcb -> :sswitch_2 .end sparse-switch :pswitch_data_0 .packed-switch 0x0 :pswitch_0 :pswitch_1 :pswitch_2 :pswitch_3 .end packed-switch .end method .method protected canEqual(Ljava/lang/Object;)Z .locals 1 .param p1, "other" # Ljava/lang/Object; .prologue instance-of v0, p1, Lcom/discord/models/domain/ModelPresence; return v0 .end method .method public equals(Ljava/lang/Object;)Z .locals 7 .param p1, "o" # Ljava/lang/Object; .prologue const/4 v3, 0x1 const/4 v4, 0x0 if-ne p1, p0, :cond_1 :cond_0 :goto_0 return v3 :cond_1 instance-of v5, p1, Lcom/discord/models/domain/ModelPresence; if-nez v5, :cond_2 move v3, v4 goto :goto_0 :cond_2 move-object v0, p1 check-cast v0, Lcom/discord/models/domain/ModelPresence; .local v0, "other":Lcom/discord/models/domain/ModelPresence; invoke-virtual {v0, p0}, Lcom/discord/models/domain/ModelPresence;->canEqual(Ljava/lang/Object;)Z move-result v5 if-nez v5, :cond_3 move v3, v4 goto :goto_0 :cond_3 invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getStatus()I move-result v5 invoke-virtual {v0}, Lcom/discord/models/domain/ModelPresence;->getStatus()I move-result v6 if-eq v5, v6, :cond_4 move v3, v4 goto :goto_0 :cond_4 invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v2 .local v2, "this$game":Lcom/discord/models/domain/ModelPresence$Game; invoke-virtual {v0}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v1 .local v1, "other$game":Lcom/discord/models/domain/ModelPresence$Game; if-nez v2, :cond_5 if-eqz v1, :cond_0 :goto_1 move v3, v4 goto :goto_0 :cond_5 invoke-virtual {v2, v1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v5 if-nez v5, :cond_0 goto :goto_1 .end method .method public getGame()Lcom/discord/models/domain/ModelPresence$Game; .locals 1 .prologue iget-object v0, p0, Lcom/discord/models/domain/ModelPresence;->game:Lcom/discord/models/domain/ModelPresence$Game; return-object v0 .end method .method public getGuildId()J .locals 2 .prologue iget-wide v0, p0, Lcom/discord/models/domain/ModelPresence;->guildId:J return-wide v0 .end method .method public getStatus()I .locals 1 .prologue iget v0, p0, Lcom/discord/models/domain/ModelPresence;->status:I return v0 .end method .method public getUser()Lcom/discord/models/domain/ModelUser; .locals 1 .prologue iget-object v0, p0, Lcom/discord/models/domain/ModelPresence;->user:Lcom/discord/models/domain/ModelUser; return-object v0 .end method .method public hashCode()I .locals 5 .prologue const/16 v1, 0x3b .local v1, "PRIME":I const/4 v2, 0x1 .local v2, "result":I invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getStatus()I move-result v3 add-int/lit8 v2, v3, 0x3b invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v0 .local v0, "$game":Lcom/discord/models/domain/ModelPresence$Game; mul-int/lit8 v4, v2, 0x3b if-nez v0, :cond_0 const/16 v3, 0x2b :goto_0 add-int v2, v4, v3 return v2 :cond_0 invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I move-result v3 goto :goto_0 .end method .method public merge(Lcom/discord/models/domain/ModelPresence;)Lcom/discord/models/domain/ModelPresence; .locals 2 .param p1, "presence" # Lcom/discord/models/domain/ModelPresence; .prologue new-instance v0, Lcom/discord/models/domain/ModelPresence; invoke-direct {v0}, Lcom/discord/models/domain/ModelPresence;->()V .local v0, "merged":Lcom/discord/models/domain/ModelPresence; iget v1, p0, Lcom/discord/models/domain/ModelPresence;->status:I if-nez v1, :cond_0 if-nez p1, :cond_2 :cond_0 iget v1, p0, Lcom/discord/models/domain/ModelPresence;->status:I :goto_0 iput v1, v0, Lcom/discord/models/domain/ModelPresence;->status:I iget-object v1, p0, Lcom/discord/models/domain/ModelPresence;->game:Lcom/discord/models/domain/ModelPresence$Game; if-nez v1, :cond_1 if-nez p1, :cond_3 :cond_1 iget-object v1, p0, Lcom/discord/models/domain/ModelPresence;->game:Lcom/discord/models/domain/ModelPresence$Game; :goto_1 iput-object v1, v0, Lcom/discord/models/domain/ModelPresence;->game:Lcom/discord/models/domain/ModelPresence$Game; return-object v0 :cond_2 iget v1, p1, Lcom/discord/models/domain/ModelPresence;->status:I goto :goto_0 :cond_3 iget-object v1, p1, Lcom/discord/models/domain/ModelPresence;->game:Lcom/discord/models/domain/ModelPresence$Game; goto :goto_1 .end method .method public toString()Ljava/lang/String; .locals 4 .prologue new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "ModelPresence(status=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getStatus()I move-result v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ", game=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getGame()Lcom/discord/models/domain/ModelPresence$Game; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ", user=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getUser()Lcom/discord/models/domain/ModelUser; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ", guildId=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {p0}, Lcom/discord/models/domain/ModelPresence;->getGuildId()J move-result-wide v2 invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)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 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method