StatisticsData: do not expose DataField.

Part of #1118.
This commit is contained in:
Dennis Guse
2022-10-29 21:47:24 +02:00
parent 3cc3271726
commit d5864726f6
4 changed files with 62 additions and 44 deletions
@@ -1,9 +1,11 @@
package de.dennisguse.opentracks.viewmodels;
import android.content.Context;
import android.util.Pair;
import androidx.annotation.NonNull;
import de.dennisguse.opentracks.ui.customRecordingLayout.CustomLayoutFieldType;
import de.dennisguse.opentracks.ui.customRecordingLayout.DataField;
public class StatisticData {
@@ -19,8 +21,24 @@ public class StatisticData {
this.description = description;
}
public DataField getField() {
return dataField;
public CustomLayoutFieldType getType(Context context) {
return dataField.getType(context);
}
public String getTitle() {
return dataField.getTitle();
}
public boolean isWide() {
return dataField.isWide();
}
public boolean isPrimary() {
return dataField.isPrimary();
}
public boolean isVisible() {
return dataField.isVisible();
}
public String getValue() {
@@ -169,13 +169,13 @@ public class StatisticDataBuilder {
if (sensorDataSet == null) {
return sensorDataList;
}
if (statisticDataList.stream().noneMatch(i -> i.getField().getTitle().equals(context.getString(R.string.stats_sensors_heart_rate))) && sensorDataSet.getHeartRate() != null) {
if (statisticDataList.stream().noneMatch(i -> i.getTitle().equals(context.getString(R.string.stats_sensors_heart_rate))) && sensorDataSet.getHeartRate() != null) {
sensorDataList.add(build(context, recordingData, "heart_rate", true, unitSystem));
}
if (statisticDataList.stream().noneMatch(i -> i.getField().getTitle().equals(context.getString(R.string.stats_sensors_cadence))) && sensorDataSet.getCadence() != null) {
if (statisticDataList.stream().noneMatch(i -> i.getTitle().equals(context.getString(R.string.stats_sensors_cadence))) && sensorDataSet.getCadence() != null) {
sensorDataList.add(build(context, recordingData, "cadence", true, unitSystem));
}
if (statisticDataList.stream().noneMatch(i -> i.getField().getTitle().equals(context.getString(R.string.stats_sensors_power))) && sensorDataSet.getCyclingPower() != null && sensorDataSet.getCyclingPower().hasValue()) {
if (statisticDataList.stream().noneMatch(i -> i.getTitle().equals(context.getString(R.string.stats_sensors_power))) && sensorDataSet.getCyclingPower() != null && sensorDataSet.getCyclingPower().hasValue()) {
sensorDataList.add(build(context, recordingData, "power", true, unitSystem));
}