}
return null;
} else if (OBJECT_ACTION_RUNTIME_PERFORMANCE_THROUGHPUT.equals(propertyURI)) {
Value extracted = extractMeasuredValue(alternative, sample, OBJECT_ACTION_RUNTIME_PERFORMANCE_TIME_PERSAMPLE);
if (extracted instanceof PositiveFloatValue){
PositiveFloatValue value = new PositiveFloatValue();
double floatVal = ((PositiveFloatValue)extracted).getValue();
if (Double.compare(floatVal, 0.0) != 0) {
// calculate msec/MB
floatVal = floatVal / sampleSize;
// throughput is defined in MB per second, time/perMB is msec/MB
value.setValue((1.0/(floatVal/1000.0)));
}
value.setComment("extracted from experiment details");
return value;
}
} else if (OBJECT_ACTION_RUNTIME_PERFORMANCE_TIME_PERMB.equals(propertyURI)) {
Value extracted = extractMeasuredValue(alternative, sample, OBJECT_ACTION_RUNTIME_PERFORMANCE_TIME_PERSAMPLE);
if (extracted instanceof PositiveFloatValue){
PositiveFloatValue value = new PositiveFloatValue();
double floatVal = ((PositiveFloatValue)extracted).getValue();
if (Double.compare(floatVal, 0.0) != 0) {
// calculate msec/MB
floatVal = floatVal / sampleSize;
value.setValue(floatVal);
}
value.setComment("extracted from experiment details");
return value;
}
} else if(OBJECT_ACTION_RUNTIME_PERFORMANCE_MEMORY_PERMB.equals(propertyURI)) {
Value extracted = extractMeasuredValue(alternative, sample, OBJECT_ACTION_RUNTIME_PERFORMANCE_MEMORY_PERSAMPLE);
if (extracted instanceof PositiveFloatValue) {
PositiveFloatValue value = new PositiveFloatValue();
double floatVal = ((PositiveFloatValue)extracted).getValue();
value.setValue(floatVal / sampleSize);
value.setComment("extracted from experiment details");
return value;
}
}
Value extracted = extractMeasuredValue(alternative, sample, propertyURI);
if (extracted != null) {