public void callback() {
ServiceReference[] references = tracker.getServiceReferences();
if (references != null) {
for (ServiceReference reference : references) {
TemperatureSensor sensor = (TemperatureSensor) tracker.getService(reference);
Double minTemperature = (Double) reference.getProperty(TemperatureSensor.MIN_TEMPERATURE);
Double maxTemperature = (Double) reference.getProperty(TemperatureSensor.MAX_TEMPERATURE);
String sensorName = (String) reference.getProperty(TemperatureSensor.SENSOR_NAME);
double temperature = sensor.readTemperature();
if (temperature >= minTemperature && temperature <= maxTemperature) {
reportNormal(sensorName, temperature);
} else if (temperature < minTemperature) {
reportTooLow(sensorName, temperature);
} else {