public class JMSMessageCounterAdapter implements MeasurementAdapter {
public void setMeasurementData(MeasurementReport report, MetaValue metaValue, MeasurementScheduleRequest request,
MeasurementDefinition measurementDefinition) {
// TODO: fix this
CompositeValueSupport compositeValue = (CompositeValueSupport) metaValue;
DataType dataType = measurementDefinition.getDataType();
String metricName = request.getName();
if (dataType.equals(DataType.MEASUREMENT)) {
//@todo break out the getting the value out of the ValueSupport object
MeasurementDataNumeric dataNumeric = new MeasurementDataNumeric(request,
(Double) ((SimpleValueSupport) (compositeValue.get(metricName))).getValue());
report.addData(dataNumeric);
} else if (dataType.equals(DataType.TRAIT)) {
//@todo break out the getting the value out of the ValueSupport object
MeasurementDataTrait dataTrait = new MeasurementDataTrait(request,
(String) ((SimpleValueSupport) (compositeValue.get(metricName))).getValue());
report.addData(dataTrait);
}
}