Removed RemoteSensorManager as abstraction was not used anymore.

This commit is contained in:
Dennis Guse
2019-10-26 14:26:16 +02:00
parent 3a6f417662
commit d8e526923d
6 changed files with 19 additions and 76 deletions
@@ -43,7 +43,6 @@ import de.dennisguse.opentracks.content.Waypoint;
import de.dennisguse.opentracks.content.sensor.SensorDataSet;
import de.dennisguse.opentracks.services.ITrackRecordingService;
import de.dennisguse.opentracks.services.TrackRecordingServiceConnection;
import de.dennisguse.opentracks.services.sensors.RemoteSensorManager;
import de.dennisguse.opentracks.stats.TripStatistics;
import de.dennisguse.opentracks.util.LocationUtils;
import de.dennisguse.opentracks.util.PreferencesUtils;
@@ -57,7 +57,7 @@ import de.dennisguse.opentracks.content.Waypoint;
import de.dennisguse.opentracks.content.Waypoint.WaypointType;
import de.dennisguse.opentracks.content.WaypointCreationRequest;
import de.dennisguse.opentracks.content.sensor.SensorDataSet;
import de.dennisguse.opentracks.services.sensors.RemoteSensorManager;
import de.dennisguse.opentracks.services.sensors.BluetoothRemoteSensorManager;
import de.dennisguse.opentracks.services.sensors.RemoteSensorManagerFactory;
import de.dennisguse.opentracks.services.tasks.AnnouncementPeriodicTaskFactory;
import de.dennisguse.opentracks.services.tasks.PeriodicTaskExecutor;
@@ -169,7 +169,7 @@ public class TrackRecordingService extends Service {
};
private TripStatisticsUpdater markerTripStatisticsUpdater;
private WakeLock wakeLock;
private RemoteSensorManager remoteSensorManager;
private BluetoothRemoteSensorManager remoteSensorManager;
private Location lastLocation;
private boolean currentSegmentHasLocation;
private boolean isIdle; // true if idle
@@ -37,7 +37,9 @@ import de.dennisguse.opentracks.util.UnitConversions;
*
* @author Sandor Dornbush
*/
public class BluetoothRemoteSensorManager extends RemoteSensorManager {
public class BluetoothRemoteSensorManager {
public static final long MAX_SENSOR_DATE_SET_AGE_MS = 5000;
private static final String TAG = BluetoothConnectionManager.class.getSimpleName();
@@ -124,7 +126,6 @@ public class BluetoothRemoteSensorManager extends RemoteSensorManager {
return adapters.get(0);
}
@Override
public void startSensor() {
if (!isEnabled()) {
Log.w(TAG, "Bluetooth not enabled.");
@@ -156,7 +157,6 @@ public class BluetoothRemoteSensorManager extends RemoteSensorManager {
bluetoothConnectionManager.connect();
}
@Override
public void stopSensor() {
if (bluetoothConnectionManager != null) {
bluetoothConnectionManager.disconnect();
@@ -164,13 +164,19 @@ public class BluetoothRemoteSensorManager extends RemoteSensorManager {
}
}
@Override
public boolean isEnabled() {
return bluetoothAdapter != null && bluetoothAdapter.isEnabled();
}
@Override
public SensorDataSet getSensorDataSet() {
return sensorDataSet;
}
public boolean isSensorDataSetValid() {
SensorDataSet sensorDataSet = getSensorDataSet();
if (sensorDataSet == null) {
return false;
}
return sensorDataSet.isRecent(MAX_SENSOR_DATE_SET_AGE_MS);
}
}
@@ -1,62 +0,0 @@
/*
* Copyright 2010 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package de.dennisguse.opentracks.services.sensors;
import de.dennisguse.opentracks.content.sensor.SensorDataSet;
/**
* Manage the connection to a remote sensor.
*
* @author Sandor Dornbush
*/
public abstract class RemoteSensorManager {
public static final long MAX_SENSOR_DATE_SET_AGE_MS = 5000;
private static final String TAG = RemoteSensorManager.class.getSimpleName();
/**
* Returns true if the sensor is enabled.
*/
public abstract boolean isEnabled();
/**
* Gets the sensor data set.
*/
public abstract SensorDataSet getSensorDataSet();
/**
* Starts the sensor.
*/
public abstract void startSensor();
/**
* Stops the sensor.
*/
public abstract void stopSensor();
/**
* Returns true if the sensor data set is valid.
*/
public boolean isSensorDataSetValid() {
SensorDataSet sensorDataSet = getSensorDataSet();
if (sensorDataSet == null) {
return false;
}
return sensorDataSet.isRecent(MAX_SENSOR_DATE_SET_AGE_MS);
}
}
@@ -19,13 +19,13 @@ package de.dennisguse.opentracks.services.sensors;
import android.content.Context;
/**
* A factory of {@link RemoteSensorManager}.
* A factory of {@link BluetoothRemoteSensorManager}.
*
* @author Sandor Dornbush
*/
public class RemoteSensorManagerFactory {
private static RemoteSensorManager remoteSensorManagerSystem = null;
private static BluetoothRemoteSensorManager remoteSensorManagerSystem = null;
private RemoteSensorManagerFactory() {
@@ -36,7 +36,7 @@ public class RemoteSensorManagerFactory {
*
* @param context the context
*/
public static RemoteSensorManager getSystemSensorManager(Context context) {
public static BluetoothRemoteSensorManager getSystemSensorManager(Context context) {
releaseSystemSensorManager();
remoteSensorManagerSystem = getSensorManager(context);
remoteSensorManagerSystem.startSensor();
@@ -58,7 +58,7 @@ public class RemoteSensorManagerFactory {
*
* @param context the context
*/
private static RemoteSensorManager getSensorManager(Context context) {
private static BluetoothRemoteSensorManager getSensorManager(Context context) {
return new BluetoothRemoteSensorManager(context);
}
}
@@ -25,7 +25,7 @@ import android.widget.TextView;
import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.content.sensor.SensorDataSet;
import de.dennisguse.opentracks.services.sensors.RemoteSensorManager;
import de.dennisguse.opentracks.services.sensors.BluetoothRemoteSensorManager;
import de.dennisguse.opentracks.stats.TripStatistics;
/**
@@ -118,7 +118,7 @@ public class StatsUtils {
TextView heartRateSensor = activity.findViewById(R.id.stats_sensor_heart_rate_sensor_value);
String heartRate = activity.getString(R.string.value_unknown);
String sensor = activity.getString(R.string.value_unknown);
if (sensorDataSet != null && sensorDataSet.hasHeartRate() && sensorDataSet.isRecent(RemoteSensorManager.MAX_SENSOR_DATE_SET_AGE_MS)) {
if (sensorDataSet != null && sensorDataSet.hasHeartRate() && sensorDataSet.isRecent(BluetoothRemoteSensorManager.MAX_SENSOR_DATE_SET_AGE_MS)) {
heartRate = StringUtils.formatDecimal(sensorDataSet.getHeartRate(), 0);
sensor = sensorDataSet.getSensorName();
}