LightManager.java
/*
* Copyright © 2012 Nokia Corporation. All rights reserved.
* Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation.
* Oracle and Java are trademarks or registered trademarks of Oracle and/or its
* affiliates. Other product and company names mentioned herein may be trademarks
* or trade names of their respective owners.
* See LICENSE.TXT for license information.
*/
package com.nokia.example.explonoid.effects;
import com.nokia.mid.ui.DeviceControl;
import java.util.Timer;
import java.util.TimerTask;
public class LightManager {
private static final int NORMAL_LIGHT = 60;
private static final int BRIGHT_LIGHT = 100;
private static final int PULSE_DURATION = 60;
private static Timer flasher = new Timer();
private static Timer avoider;
public static void avoidDimming() {
if (avoider == null) {
try {
avoider = new Timer();
avoider.schedule(new TimerTask() {
public void run() {
DeviceControl.setLights(0, NORMAL_LIGHT);
}
}, 0, 5000);
}
catch (Exception e) {
}
}
}
public static void allowDimming() {
if (avoider != null) {
avoider.cancel();
avoider = null;
}
}
public static void pulse(int repeats) {
try {
flasher = new Timer();
for (int i = 0; i < repeats; i++) {
flasher.schedule(new TimerTask() {
public void run() {
DeviceControl.setLights(0, BRIGHT_LIGHT);
}
}, 2 * i * PULSE_DURATION);
flasher.schedule(new TimerTask() {
public void run() {
DeviceControl.setLights(0, NORMAL_LIGHT);
}
}, PULSE_DURATION + 2 * i * PULSE_DURATION);
}
}
catch (Exception e) {
}
}
}