Class TaskScheduler

java.lang.Object
de.bsvrz.ars.ars.mgmt.tasks.scheduler.TaskScheduler

public class TaskScheduler extends Object
Diese Klasse verwaltet einen Timer und prüft im Minutentakt, ob die Tasks für Sicherung, Löschen und Nachforndern ausgeführt werden müssen.

Über die public-Methoden können die IntervalWerte gesetzt werden.

  • Constructor Details

    • TaskScheduler

      public TaskScheduler(ArchiveManager archiveManager)
      Erzeugt einen TaskScheduler mit den angegebenen Interval-Zeiten für den Sicherungs-, Lösch- und Nachforderungstask.
      Parameters:
      archiveManager - Archiv-Manager
  • Method Details

    • start

      public void start()
      Startet den Timer, der die Tasks steuert
    • setIntervals

      public void setIntervals(String request)
      Setzt die Intervalle
      Parameters:
      request - Nachforderungs-Intervall (Cron-String)
    • setDeletePermanentlyInterval

      public void setDeletePermanentlyInterval(String permanentlyDeleteCron, boolean enabled)
      Setzt das Interval fürs endgültige Löschen
      Parameters:
      permanentlyDeleteCron - Cron-String
      enabled - Aktiviert?
    • getDeletePermanentlyIntervals

      public String getDeletePermanentlyIntervals()
      Das Interval als String. Wenn leerer String "", wird der Task nie ausgeführt.
      Returns:
      Das Interval (ausgewertet) als String
    • getDeletePermanentlyLastRun

      public String getDeletePermanentlyLastRun()
      Liefert das Datum, an dem der Task das letzte mal gestartet wurde. Oder einen leeren String, wenn der Task noch nie gestartet wurde.
      Returns:
      Datum als String
    • getDeletePermanentlyNextRun

      public String getDeletePermanentlyNextRun()
      Liefert das Datum, an dem der Task das nächste mal gestartet wird. Oder einen String, der besagt, dass der Task nie gestartet wird (weil die konfigurierten Werte ungültig sind). Berücksichtigt werden Daten, die maximal 1 Jahr und 1 Tag in der Zukunft liegen. Tritt kein Fehler auf und wird trotzdem kein Datum gefunden ist der Rückgabewert "> 1 Jahr".
      Returns:
      Datum als String
    • getRequestIntervals

      public String getRequestIntervals()
      Das Interval als String. Wenn leerer String "", wird der Task nie ausgeführt.
      Returns:
      Das Interval (ausgewertet) als String
    • getRequestLastRun

      public String getRequestLastRun()
      Liefert das Datum, an dem der Task das letzte mal gestartet wurde. Oder einen leeren String, wenn der Task noch nie gestartet wurde.
      Returns:
      Datum als String
    • getRequestNextRun

      public String getRequestNextRun()
      Liefert das Datum, an dem der Task das nächste mal gestartet wird. Oder einen String, der besagt, dass der Task nie gestartet wird (weil die konfigurierten Werte ungültig sind). Berücksichtigt werden Daten, die maximal 1 Jahr und 1 Tag in der Zukunft liegen. Tritt kein Fehler auf und wird trotzdem kein Datum gefunden ist der Rückgabewert "> 1 Jahr".
      Returns:
      Datum als String
    • terminate

      public void terminate()
      TaskScheduler beenden. Laufende Tasks laufen aber noch zu Ende. Es werden keine neuen Tasks mehr gestartet.