Akcje

W tej sekcji opisane są typy Akcji

InstantAction

Ten typ Akcji kolejkowany jest do natychmiastowego wykonania i uruchamiana jest tylko raz

MailInstantAction

Akcja odpowiada za wysyłanie maili z treścią zależną od typu Zadania, które ją uruchomiło

ScheduledAction

Ten typ Akcji nia obsługuje dwa sposoby periodycznego uruchamiania:

RestartConnectorScheduledAction

Akcja odpowiedzialna za restartowanie connectora, który jest w stanie FAILED. Liczba prób restartu jest konfigurowalna.

Dodawanie nowych Akcji

Zakładamy, że nowa akcja będzie dziedziczyć po ScheduledAction, w przypadku InstantAction analogicznie

  1. Dodanie nowej wartości enum ActionType

  2. Nadpisanie wszystkich klas związanych z Akcją

    1. ScheduledAction -> definiujemy funkcję runAction, gdzie zapisujemy logikę akcji

    2. ScheduledActionBuilder -> definiujemy funkcje budujące instancję Akcji na podstawie options i global options

    3. ScheduledActionOptions -> definiujemy indywidualne opcję potrzebne dla Akcji oraz funkcję supports, w której określamy typy Zadań, które Akcja wspiera.

    4. ScheduledActionOptionsGlobal -> definiujemy globalne opcję potrzebne dla Akcji

    5. ScheduledActionService -> definiujemy funkcje konieczne do obsługi life-cycle Akcji

    6. ScheduledActionOptionsRepository -> repo dla Options

    7. ScheduledActionOptionsPojo -> pojo, mapowane z i do Options

    8. ScheduledActionOptionsGlobalRepository -> repo dla GlobalOptions

    9. ScheduledActionOptionsGlobalPojo -> pojo, mapowane z i do GlobalOptions

  3. Napisanie enuma z listą akcji w kontrolerze oraz kontrolera obsługującego lifecycle Akcji pod ścieżką actions/[ACTION_TYPE]

Last updated