public class com.android.settingslib.bluetooth.LocalBluetoothManager
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.android.settingslib.bluetooth.LocalBluetoothManager
  super_class: java.lang.Object
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "LocalBluetoothManager"

  private static com.android.settingslib.bluetooth.LocalBluetoothManager sInstance;
    descriptor: Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final android.content.Context mContext;
    descriptor: Landroid/content/Context;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.ref.WeakReference<android.content.Context> mForegroundActivity;
    descriptor: Ljava/lang/ref/WeakReference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/WeakReference<Landroid/content/Context;>;

  private final com.android.settingslib.bluetooth.LocalBluetoothAdapter mLocalAdapter;
    descriptor: Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.android.settingslib.bluetooth.CachedBluetoothDeviceManager mCachedDeviceManager;
    descriptor: Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.android.settingslib.bluetooth.LocalBluetoothProfileManager mProfileManager;
    descriptor: Lcom/android/settingslib/bluetooth/LocalBluetoothProfileManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.android.settingslib.bluetooth.BluetoothEventManager mEventManager;
    descriptor: Lcom/android/settingslib/bluetooth/BluetoothEventManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public static synchronized com.android.settingslib.bluetooth.LocalBluetoothManager getInstance(android.content.Context, com.android.settingslib.bluetooth.LocalBluetoothManager$BluetoothManagerCallback);
    descriptor: (Landroid/content/Context;Lcom/android/settingslib/bluetooth/LocalBluetoothManager$BluetoothManagerCallback;)Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // android.content.Context context
        start local 1 // com.android.settingslib.bluetooth.LocalBluetoothManager$BluetoothManagerCallback onInitCallback
         0: .line 53
            getstatic com.android.settingslib.bluetooth.LocalBluetoothManager.sInstance:Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
            ifnonnull 8
         1: .line 54
            invokestatic com.android.settingslib.bluetooth.LocalBluetoothAdapter.getInstance:()Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
            astore 2 /* adapter */
        start local 2 // com.android.settingslib.bluetooth.LocalBluetoothAdapter adapter
         2: .line 55
            aload 2 /* adapter */
            ifnonnull 4
         3: .line 56
            aconst_null
            areturn
         4: .line 59
      StackMap locals: com.android.settingslib.bluetooth.LocalBluetoothAdapter
      StackMap stack:
            aload 0 /* context */
            invokevirtual android.content.Context.getApplicationContext:()Landroid/content/Context;
            astore 3 /* appContext */
        start local 3 // android.content.Context appContext
         5: .line 60
            new com.android.settingslib.bluetooth.LocalBluetoothManager
            dup
            aload 2 /* adapter */
            aload 3 /* appContext */
            invokespecial com.android.settingslib.bluetooth.LocalBluetoothManager.<init>:(Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;Landroid/content/Context;)V
            putstatic com.android.settingslib.bluetooth.LocalBluetoothManager.sInstance:Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
         6: .line 61
            aload 1 /* onInitCallback */
            ifnull 8
         7: .line 62
            aload 1 /* onInitCallback */
            aload 3 /* appContext */
            getstatic com.android.settingslib.bluetooth.LocalBluetoothManager.sInstance:Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
            invokeinterface com.android.settingslib.bluetooth.LocalBluetoothManager$BluetoothManagerCallback.onBluetoothManagerInitialized:(Landroid/content/Context;Lcom/android/settingslib/bluetooth/LocalBluetoothManager;)V
        end local 3 // android.content.Context appContext
        end local 2 // com.android.settingslib.bluetooth.LocalBluetoothAdapter adapter
         8: .line 66
      StackMap locals:
      StackMap stack:
            getstatic com.android.settingslib.bluetooth.LocalBluetoothManager.sInstance:Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
            areturn
        end local 1 // com.android.settingslib.bluetooth.LocalBluetoothManager$BluetoothManagerCallback onInitCallback
        end local 0 // android.content.Context context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0         context  Landroid/content/Context;
            0    9     1  onInitCallback  Lcom/android/settingslib/bluetooth/LocalBluetoothManager$BluetoothManagerCallback;
            2    8     2         adapter  Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
            5    8     3      appContext  Landroid/content/Context;
    MethodParameters:
                Name  Flags
      context         
      onInitCallback  

  private void <init>(com.android.settingslib.bluetooth.LocalBluetoothAdapter, android.content.Context);
    descriptor: (Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;Landroid/content/Context;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
        start local 1 // com.android.settingslib.bluetooth.LocalBluetoothAdapter adapter
        start local 2 // android.content.Context context
         0: .line 69
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 70
            aload 0 /* this */
            aload 2 /* context */
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mContext:Landroid/content/Context;
         2: .line 71
            aload 0 /* this */
            aload 1 /* adapter */
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mLocalAdapter:Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
         3: .line 73
            aload 0 /* this */
            new com.android.settingslib.bluetooth.CachedBluetoothDeviceManager
            dup
            aload 2 /* context */
            aload 0 /* this */
            invokespecial com.android.settingslib.bluetooth.CachedBluetoothDeviceManager.<init>:(Landroid/content/Context;Lcom/android/settingslib/bluetooth/LocalBluetoothManager;)V
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mCachedDeviceManager:Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;
         4: .line 74
            aload 0 /* this */
            new com.android.settingslib.bluetooth.BluetoothEventManager
            dup
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mLocalAdapter:Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
         5: .line 75
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mCachedDeviceManager:Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;
            aload 2 /* context */
            invokespecial com.android.settingslib.bluetooth.BluetoothEventManager.<init>:(Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;Landroid/content/Context;)V
         6: .line 74
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mEventManager:Lcom/android/settingslib/bluetooth/BluetoothEventManager;
         7: .line 76
            aload 0 /* this */
            new com.android.settingslib.bluetooth.LocalBluetoothProfileManager
            dup
            aload 2 /* context */
         8: .line 77
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mLocalAdapter:Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mCachedDeviceManager:Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mEventManager:Lcom/android/settingslib/bluetooth/BluetoothEventManager;
            invokespecial com.android.settingslib.bluetooth.LocalBluetoothProfileManager.<init>:(Landroid/content/Context;Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;Lcom/android/settingslib/bluetooth/BluetoothEventManager;)V
         9: .line 76
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mProfileManager:Lcom/android/settingslib/bluetooth/LocalBluetoothProfileManager;
        10: .line 78
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mEventManager:Lcom/android/settingslib/bluetooth/BluetoothEventManager;
            invokevirtual com.android.settingslib.bluetooth.BluetoothEventManager.readPairedDevices:()Z
            pop
        11: .line 79
            return
        end local 2 // android.content.Context context
        end local 1 // com.android.settingslib.bluetooth.LocalBluetoothAdapter adapter
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
            0   12     1  adapter  Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
            0   12     2  context  Landroid/content/Context;
    MethodParameters:
         Name  Flags
      adapter  
      context  

  public com.android.settingslib.bluetooth.LocalBluetoothAdapter getBluetoothAdapter();
    descriptor: ()Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 82
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mLocalAdapter:Lcom/android/settingslib/bluetooth/LocalBluetoothAdapter;
            areturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;

  public android.content.Context getContext();
    descriptor: ()Landroid/content/Context;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 86
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mContext:Landroid/content/Context;
            areturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;

  public android.content.Context getForegroundActivity();
    descriptor: ()Landroid/content/Context;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 90
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
            ifnonnull 2
         1: .line 91
            aconst_null
            goto 3
         2: .line 92
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.content.Context
         3: .line 90
      StackMap locals:
      StackMap stack: android.content.Context
            areturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;

  public boolean isForegroundActivity();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 96
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
            ifnull 1
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;

  public synchronized void setForegroundActivity(android.content.Context);
    descriptor: (Landroid/content/Context;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
        start local 1 // android.content.Context context
         0: .line 100
            aload 1 /* context */
            ifnull 4
         1: .line 101
            ldc "LocalBluetoothManager"
            ldc "setting foreground activity to non-null context"
            invokestatic android.util.Log.d:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         2: .line 102
            aload 0 /* this */
            new java.lang.ref.WeakReference
            dup
            aload 1 /* context */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
         3: .line 103
            goto 7
         4: .line 104
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
            ifnull 7
         5: .line 105
            ldc "LocalBluetoothManager"
            ldc "setting foreground activity to null"
            invokestatic android.util.Log.d:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         6: .line 106
            aload 0 /* this */
            aconst_null
            putfield com.android.settingslib.bluetooth.LocalBluetoothManager.mForegroundActivity:Ljava/lang/ref/WeakReference;
         7: .line 109
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.content.Context context
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
            0    8     1  context  Landroid/content/Context;
    MethodParameters:
         Name  Flags
      context  

  public com.android.settingslib.bluetooth.CachedBluetoothDeviceManager getCachedDeviceManager();
    descriptor: ()Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 112
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mCachedDeviceManager:Lcom/android/settingslib/bluetooth/CachedBluetoothDeviceManager;
            areturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;

  public com.android.settingslib.bluetooth.BluetoothEventManager getEventManager();
    descriptor: ()Lcom/android/settingslib/bluetooth/BluetoothEventManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 116
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mEventManager:Lcom/android/settingslib/bluetooth/BluetoothEventManager;
            areturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;

  public com.android.settingslib.bluetooth.LocalBluetoothProfileManager getProfileManager();
    descriptor: ()Lcom/android/settingslib/bluetooth/LocalBluetoothProfileManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
         0: .line 120
            aload 0 /* this */
            getfield com.android.settingslib.bluetooth.LocalBluetoothManager.mProfileManager:Lcom/android/settingslib/bluetooth/LocalBluetoothProfileManager;
            areturn
        end local 0 // com.android.settingslib.bluetooth.LocalBluetoothManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/settingslib/bluetooth/LocalBluetoothManager;
}
SourceFile: "LocalBluetoothManager.java"
NestMembers:
  com.android.settingslib.bluetooth.LocalBluetoothManager$BluetoothManagerCallback
InnerClasses:
  public abstract BluetoothManagerCallback = com.android.settingslib.bluetooth.LocalBluetoothManager$BluetoothManagerCallback of com.android.settingslib.bluetooth.LocalBluetoothManager