summaryrefslogtreecommitdiffstats
path: root/location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java
diff options
context:
space:
mode:
Diffstat (limited to 'location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java')
-rw-r--r--location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java33
1 files changed, 28 insertions, 5 deletions
diff --git a/location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java b/location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java
index 2c39fa8..aaef773 100644
--- a/location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java
+++ b/location/lib/java/com/android/location/provider/FusedLocationHardwareSink.java
@@ -20,11 +20,34 @@ import android.location.Location;
/**
* Base class for sinks to interact with FusedLocationHardware.
+ *
+ * <p>Default implementations allow new methods to be added without crashing
+ * clients compiled against an old library version.
*/
-public abstract class FusedLocationHardwareSink {
- /*
- * Methods to provide a facade for IFusedLocationHardware
+public class FusedLocationHardwareSink {
+ /**
+ * Called when one or more locations are available from the FLP
+ * HAL.
+ */
+ public void onLocationAvailable(Location[] locations) {
+ // default do nothing
+ }
+
+ /**
+ * Called when diagnostic data is available from the FLP HAL.
+ */
+ public void onDiagnosticDataAvailable(String data) {
+ // default do nothing
+ }
+
+ /**
+ * Called when capabilities are available from the FLP HAL.
+ * Should be called once right after initialization.
+ *
+ * @param capabilities A bitmask of capabilities defined in
+ * fused_location.h.
*/
- public abstract void onLocationAvailable(Location[] locations);
- public abstract void onDiagnosticDataAvailable(String data);
+ public void onCapabilities(int capabilities) {
+ // default do nothing
+ }
} \ No newline at end of file