
ru.taskurotta.service.metrics.model.NumberDataRowVO Maven / Gradle / Ivy
package ru.taskurotta.service.metrics.model;
import java.util.concurrent.atomic.AtomicReferenceArray;
/**
* User: dimadin
* Date: 24.10.13 17:02
*/
public class NumberDataRowVO extends BaseDataRowVO {
private AtomicReferenceArray> data;
public NumberDataRowVO(int size, String metricName, String dataSetName) {
super(size, metricName, dataSetName);
data = new AtomicReferenceArray>(size);
}
//Return updated position
public int populate(Number value, long measureTime) {
int position = getPosition();
DataPointVO positionValue = this.data.get(position);
if (positionValue!=null) {
positionValue.update(value, measureTime);
} else {
this.data.set(position, new DataPointVO(value, measureTime));
}
this.updated = System.currentTimeMillis();
if (lastActive < measureTime) {
this.lastActive = measureTime;
}
return position;
}
public DataPointVO[] getCurrentData() {
DataPointVO[] result = new DataPointVO[size];
for (int i = 0; i
© 2015 - 2025 Weber Informatics LLC | Privacy Policy