.class final Lcom/facebook/places/internal/LocationPackageManager$1; .super Ljava/lang/Object; .source "LocationPackageManager.java" # interfaces .implements Ljava/lang/Runnable; # annotations .annotation system Ldalvik/annotation/EnclosingMethod; value = Lcom/facebook/places/internal/LocationPackageManager;->requestLocationPackage(Lcom/facebook/places/internal/LocationPackageRequestParams;Lcom/facebook/places/internal/LocationPackageManager$Listener;)V .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x8 name = null .end annotation # instance fields .field final synthetic val$listener:Lcom/facebook/places/internal/LocationPackageManager$Listener; .field final synthetic val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; # direct methods .method constructor (Lcom/facebook/places/internal/LocationPackageRequestParams;Lcom/facebook/places/internal/LocationPackageManager$Listener;)V .locals 0 .prologue .line 58 iput-object p1, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; iput-object p2, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$listener:Lcom/facebook/places/internal/LocationPackageManager$Listener; invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method # virtual methods .method public run()V .locals 5 .prologue const/4 v0, 0x0 .line 61 new-instance v3, Lcom/facebook/places/internal/LocationPackage; invoke-direct {v3}, Lcom/facebook/places/internal/LocationPackage;->()V .line 68 :try_start_0 iget-object v1, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; invoke-virtual {v1}, Lcom/facebook/places/internal/LocationPackageRequestParams;->isLocationScanEnabled()Z move-result v1 if-eqz v1, :cond_5 .line 71 invoke-static {}, Lcom/facebook/FacebookSdk;->getApplicationContext()Landroid/content/Context; move-result-object v1 iget-object v2, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; .line 70 invoke-static {v1, v2}, Lcom/facebook/places/internal/ScannerFactory;->newLocationScanner(Landroid/content/Context;Lcom/facebook/places/internal/LocationPackageRequestParams;)Lcom/facebook/places/internal/LocationScanner; move-result-object v1 .line 76 invoke-interface {v1}, Lcom/facebook/places/internal/LocationScanner;->initAndCheckEligibility()V .line 78 iget-object v2, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; invoke-static {v1, v2}, Lcom/facebook/places/internal/LocationPackageManager;->access$000(Lcom/facebook/places/internal/LocationScanner;Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask; move-result-object v1 .line 79 invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor; move-result-object v2 invoke-interface {v2, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V move-object v2, v1 .line 82 :goto_0 iget-object v1, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; invoke-virtual {v1}, Lcom/facebook/places/internal/LocationPackageRequestParams;->isWifiScanEnabled()Z move-result v1 if-eqz v1, :cond_4 .line 83 iget-object v1, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; invoke-static {v1}, Lcom/facebook/places/internal/LocationPackageManager;->access$100(Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask; move-result-object v1 .line 84 invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor; move-result-object v4 invoke-interface {v4, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V .line 86 :goto_1 iget-object v4, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; invoke-virtual {v4}, Lcom/facebook/places/internal/LocationPackageRequestParams;->isBluetoothScanEnabled()Z move-result v4 if-eqz v4, :cond_0 .line 87 iget-object v0, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams; invoke-static {v0}, Lcom/facebook/places/internal/LocationPackageManager;->access$200(Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask; move-result-object v0 .line 88 invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor; move-result-object v4 invoke-interface {v4, v0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V :try_end_0 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_3 .line 92 :cond_0 if-eqz v0, :cond_1 .line 94 :try_start_1 invoke-virtual {v0}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/facebook/places/internal/LocationPackage; .line 95 iget-object v4, v0, Lcom/facebook/places/internal/LocationPackage;->ambientBluetoothLe:Ljava/util/List; iput-object v4, v3, Lcom/facebook/places/internal/LocationPackage;->ambientBluetoothLe:Ljava/util/List; .line 96 iget-boolean v0, v0, Lcom/facebook/places/internal/LocationPackage;->isBluetoothScanningEnabled:Z iput-boolean v0, v3, Lcom/facebook/places/internal/LocationPackage;->isBluetoothScanningEnabled:Z :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_1 .. :try_end_1} :catch_1 .line 104 :cond_1 :goto_2 if-eqz v1, :cond_2 .line 106 :try_start_2 invoke-virtual {v1}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/facebook/places/internal/LocationPackage; .line 107 iget-boolean v1, v0, Lcom/facebook/places/internal/LocationPackage;->isWifiScanningEnabled:Z iput-boolean v1, v3, Lcom/facebook/places/internal/LocationPackage;->isWifiScanningEnabled:Z .line 109 iget-object v1, v0, Lcom/facebook/places/internal/LocationPackage;->connectedWifi:Lcom/facebook/places/internal/WifiScanResult; iput-object v1, v3, Lcom/facebook/places/internal/LocationPackage;->connectedWifi:Lcom/facebook/places/internal/WifiScanResult; .line 110 iget-object v0, v0, Lcom/facebook/places/internal/LocationPackage;->ambientWifi:Ljava/util/List; iput-object v0, v3, Lcom/facebook/places/internal/LocationPackage;->ambientWifi:Ljava/util/List; :try_end_2 .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_2 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_2 .. :try_end_2} :catch_1 .line 117 :cond_2 :goto_3 if-eqz v2, :cond_3 .line 119 :try_start_3 invoke-virtual {v2}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/facebook/places/internal/LocationPackage; .line 120 iget-object v1, v0, Lcom/facebook/places/internal/LocationPackage;->locationError:Lcom/facebook/places/internal/ScannerException$Type; iput-object v1, v3, Lcom/facebook/places/internal/LocationPackage;->locationError:Lcom/facebook/places/internal/ScannerException$Type; .line 121 iget-object v0, v0, Lcom/facebook/places/internal/LocationPackage;->location:Landroid/location/Location; iput-object v0, v3, Lcom/facebook/places/internal/LocationPackage;->location:Landroid/location/Location; :try_end_3 .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_3} :catch_4 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_3 .. :try_end_3} :catch_1 .line 132 :cond_3 :goto_4 iget-object v0, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$listener:Lcom/facebook/places/internal/LocationPackageManager$Listener; invoke-interface {v0, v3}, Lcom/facebook/places/internal/LocationPackageManager$Listener;->onLocationPackage(Lcom/facebook/places/internal/LocationPackage;)V .line 133 return-void .line 98 :catch_0 move-exception v0 .line 99 :try_start_4 const-string v4, "Exception scanning for bluetooth beacons" invoke-static {v4, v0}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V :try_end_4 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_4 .. :try_end_4} :catch_1 .catch Ljava/lang/Exception; {:try_start_4 .. :try_end_4} :catch_3 goto :goto_2 .line 126 :catch_1 move-exception v0 .line 127 const-string v1, "Exception scanning for locations" invoke-static {v1, v0}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V .line 128 iget-object v0, v0, Lcom/facebook/places/internal/ScannerException;->type:Lcom/facebook/places/internal/ScannerException$Type; iput-object v0, v3, Lcom/facebook/places/internal/LocationPackage;->locationError:Lcom/facebook/places/internal/ScannerException$Type; goto :goto_4 .line 111 :catch_2 move-exception v0 .line 112 :try_start_5 const-string v1, "Exception scanning for wifi access points" invoke-static {v1, v0}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V :try_end_5 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_5 .. :try_end_5} :catch_1 .catch Ljava/lang/Exception; {:try_start_5 .. :try_end_5} :catch_3 goto :goto_3 .line 129 :catch_3 move-exception v0 .line 130 const-string v1, "Exception requesting a location package" invoke-static {v1, v0}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V goto :goto_4 .line 122 :catch_4 move-exception v0 .line 123 :try_start_6 const-string v1, "Exception getting location" invoke-static {v1, v0}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V :try_end_6 .catch Lcom/facebook/places/internal/ScannerException; {:try_start_6 .. :try_end_6} :catch_1 .catch Ljava/lang/Exception; {:try_start_6 .. :try_end_6} :catch_3 goto :goto_4 :cond_4 move-object v1, v0 goto :goto_1 :cond_5 move-object v2, v0 goto/16 :goto_0 .end method