am 4e25db6a: am cbaef518: Merge "Check whether Bluetooth is enabled before making any API calls." into gingerbread

Merge commit '4e25db6a51c4182139b85e3b01317d161f944bbb'

* commit '4e25db6a51c4182139b85e3b01317d161f944bbb':
  Check whether Bluetooth is enabled before making any API calls.
diff --git a/core/java/android/bluetooth/BluetoothAdapter.java b/core/java/android/bluetooth/BluetoothAdapter.java
index 8eda844..bb4774d 100644
--- a/core/java/android/bluetooth/BluetoothAdapter.java
+++ b/core/java/android/bluetooth/BluetoothAdapter.java
@@ -474,6 +474,7 @@
      * @return     true if the name was set, false otherwise
      */
     public boolean setName(String name) {
+        if (getState() != STATE_ON) return false;
         try {
             return mService.setName(name);
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -493,6 +494,7 @@
      * @return scan mode
      */
     public int getScanMode() {
+        if (getState() != STATE_ON) return SCAN_MODE_NONE;
         try {
             return mService.getScanMode();
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -524,6 +526,7 @@
      * @hide
      */
     public boolean setScanMode(int mode, int duration) {
+        if (getState() != STATE_ON) return false;
         try {
             return mService.setScanMode(mode, duration);
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -532,11 +535,13 @@
 
     /** @hide */
     public boolean setScanMode(int mode) {
+        if (getState() != STATE_ON) return false;
         return setScanMode(mode, 120);
     }
 
     /** @hide */
     public int getDiscoverableTimeout() {
+        if (getState() != STATE_ON) return -1;
         try {
             return mService.getDiscoverableTimeout();
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -545,6 +550,7 @@
 
     /** @hide */
     public void setDiscoverableTimeout(int timeout) {
+        if (getState() != STATE_ON) return;
         try {
             mService.setDiscoverableTimeout(timeout);
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -577,6 +583,7 @@
      * @return true on success, false on error
      */
     public boolean startDiscovery() {
+        if (getState() != STATE_ON) return false;
         try {
             return mService.startDiscovery();
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -597,6 +604,7 @@
      * @return true on success, false on error
      */
     public boolean cancelDiscovery() {
+        if (getState() != STATE_ON) return false;
         try {
             mService.cancelDiscovery();
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -619,6 +627,7 @@
      * @return true if discovering
      */
     public boolean isDiscovering() {
+        if (getState() != STATE_ON) return false;
         try {
             return mService.isDiscovering();
         } catch (RemoteException e) {Log.e(TAG, "", e);}
@@ -633,6 +642,7 @@
      * @return unmodifiable set of {@link BluetoothDevice}, or null on error
      */
     public Set<BluetoothDevice> getBondedDevices() {
+        if (getState() != STATE_ON) return null;
         try {
             return toDeviceSet(mService.listBonds());
         } catch (RemoteException e) {Log.e(TAG, "", e);}