bitel.billing.server.task.bean

## Class RunTaskDataManager

- java.lang.Object
- - bitel.billing.server.task.bean.RunTaskDataManager

-     public class RunTaskDataManager
      extends java.lang.Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RunTaskDataManager.PeriodicTaskRun` Deprecated.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RunTaskDataManager(java.sql.Connection con)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addTask(RunTask task)` Добавить задание, пишется в БД
    `void` | `clearCurrentPeriodic()` Очистка таблицы с текущими запущенными задачами планировщика.
    `java.util.List<RunTaskDataManager.PeriodicTaskRun>` | `getCurrentPeriodic()` Deprecated.
    `RunTask` | `getNextTask()` Выбирает следующий (первый с минимальным id) RunTask к исполнению.
    `java.util.List<RunTask>` | `getNextTasks()` Выбирает все следующие готовые к выполнению RunTask-и.
    `int` | `getTaskCount()`
    `java.util.List<TaskData>` | `getTaskDataForReload()` Все текущие задачи к исполнению(?).
    `java.util.List<RunTaskBean>` | `getTasks()` Deprecated.
    `void` | `removeTask(int id)` Deprecated.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### RunTaskDataManager

          public RunTaskDataManager(java.sql.Connection con)

  - ### Method Detail

    - #### addTask

          public void addTask(RunTask task)

      Добавить задание, пишется в БД
      Parameters:
        `task` - объект RunTask

    - #### removeTask

          @Deprecated
          public void removeTask(int id)
                                      throws java.sql.SQLException

      Deprecated.
      Использовать `SchedulerManager.deleteCurrentRunTask( int taskId )`
      Parameters:
        `id` -
      Throws:
        `java.sql.SQLException`

    - #### getCurrentPeriodic

          @Deprecated
          public java.util.List<RunTaskDataManager.PeriodicTaskRun> getCurrentPeriodic()

      Deprecated.
      Использовать `SchedulerManager.getPeriodicTasks()`

    - #### getTaskCount

          public int getTaskCount()

    - #### getTasks

          @Deprecated
          public java.util.List<RunTaskBean> getTasks()

      Deprecated.
      Использовать `SchedulerManager.getRunningTaskList()`

    - #### getNextTask

          public RunTask getNextTask()
                              throws java.sql.SQLException

      Выбирает следующий (первый с минимальным id) RunTask к исполнению. Если записи следующей нет, то вернётся null. Если есть, но не смогли мы прочитать корректный объект, то запись с битым объектом удаляется и возвращается также null (и выводится в лог запись с ошибкой). Помечает задачу как начавшуюся. Старый метод, заменён методом getNextTasks.
      Returns:
        прочитанный из БД объект RunTask, или null, если нету больше в БД записей, или же при чтении текущего произошла ошибка.
      Throws:
        `java.sql.SQLException` - ошибка БД.

    - #### getNextTasks

          public java.util.List<RunTask> getNextTasks()
                                               throws java.sql.SQLException

      Выбирает все следующие готовые к выполнению RunTask-и. Сортировка по возрастанию id. Может вернуться пустой список (не null). Помечает вернутые задачи как начавшиеся. Поддерживает ключи задач для схлопывания (таковые удаляются из очереди) и незапуска параллельно (таковые оставляются до следующей проверки).
      Throws:
        `java.sql.SQLException`

    - #### clearCurrentPeriodic

          public void clearCurrentPeriodic()
                                    throws java.sql.SQLException

      Очистка таблицы с текущими запущенными задачами планировщика. Вызывается при старте таск экзекутера.
      Throws:
        `java.sql.SQLException`

    - #### getTaskDataForReload

          public java.util.List<TaskData> getTaskDataForReload()
                                                        throws java.sql.SQLException,
                                                               ru.bitel.bgbilling.common.BGException

      Все текущие задачи к исполнению(?). Вызывается при reloadTasks(). В случае, если в системе отсутствует экземпляр модуля и/или выключен плагин, то задачи этого модуля и/и плагина не учитываются
      Returns:
        список готовых объектов TaskData.
      Throws:
        `java.sql.SQLException` - ошибка БД.
        `ru.bitel.bgbilling.common.BGException`