2016-05-05 10:19:01 +02:00
|
|
|
package nodomain.freeyourgadget.gadgetbridge.entities;
|
|
|
|
|
|
|
|
import nodomain.freeyourgadget.gadgetbridge.devices.SampleProvider;
|
|
|
|
import nodomain.freeyourgadget.gadgetbridge.model.ActivitySample;
|
|
|
|
import nodomain.freeyourgadget.gadgetbridge.util.DateTimeUtils;
|
|
|
|
|
|
|
|
public abstract class AbstractActivitySample implements ActivitySample {
|
|
|
|
private SampleProvider mProvider;
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public SampleProvider getProvider() {
|
|
|
|
return mProvider;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void setProvider(SampleProvider provider) {
|
|
|
|
mProvider = provider;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getKind() {
|
|
|
|
return getProvider().normalizeType(getRawKind());
|
|
|
|
}
|
|
|
|
|
2016-07-27 23:34:13 +02:00
|
|
|
@Override
|
|
|
|
public int getRawKind() {
|
|
|
|
return NOT_MEASURED;
|
|
|
|
}
|
|
|
|
|
2016-05-05 10:19:01 +02:00
|
|
|
@Override
|
|
|
|
public float getIntensity() {
|
|
|
|
return getProvider().normalizeIntensity(getRawIntensity());
|
|
|
|
}
|
|
|
|
|
2016-07-27 23:34:13 +02:00
|
|
|
public void setRawKind(int kind) {
|
|
|
|
}
|
2016-05-16 23:45:21 +02:00
|
|
|
|
2016-07-27 23:34:13 +02:00
|
|
|
public void setRawIntensity(int intensity) {
|
|
|
|
}
|
2016-05-16 23:45:21 +02:00
|
|
|
|
2016-07-27 23:34:13 +02:00
|
|
|
public void setSteps(int steps) {
|
|
|
|
}
|
2016-06-16 21:54:53 +02:00
|
|
|
|
2016-09-04 00:02:58 +02:00
|
|
|
/**
|
|
|
|
* Unix timestamp of the sample, i.e. the number of seconds since 1970-01-01 00:00:00 UTC.
|
|
|
|
*/
|
2016-06-16 21:54:53 +02:00
|
|
|
public abstract void setTimestamp(int timestamp);
|
|
|
|
|
2016-09-06 00:00:48 +02:00
|
|
|
public abstract void setUserId(long userId);
|
2016-06-16 21:54:53 +02:00
|
|
|
|
2016-07-27 23:34:13 +02:00
|
|
|
@Override
|
|
|
|
public void setHeartRate(int heartRate) {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getHeartRate() {
|
|
|
|
return NOT_MEASURED;
|
|
|
|
}
|
2016-06-16 21:54:53 +02:00
|
|
|
|
2016-09-06 00:00:48 +02:00
|
|
|
public abstract void setDeviceId(long deviceId);
|
2016-06-16 21:54:53 +02:00
|
|
|
|
2016-09-06 00:00:48 +02:00
|
|
|
public abstract long getDeviceId();
|
2016-06-16 21:54:53 +02:00
|
|
|
|
2016-09-06 00:00:48 +02:00
|
|
|
public abstract long getUserId();
|
2016-07-27 23:34:13 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getRawIntensity() {
|
|
|
|
return NOT_MEASURED;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getSteps() {
|
|
|
|
return NOT_MEASURED;
|
|
|
|
}
|
|
|
|
|
2016-05-05 10:19:01 +02:00
|
|
|
@Override
|
|
|
|
public String toString() {
|
2016-11-22 00:03:23 +01:00
|
|
|
int kind = getProvider() != null ? getKind() : ActivitySample.NOT_MEASURED;
|
|
|
|
float intensity = getProvider() != null ? getIntensity() : ActivitySample.NOT_MEASURED;
|
2016-05-05 10:19:01 +02:00
|
|
|
return getClass().getSimpleName() + "{" +
|
|
|
|
"timestamp=" + DateTimeUtils.formatDateTime(DateTimeUtils.parseTimeStamp(getTimestamp())) +
|
2016-11-22 00:03:23 +01:00
|
|
|
", intensity=" + intensity +
|
2016-05-05 10:19:01 +02:00
|
|
|
", steps=" + getSteps() +
|
2016-07-27 23:34:13 +02:00
|
|
|
", heartrate=" + getHeartRate() +
|
2016-11-22 00:03:23 +01:00
|
|
|
", type=" + kind +
|
2016-06-16 21:54:53 +02:00
|
|
|
", userId=" + getUserId() +
|
|
|
|
", deviceId=" + getDeviceId() +
|
2016-05-05 10:19:01 +02:00
|
|
|
'}';
|
|
|
|
}
|
|
|
|
}
|