BeanDev: Vorbelegen von Optionseigenschaften des Autoupdater
Es ist nur eine Kleinigkeit, aber mit der Umstellung in NetBeans 6.0 von der Options-API auf die Preferences-API kann man relativ einfach auch Einstellungen fremder Module beeinflussen.
So brauche ich für meine Plattform-Entwicklungen kürzere Prüfungsintervalle für das Autoupdate. Als Standard ist "Wöchentlich" vorgegeben. Sinnvoller für Anwendungen im Kundenbereich ist aber eine tägliche Prüfung auf Updates.
Folgender 5-Zeiler im Module-Installer der restored() - Methode, löst das Problem, ohne ggf. vom Benutzer eingestellte Werte zu überschreiben
final String AU = "/org/netbeans/modules/autoupdate";
final Preferences root = NbPreferences.root();
if ( root.node (AU).get ("period", null) == null) {
root.node (AU).put ("period", "1");
}
Dabei sind folgende Werte im Quelltext des Autoupdater definiert:
public static final int EVERY_STARTUP = 0;
public static final int EVERY_DAY = 1;
public static final int EVERY_WEEK = 2;
public static final int EVERY_2WEEKS = 3;
public static final int EVERY_MONTH = 4;
public static final int NEVER = 5;
Wenn man schon auf NetBeans 6.1 entwickelt, gibt es noch eine zusätzliche Möglichkeit den Standardwert des Autoupdaters vorzugeben. Man kann das Intervall als System-Eigenschaft dem NetBeans-Launcher mitgeben. Entweder direkt auf der Kommandozeile oder in etc/app.conf (im harness-Ordner):
Täglich auf Updates testen:
-J-Dplugin.manager.check.interval=EVERY_DAY
Die Konstanten sind (wie oben) EVERY_STARTUP, EVERY_DAY, EVERY_WEEK, EVERY_2WEEKS, EVERY_MONTH oder NEVER. Alternativ kann man auch die Minutenzahl angeben (was im Optionsdialog nicht funktioniert). Alle halbe Stunde auf Updates testen:
-J-Dplugin.manager.check.interval=30
Wenn man nicht nur auf Updates, sondern auch auf neue Plugins testen möchte, muss man folgende Option setzen (seit NetBeans 6.0):
-J-Dplugin.manager.check.new.plugins=true
Dann erscheint der Balloon-Tooltip auch dann, wenn neue Plugins im Update-Center auftauchen, die noch nicht installiert wurden. Das lässt sich natürlich auch im Module-Installer festlegen (was aber nicht zuverlässig funktionieren muss, wenn das Intervall EVERY_STARTUP ist):
public void restored() {
[...]
System.getProperties().put ("plugin.manager.check.new.plugins", "true");
}
Beste Grüße,
Josch.
Da werden Sie geholfen:
Das deutsche NetBeans Forum
![Validate my RSS feed [Valid RSS]](http://www.sepix.de/fileadmin/valid-rss.png)