.class public Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus; .super Ljava/lang/Object; .source "SourceFile" # interfaces .implements Lcom/glu/plugins/gluanalytics/util/EventBus; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus$SubscriberAdapter; } .end annotation # static fields .field private static volatile sInstance:Lcom/glu/plugins/gluanalytics/util/EventBus; # instance fields .field private final mLbm:Landroidx/localbroadcastmanager/content/LocalBroadcastManager; .field private final mReceivers:Ljava/util/Map; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Map<", "Ljava/util/UUID;", "Landroid/content/BroadcastReceiver;", ">;" } .end annotation .end field # direct methods .method private constructor (Landroid/content/Context;)V .locals 0 .line 32 invoke-direct {p0}, Ljava/lang/Object;->()V .line 33 invoke-static {p1}, Landroidx/localbroadcastmanager/content/LocalBroadcastManager;->getInstance(Landroid/content/Context;)Landroidx/localbroadcastmanager/content/LocalBroadcastManager; move-result-object p1 iput-object p1, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mLbm:Landroidx/localbroadcastmanager/content/LocalBroadcastManager; .line 34 new-instance p1, Ljava/util/HashMap; invoke-direct {p1}, Ljava/util/HashMap;->()V iput-object p1, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mReceivers:Ljava/util/Map; return-void .end method .method public static getInstance(Landroid/content/Context;)Lcom/glu/plugins/gluanalytics/util/EventBus; .locals 2 if-eqz p0, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 const-string v1, "context can\'t be null." .line 38 invoke-static {v0, v1}, Lcom/glu/plugins/gluanalytics/util/Common;->require(ZLjava/lang/String;)V sget-object v0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->sInstance:Lcom/glu/plugins/gluanalytics/util/EventBus; if-nez v0, :cond_2 const-class v0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus; .line 40 monitor-enter v0 :try_start_0 sget-object v1, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->sInstance:Lcom/glu/plugins/gluanalytics/util/EventBus; if-nez v1, :cond_1 .line 42 new-instance v1, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus; invoke-direct {v1, p0}, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->(Landroid/content/Context;)V sput-object v1, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->sInstance:Lcom/glu/plugins/gluanalytics/util/EventBus; goto :goto_1 :catchall_0 move-exception p0 goto :goto_2 .line 43 :cond_1 :goto_1 monitor-exit v0 goto :goto_3 :goto_2 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p0 :cond_2 :goto_3 sget-object p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->sInstance:Lcom/glu/plugins/gluanalytics/util/EventBus; return-object p0 .end method .method public static isSupported()Z .locals 1 const/4 v0, 0x1 return v0 .end method # virtual methods .method public publish(Landroid/content/Intent;)V .locals 2 if-eqz p1, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 const-string v1, "intent can\'t be null." .line 91 invoke-static {v0, v1}, Lcom/glu/plugins/gluanalytics/util/Common;->require(ZLjava/lang/String;)V iget-object v0, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mLbm:Landroidx/localbroadcastmanager/content/LocalBroadcastManager; .line 92 invoke-virtual {v0, p1}, Landroidx/localbroadcastmanager/content/LocalBroadcastManager;->sendBroadcast(Landroid/content/Intent;)Z return-void .end method .method public subscribe(Ljava/util/UUID;Lcom/glu/plugins/gluanalytics/util/Subscriber;Ljava/lang/Iterable;)V .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/UUID;", "Lcom/glu/plugins/gluanalytics/util/Subscriber;", "Ljava/lang/Iterable<", "Landroid/content/IntentFilter;", ">;)V" } .end annotation const/4 v0, 0x0 const/4 v1, 0x1 if-eqz p1, :cond_0 move v2, v1 goto :goto_0 :cond_0 move v2, v0 :goto_0 const-string v3, "key can\'t be null." .line 63 invoke-static {v2, v3}, Lcom/glu/plugins/gluanalytics/util/Common;->require(ZLjava/lang/String;)V if-eqz p2, :cond_1 move v2, v1 goto :goto_1 :cond_1 move v2, v0 :goto_1 const-string v3, "weakSubscriber can\'t be null." .line 64 invoke-static {v2, v3}, Lcom/glu/plugins/gluanalytics/util/Common;->require(ZLjava/lang/String;)V if-eqz p3, :cond_2 move v0, v1 :cond_2 const-string v1, "filters can\'t be null." .line 65 invoke-static {v0, v1}, Lcom/glu/plugins/gluanalytics/util/Common;->require(ZLjava/lang/String;)V .line 67 invoke-virtual {p0, p1}, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->unsubscribe(Ljava/util/UUID;)V .line 68 new-instance v0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus$SubscriberAdapter; invoke-direct {v0, p0, p1, p2}, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus$SubscriberAdapter;->(Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;Ljava/util/UUID;Lcom/glu/plugins/gluanalytics/util/Subscriber;)V .line 69 monitor-enter p0 :try_start_0 iget-object p2, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mReceivers:Ljava/util/Map; .line 70 invoke-interface {p2, p1, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 71 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 73 invoke-interface {p3}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object p1 :goto_2 invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z move-result p2 if-eqz p2, :cond_3 invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object p2 check-cast p2, Landroid/content/IntentFilter; iget-object p3, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mLbm:Landroidx/localbroadcastmanager/content/LocalBroadcastManager; .line 74 invoke-virtual {p3, v0, p2}, Landroidx/localbroadcastmanager/content/LocalBroadcastManager;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V goto :goto_2 :cond_3 return-void :catchall_0 move-exception p1 .line 71 :try_start_1 monitor-exit p0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 throw p1 .end method .method public unsubscribe(Ljava/util/UUID;)V .locals 2 if-eqz p1, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 const-string v1, "key can\'t be null." .line 79 invoke-static {v0, v1}, Lcom/glu/plugins/gluanalytics/util/Common;->require(ZLjava/lang/String;)V .line 81 monitor-enter p0 :try_start_0 iget-object v0, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mReceivers:Ljava/util/Map; .line 82 invoke-interface {v0, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/content/BroadcastReceiver; .line 83 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz p1, :cond_1 iget-object v0, p0, Lcom/glu/plugins/gluanalytics/util/LocalBroadcastManagerEventBus;->mLbm:Landroidx/localbroadcastmanager/content/LocalBroadcastManager; .line 86 invoke-virtual {v0, p1}, Landroidx/localbroadcastmanager/content/LocalBroadcastManager;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V :cond_1 return-void :catchall_0 move-exception p1 .line 83 :try_start_1 monitor-exit p0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 throw p1 .end method