LocationPackageManager$1.smali
.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 <init>(Lcom/facebook/places/internal/LocationPackageRequestParams;Lcom/facebook/places/internal/LocationPackageManager$Listener;)V
.registers 3
.line 1
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;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.registers 6
.line 1
new-instance v0, Lcom/facebook/places/internal/LocationPackage;
invoke-direct {v0}, Lcom/facebook/places/internal/LocationPackage;-><init>()V
.line 2
:try_start_5
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
const/4 v2, 0x0
if-eqz v1, :cond_29
.line 3
invoke-static {}, Lcom/facebook/FacebookSdk;->getApplicationContext()Landroid/content/Context;
move-result-object v1
iget-object v3, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams;
.line 4
invoke-static {v1, v3}, Lcom/facebook/places/internal/ScannerFactory;->newLocationScanner(Landroid/content/Context;Lcom/facebook/places/internal/LocationPackageRequestParams;)Lcom/facebook/places/internal/LocationScanner;
move-result-object v1
.line 5
invoke-interface {v1}, Lcom/facebook/places/internal/LocationScanner;->initAndCheckEligibility()V
.line 6
iget-object v3, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams;
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->newLocationScanFuture(Lcom/facebook/places/internal/LocationScanner;Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask;
invoke-static {v1, v3}, 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 7
invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor;
move-result-object v3
invoke-interface {v3, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
goto :goto_2a
:cond_29
move-object v1, v2
.line 8
:goto_2a
iget-object v3, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams;
invoke-virtual {v3}, Lcom/facebook/places/internal/LocationPackageRequestParams;->isWifiScanEnabled()Z
move-result v3
if-eqz v3, :cond_40
.line 9
iget-object v3, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams;
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->newWifiScanFuture(Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask;
invoke-static {v3}, Lcom/facebook/places/internal/LocationPackageManager;->access$100(Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask;
move-result-object v3
.line 10
invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor;
move-result-object v4
invoke-interface {v4, v3}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
goto :goto_41
:cond_40
move-object v3, v2
.line 11
:goto_41
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_56
.line 12
iget-object v2, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$requestParams:Lcom/facebook/places/internal/LocationPackageRequestParams;
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->newBluetoothScanFuture(Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask;
invoke-static {v2}, Lcom/facebook/places/internal/LocationPackageManager;->access$200(Lcom/facebook/places/internal/LocationPackageRequestParams;)Ljava/util/concurrent/FutureTask;
move-result-object v2
.line 13
invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor;
move-result-object v4
invoke-interface {v4, v2}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
:try_end_56
.catch Lcom/facebook/places/internal/ScannerException; {:try_start_5 .. :try_end_56} :catch_a7
.catch Ljava/lang/Exception; {:try_start_5 .. :try_end_56} :catch_a0
:cond_56
if-eqz v2, :cond_6d
.line 14
:try_start_58
invoke-virtual {v2}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/facebook/places/internal/LocationPackage;
.line 15
iget-object v4, v2, Lcom/facebook/places/internal/LocationPackage;->ambientBluetoothLe:Ljava/util/List;
iput-object v4, v0, Lcom/facebook/places/internal/LocationPackage;->ambientBluetoothLe:Ljava/util/List;
.line 16
iget-boolean v2, v2, Lcom/facebook/places/internal/LocationPackage;->isBluetoothScanningEnabled:Z
iput-boolean v2, v0, Lcom/facebook/places/internal/LocationPackage;->isBluetoothScanningEnabled:Z
:try_end_66
.catch Ljava/lang/Exception; {:try_start_58 .. :try_end_66} :catch_67
goto :goto_6d
:catch_67
move-exception v2
:try_start_68
const-string v4, "Exception scanning for bluetooth beacons"
.line 17
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->logException(Ljava/lang/String;Ljava/lang/Throwable;)V
invoke-static {v4, v2}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V
:try_end_6d
.catch Lcom/facebook/places/internal/ScannerException; {:try_start_68 .. :try_end_6d} :catch_a7
.catch Ljava/lang/Exception; {:try_start_68 .. :try_end_6d} :catch_a0
:cond_6d
:goto_6d
if-eqz v3, :cond_88
.line 18
:try_start_6f
invoke-virtual {v3}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/facebook/places/internal/LocationPackage;
.line 19
iget-boolean v3, v2, Lcom/facebook/places/internal/LocationPackage;->isWifiScanningEnabled:Z
iput-boolean v3, v0, Lcom/facebook/places/internal/LocationPackage;->isWifiScanningEnabled:Z
.line 20
iget-object v3, v2, Lcom/facebook/places/internal/LocationPackage;->connectedWifi:Lcom/facebook/places/internal/WifiScanResult;
iput-object v3, v0, Lcom/facebook/places/internal/LocationPackage;->connectedWifi:Lcom/facebook/places/internal/WifiScanResult;
.line 21
iget-object v2, v2, Lcom/facebook/places/internal/LocationPackage;->ambientWifi:Ljava/util/List;
iput-object v2, v0, Lcom/facebook/places/internal/LocationPackage;->ambientWifi:Ljava/util/List;
:try_end_81
.catch Ljava/lang/Exception; {:try_start_6f .. :try_end_81} :catch_82
goto :goto_88
:catch_82
move-exception v2
:try_start_83
const-string v3, "Exception scanning for wifi access points"
.line 22
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->logException(Ljava/lang/String;Ljava/lang/Throwable;)V
invoke-static {v3, v2}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V
:try_end_88
.catch Lcom/facebook/places/internal/ScannerException; {:try_start_83 .. :try_end_88} :catch_a7
.catch Ljava/lang/Exception; {:try_start_83 .. :try_end_88} :catch_a0
:cond_88
:goto_88
if-eqz v1, :cond_b1
.line 23
:try_start_8a
invoke-virtual {v1}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/facebook/places/internal/LocationPackage;
.line 24
iget-object v2, v1, Lcom/facebook/places/internal/LocationPackage;->locationError:Lcom/facebook/places/internal/ScannerException$Type;
iput-object v2, v0, Lcom/facebook/places/internal/LocationPackage;->locationError:Lcom/facebook/places/internal/ScannerException$Type;
.line 25
iget-object v1, v1, Lcom/facebook/places/internal/LocationPackage;->location:Landroid/location/Location;
iput-object v1, v0, Lcom/facebook/places/internal/LocationPackage;->location:Landroid/location/Location;
:try_end_98
.catch Ljava/lang/Exception; {:try_start_8a .. :try_end_98} :catch_99
goto :goto_b1
:catch_99
move-exception v1
:try_start_9a
const-string v2, "Exception getting location"
.line 26
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->logException(Ljava/lang/String;Ljava/lang/Throwable;)V
invoke-static {v2, v1}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V
:try_end_9f
.catch Lcom/facebook/places/internal/ScannerException; {:try_start_9a .. :try_end_9f} :catch_a7
.catch Ljava/lang/Exception; {:try_start_9a .. :try_end_9f} :catch_a0
goto :goto_b1
:catch_a0
move-exception v1
const-string v2, "Exception requesting a location package"
.line 27
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->logException(Ljava/lang/String;Ljava/lang/Throwable;)V
invoke-static {v2, v1}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_b1
:catch_a7
move-exception v1
const-string v2, "Exception scanning for locations"
.line 28
# invokes: Lcom/facebook/places/internal/LocationPackageManager;->logException(Ljava/lang/String;Ljava/lang/Throwable;)V
invoke-static {v2, v1}, Lcom/facebook/places/internal/LocationPackageManager;->access$300(Ljava/lang/String;Ljava/lang/Throwable;)V
.line 29
iget-object v1, v1, Lcom/facebook/places/internal/ScannerException;->type:Lcom/facebook/places/internal/ScannerException$Type;
iput-object v1, v0, Lcom/facebook/places/internal/LocationPackage;->locationError:Lcom/facebook/places/internal/ScannerException$Type;
.line 30
:cond_b1
:goto_b1
iget-object v1, p0, Lcom/facebook/places/internal/LocationPackageManager$1;->val$listener:Lcom/facebook/places/internal/LocationPackageManager$Listener;
invoke-interface {v1, v0}, Lcom/facebook/places/internal/LocationPackageManager$Listener;->onLocationPackage(Lcom/facebook/places/internal/LocationPackage;)V
return-void
.end method