19 #ifndef NET_INSTAWEB_HTTP_PUBLIC_SIMULATED_DELAY_FETCHER_H_
20 #define NET_INSTAWEB_HTTP_PUBLIC_SIMULATED_DELAY_FETCHER_H_
25 #include "pagespeed/kernel/base/basictypes.h"
26 #include "pagespeed/kernel/base/file_system.h"
27 #include "pagespeed/kernel/base/scoped_ptr.h"
28 #include "pagespeed/kernel/base/string.h"
29 #include "pagespeed/kernel/base/string_util.h"
30 #include "pagespeed/kernel/base/thread_annotations.h"
32 namespace net_instaweb {
58 MessageHandler* handler,
59 FileSystem* file_system,
60 StringPiece delay_map_path,
61 StringPiece request_log_path,
62 int request_log_flush_frequency);
66 virtual void Fetch(
const GoogleString& url,
67 MessageHandler* message_handler,
71 typedef std::map<GoogleString, int> DelayMap;
73 void ParseDelayMap(StringPiece delay_map_path);
76 Scheduler* scheduler_;
77 MessageHandler* message_handler_;
78 FileSystem* file_system_;
80 int request_log_flush_frequency_;
82 scoped_ptr<AbstractMutex> mutex_;
83 int request_log_outstanding_ GUARDED_BY(mutex_.get());
84 FileSystem::OutputFile* request_log_ PT_GUARDED_BY(mutex_.get());
SimulatedDelayFetcher(ThreadSystem *thread_system, Timer *timer, Scheduler *scheduler, MessageHandler *handler, FileSystem *file_system, StringPiece delay_map_path, StringPiece request_log_path, int request_log_flush_frequency)
Definition: simulated_delay_fetcher.h:44
Definition: async_fetch.h:53
virtual void Fetch(const GoogleString &url, MessageHandler *message_handler, AsyncFetch *fetch)
Definition: url_async_fetcher.h:33
static const char kPayload[]
The payload that this will deliver.
Definition: simulated_delay_fetcher.h:47