Class TaskScheduler

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

public class TaskScheduler
extends java.lang.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 Summary

    Constructors
    Constructor Description
    TaskScheduler​(ArchiveManager archiveManager)
    Erzeugt einen TaskScheduler mit den angegebenen Interval-Zeiten für den Sicherungs-, Lösch- und Nachforderungstask.
  • Method Summary

    Modifier and Type Method Description
    java.lang.String getBackupIntervals()
    Das Interval als String.
    java.lang.String getBackupLastRun()
    Liefert das Datum, an dem der Task das letzte mal gestartet wurde.
    java.lang.String getBackupNextRun()
    Liefert das Datum, an dem der Task das nächste mal gestartet wird.
    java.lang.String getDeleteIntervals()
    Das Interval als String.
    java.lang.String getDeleteLastRun()
    Liefert das Datum, an dem der Task das letzte mal gestartet wurde.
    java.lang.String getDeleteNextRun()
    Liefert das Datum, an dem der Task das nächste mal gestartet wird.
    java.lang.String getDeletePermanentlyIntervals()
    Das Interval als String.
    java.lang.String getDeletePermanentlyLastRun()
    Liefert das Datum, an dem der Task das letzte mal gestartet wurde.
    java.lang.String getDeletePermanentlyNextRun()
    Liefert das Datum, an dem der Task das nächste mal gestartet wird.
    java.lang.String getLZVIntervals()
    Das Interval (ausgewertet) als String.
    java.lang.String getLZVLastRun()
    Liefert das Datum, an dem der Task das letzte mal gestartet wurde.
    java.lang.String getRequestIntervals()
    Das Interval als String.
    java.lang.String getRequestLastRun()
    Liefert das Datum, an dem der Task das letzte mal gestartet wurde.
    java.lang.String getRequestNextRun()
    Liefert das Datum, an dem der Task das nächste mal gestartet wird.
    void setDeletePermanentlyInterval​(java.lang.String permanentlyDeleteCron, boolean enabled)
    Setzt das Interval fürs endgültige Löschen
    void setIntervals​(java.lang.String backup, java.lang.String delete, java.lang.String request, long capacityCheckInterval)
    Setzt die Intervalle
    void start()
    Startet den Timer, der die Tasks steuert
    void terminate()
    TaskScheduler beenden.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 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​(java.lang.String backup, java.lang.String delete, java.lang.String request, long capacityCheckInterval)
      Setzt die Intervalle
      Parameters:
      backup - Backup-Intervall (Cron-String)
      delete - Lösch-Intervall (Cron-String)
      request - Nachforderungs-Intervall (Cron-String)
      capacityCheckInterval - Intervall für Kapazitätsprüfung in ms
    • setDeletePermanentlyInterval

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

      public java.lang.String getBackupIntervals()
      Das Interval als String. Wenn leerer String "", wird der Task nie ausgeführt.
      Returns:
      Das Interval (ausgewertet) als String
    • getBackupLastRun

      public java.lang.String getBackupLastRun()
      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
    • getBackupNextRun

      public java.lang.String getBackupNextRun()
      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
    • getDeleteIntervals

      public java.lang.String getDeleteIntervals()
      Das Interval als String. Wenn leerer String "", wird der Task nie ausgeführt.
      Returns:
      Das Interval (ausgewertet) als String
    • getDeleteLastRun

      public java.lang.String getDeleteLastRun()
      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
    • getDeleteNextRun

      public java.lang.String getDeleteNextRun()
      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
    • getDeletePermanentlyIntervals

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

      public java.lang.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 java.lang.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 java.lang.String getRequestIntervals()
      Das Interval als String. Wenn leerer String "", wird der Task nie ausgeführt.
      Returns:
      Das Interval (ausgewertet) als String
    • getRequestLastRun

      public java.lang.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 java.lang.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
    • getLZVIntervals

      public java.lang.String getLZVIntervals()
      Das Interval (ausgewertet) als String. Wenn leerer String "", wird der Task nie ausgeführt.
      Returns:
      Das Interval (ausgewertet) als String
    • getLZVLastRun

      public java.lang.String getLZVLastRun()
      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
    • terminate

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