@OnStart & @OnStop
- by Geertjan
In applications based on NetBeans Platform 7.2, you'll be able to replace all your ModuleInstall classes with this code:
import org.openide.modules.OnStart;
import org.openide.modules.OnStop;
@OnStart
public final class Installer implements Runnable {
@Override
public void run() {
System.out.println("enable something...");
}
@OnStop
public static final class Down implements Runnable {
@Override
public void run() {
System.out.println("disable something...");
}
}
}
Build the module and the annotations result in named services, thanks to @NamedServiceDefinition:
Aside from no longer needing to register the ModuleInstall class in the manifest, performance of startup will be enhanced, if you use the above approach:
https://netbeans.org/bugzilla/show_bug.cgi?id=200636