public void onMeasurementRequest (final @ListensTo @Nonnull MeasurementRequest message)
throws InterruptedException
{
log.info("onMeasurementRequest({})", message);
Thread.sleep(500);
final ColorCoordinatesSet coordinatesSet = new ColorCoordinatesSet(colorLab(r.nextDouble() * 100, r.nextDouble() * 100, r.nextDouble() * 100),
colorXYZ(r.nextDouble() * 100, r.nextDouble() * 100, r.nextDouble() * 100));
final MeasureWithPrecision<ColorTemperature> ccTemp = measureWithPrecision(kelvin(2000 + r.nextInt(6000)), r.nextDouble() * 10);
final MeasureWithPrecision<ColorTemperature> planckianTemp = measureWithPrecision(kelvin(2000 + r.nextInt(6000)), r.nextDouble() * 10);
final MeasureWithPrecision<ColorTemperature> daylightTemp = measureWithPrecision(kelvin(2000 + r.nextInt(6000)), r.nextDouble() * 10);
new MeasurementMessage(coordinatesSet, ccTemp, planckianTemp, daylightTemp).send();
}
}