diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2015-01-02 21:38:52 +0100 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2015-01-02 21:38:52 +0100 |
commit | da80f3d219c0c05568db0cb9a8910f02cc281d47 (patch) | |
tree | f62e2c251a03e2a33a7733f1e5d1829a40bdb1ba /app/src/main/java/io/trygvis/android/bt/BtDevice.java | |
parent | ed559834ccddafa955df5b528f08fba964e57699 (diff) | |
download | io.trygvis.soilmoisture-android-da80f3d219c0c05568db0cb9a8910f02cc281d47.tar.gz io.trygvis.soilmoisture-android-da80f3d219c0c05568db0cb9a8910f02cc281d47.tar.bz2 io.trygvis.soilmoisture-android-da80f3d219c0c05568db0cb9a8910f02cc281d47.tar.xz io.trygvis.soilmoisture-android-da80f3d219c0c05568db0cb9a8910f02cc281d47.zip |
o Getting closer to something that actually work.
Diffstat (limited to 'app/src/main/java/io/trygvis/android/bt/BtDevice.java')
-rw-r--r-- | app/src/main/java/io/trygvis/android/bt/BtDevice.java | 40 |
1 files changed, 26 insertions, 14 deletions
diff --git a/app/src/main/java/io/trygvis/android/bt/BtDevice.java b/app/src/main/java/io/trygvis/android/bt/BtDevice.java index ba10d2d..e34e9ea 100644 --- a/app/src/main/java/io/trygvis/android/bt/BtDevice.java +++ b/app/src/main/java/io/trygvis/android/bt/BtDevice.java @@ -3,6 +3,8 @@ package io.trygvis.android.bt; import android.bluetooth.BluetoothDevice; import android.util.Log; +import io.trygvis.android.Function; + public class BtDevice<A> { private final static String TAG = BtDevice.class.getSimpleName(); @@ -14,31 +16,22 @@ public class BtDevice<A> { private boolean seenNow; - private BtDeviceListener l = null; - - private BtDeviceListener listener = new BtDeviceListener() { - }; + public static interface BtDeviceWrapper<A> { + BtDevice<A> getBtDevice(); + } - public BtDevice(DefaultBtService btService, BluetoothDevice bluetoothDevice, A tag, Integer rssi, BtScanResult scanResult) { + BtDevice(DefaultBtService btService, BluetoothDevice bluetoothDevice, Function<BtDevice<A>, A> tagConstructor, Integer rssi, BtScanResult scanResult) { this.btService = btService; this.bluetoothDevice = bluetoothDevice; - this.tag = tag; + this.tag = tagConstructor.apply(this); this.rssi = rssi; this.scanResult = scanResult; } - public void addListener(BtDeviceListener listener) { - this.l = listener; - } - public A getTag() { return tag; } - public void setTag(A tag) { - this.tag = tag; - } - public String getAddress() { return bluetoothDevice.getAddress(); } @@ -65,4 +58,23 @@ public class BtDevice<A> { public String toString() { return "BtDevice{address=" + bluetoothDevice.getAddress() + '}'; } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + BtDevice other = (BtDevice) o; + + return getAddress().equals(other.getAddress()); + } + + @Override + public int hashCode() { + return getAddress().hashCode(); + } } |