Translate this page...

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.

http://www.netbeans-forum.de/ Da werden Sie geholfen:
Das deutsche NetBeans Forum

      NetBeans Dream Team Member

Hinterlasse eine Nachricht

Meine Informationen merken

CAPTCHA Bild zum Spamschutz 

[Valid RSS]