initial
This commit is contained in:
38
app/src/main/java/net/heartshield/data/MeasurementId.java
Normal file
38
app/src/main/java/net/heartshield/data/MeasurementId.java
Normal file
@@ -0,0 +1,38 @@
|
||||
package net.heartshield.data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* Primary key for identifying a Measurement.
|
||||
*
|
||||
* @author David Madl (git@abanbytes.eu)
|
||||
* @date 2017-04-10
|
||||
*/
|
||||
public class MeasurementId implements Serializable {
|
||||
public String appId;
|
||||
public long startTime;
|
||||
|
||||
public MeasurementId(String appId, long startTime) {
|
||||
this.appId = appId;
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public static MeasurementId parse(String measurementId) {
|
||||
int underscore = measurementId.indexOf("_");
|
||||
if(underscore == -1)
|
||||
throw new IllegalArgumentException("could not parse measurementId " + measurementId + " since it did not contain '_'.");
|
||||
return new MeasurementId(measurementId.substring(underscore+1), Long.parseLong(measurementId.substring(0, underscore)));
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
return startTime + "_" + appId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
if(obj == null || !(obj instanceof MeasurementId))
|
||||
return false;
|
||||
MeasurementId other = (MeasurementId) obj;
|
||||
return (this.startTime == other.startTime && this.appId.equals(other.appId));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user