#include <Update.h>
Inherits Continuation.
Public Member Functions | |
UpdateScheduler (UpdateConfigManager *cm=NULL) | |
~UpdateScheduler () | |
int | Init () |
int | Init (UpdateScheduler *, UpdateEntry *, Ptr< UpdateConfigParams >) |
int | ScheduleEvent (int, void *) |
int | Schedule (UpdateEntry *e=NULL) |
int | ChildExitEventHandler (int, Event *) |
Definition at line 291 of file Update.h.
UpdateScheduler::UpdateScheduler | ( | UpdateConfigManager * | cm = NULL |
) |
Definition at line 1079 of file Update.cc.
References ScheduleEvent(), and SET_HANDLER.
Referenced by ScheduleEvent().
int UpdateScheduler::ChildExitEventHandler | ( | int | event, | |
Event * | ||||
) |
Definition at line 1314 of file Update.cc.
References UpdateEntry::_id, Debug, EVENT_IMMEDIATE, EVENT_INTERVAL, eventProcessor, Continuation::handleEvent(), HRTIME_MSECONDS, ink_release_assert, Continuation::mutex, MUTEX_TRY_LOCK, EventProcessor::schedule_in(), and this_ethread().
Referenced by ScheduleEvent().
int UpdateScheduler::Init | ( | UpdateScheduler * | us, | |
UpdateEntry * | ue, | |||
Ptr< UpdateConfigParams > | p | |||
) |
Definition at line 1100 of file Update.cc.
References UpdateEntry::_indirect_list, eventProcessor, HRTIME_SECONDS, ink_assert, and EventProcessor::schedule_every().
int UpdateScheduler::Init | ( | ) |
Definition at line 1092 of file Update.cc.
References eventProcessor, HRTIME_SECONDS, and EventProcessor::schedule_every().
Referenced by ScheduleEvent(), and UpdateManager::start().
int UpdateScheduler::Schedule | ( | UpdateEntry * | e = NULL |
) |
Definition at line 1342 of file Update.cc.
References UpdateEntry::_id, UpdateEntry::_url, Debug, UpdateSM::Start(), UPDATE_INCREMENT_DYN_STAT, UPDATE_READ_DYN_STAT, and update_state_machines_stat.
Referenced by ScheduleEvent().
int UpdateScheduler::ScheduleEvent | ( | int | event, | |
void * | e | |||
) |
Definition at line 1121 of file Update.cc.
References UpdateEntry::_id, UpdateEntry::_indirect_list, UpdateEntry::_max_depth, UpdateEntry::_update_event_status, UpdateEntry::_url, Action::cancel(), ChildExitEventHandler(), UpdateEntry::ComputeScheduleTime(), Debug, Queue< C, L >::dequeue(), Queue< C, L >::enqueue(), EVENT_IMMEDIATE, EVENT_INTERVAL, UpdateConfigManager::GetConfigList(), UpdateConfigManager::GetConfigParams(), Continuation::handleEvent(), Init(), ink_get_based_hrtime(), ink_release_assert, Schedule(), UpdateEntry::ScheduleNow(), SET_HANDLER, UPDATE_DECREMENT_DYN_STAT, UPDATE_EVENT_FAILED, UPDATE_EVENT_SUCCESS, UPDATE_EVENT_SUCCESS_NOACTION, update_fails_stat, UPDATE_INCREMENT_DYN_STAT, update_no_actions_stat, update_state_machines_stat, update_successes_stat, update_unknown_status_stat, and UpdateScheduler().
Referenced by UpdateScheduler().