#include <Update.h>
Inherits Continuation.
Public Member Functions | |
UpdateConfigManager () | |
~UpdateConfigManager () | |
int | init () |
int | GetConfigParams (Ptr< UpdateConfigParams > *) |
int | GetConfigList (Ptr< UpdateConfigList > *) |
void | SetFileName (char *f) |
char * | GetFileName () |
int | ProcessUpdate (int event, Event *e) |
UpdateConfigList * | BuildUpdateList () |
UpdateConfigList * | ParseConfigFile (int) |
int | GetDataLine (int, int, char *, int, int) |
Static Public Member Functions | |
static int | URL_list_update_callout (const char *name, RecDataT data_type, RecData data, void *cookie) |
Definition at line 253 of file Update.h.
UpdateConfigManager::UpdateConfigManager | ( | ) |
Definition at line 705 of file Update.cc.
References ProcessUpdate(), and SET_HANDLER.
UpdateConfigList * UpdateConfigManager::BuildUpdateList | ( | ) |
Definition at line 875 of file Update.cc.
References Layout::get(), ParseConfigFile(), Layout::relative_to(), and Warning.
Referenced by ProcessUpdate().
int UpdateConfigManager::GetConfigList | ( | Ptr< UpdateConfigList > * | L | ) |
Definition at line 807 of file Update.cc.
References Continuation::mutex, MUTEX_TRY_LOCK, and this_ethread().
Referenced by UpdateScheduler::ScheduleEvent().
int UpdateConfigManager::GetConfigParams | ( | Ptr< UpdateConfigParams > * | P | ) |
Definition at line 795 of file Update.cc.
References Continuation::mutex, MUTEX_TRY_LOCK, and this_ethread().
Referenced by UpdateScheduler::ScheduleEvent().
int UpdateConfigManager::GetDataLine | ( | int | fd, | |
int | bufsize, | |||
char * | buf, | |||
int | field_delimiters, | |||
int | delimiter | |||
) |
Definition at line 896 of file Update.cc.
References ink_file_fd_readline().
Referenced by ParseConfigFile().
int UpdateConfigManager::init | ( | void | ) |
Definition at line 717 of file Update.cc.
References Debug, EVENT_IMMEDIATE, eventProcessor, Continuation::handleEvent(), HRTIME_SECONDS, REC_RegisterConfigUpdateFunc, RecAllocateRawStatBlock(), RECD_INT, RECP_NON_PERSISTENT, RecRawStatSyncCount(), RecRegisterRawStat, RECT_PROCESS, EventProcessor::schedule_every(), SetFileName(), UPDATE_CLEAR_DYN_STAT, update_fails_stat, update_no_actions_stat, update_stat_count, update_state_machines_stat, update_successes_stat, update_unknown_status_stat, UpdateEstablishStaticConfigInteger, and URL_list_update_callout().
Referenced by UpdateManager::start().
UpdateConfigList * UpdateConfigManager::ParseConfigFile | ( | int | f | ) |
Definition at line 949 of file Update.cc.
References UpdateEntry::_id, UpdateEntry::_interval, UpdateEntry::_max_depth, UpdateEntry::_num_request_headers, UpdateEntry::_offset_hour, UpdateEntry::_request_headers, UpdateEntry::_url, UpdateConfigList::Add(), UpdateEntry::BuildHttpRequest(), Debug, GetDataLine(), UpdateEntry::Init(), MAX_LINE_LENGTH, UpdateEntry::ValidDepth(), UpdateEntry::ValidHeaders(), UpdateEntry::ValidHour(), UpdateEntry::ValidInterval(), UpdateEntry::ValidURL(), and Warning.
Referenced by BuildUpdateList().
int UpdateConfigManager::ProcessUpdate | ( | int | event, | |
Event * | e | |||
) |
Definition at line 835 of file Update.cc.
References UpdateConfigParams::_concurrent_updates, UpdateConfigParams::_enabled, UpdateConfigParams::_immediate_update, UpdateConfigParams::_max_update_state_machines, UpdateConfigParams::_memory_use_in_mb, UpdateConfigParams::_retry_count, UpdateConfigParams::_retry_interval, BuildUpdateList(), Debug, EVENT_IMMEDIATE, and EVENT_INTERVAL.
Referenced by UpdateConfigManager().
void UpdateConfigManager::SetFileName | ( | char * | f | ) | [inline] |
Definition at line 264 of file Update.h.
Referenced by init(), and URL_list_update_callout().
int UpdateConfigManager::URL_list_update_callout | ( | const char * | name, | |
RecDataT | data_type, | |||
RecData | data, | |||
void * | cookie | |||
) | [static] |
Definition at line 819 of file Update.cc.
References ET_CACHE, eventProcessor, RecData::rec_string, EventProcessor::schedule_imm(), and SetFileName().
Referenced by init().