| Index: webkit/dom_storage/dom_storage_task_runner.h
|
| ===================================================================
|
| --- webkit/dom_storage/dom_storage_task_runner.h (revision 126447)
|
| +++ webkit/dom_storage/dom_storage_task_runner.h (working copy)
|
| @@ -7,6 +7,7 @@
|
| #pragma once
|
|
|
| #include "base/memory/ref_counted.h"
|
| +#include "base/task_runner.h"
|
| #include "base/threading/sequenced_worker_pool.h"
|
| #include "base/time.h"
|
|
|
| @@ -18,24 +19,32 @@
|
|
|
| // Tasks must run serially with respect to one another, but may
|
| // execute on different OS threads. The base class is implemented
|
| -// in terms of a MessageLoopProxy for use in testing.
|
| -class DomStorageTaskRunner
|
| - : public base::RefCountedThreadSafe<DomStorageTaskRunner> {
|
| +// in terms of a MessageLoopProxy.
|
| +class DomStorageTaskRunner : public base::TaskRunner {
|
| public:
|
| explicit DomStorageTaskRunner(base::MessageLoopProxy* message_loop);
|
| virtual ~DomStorageTaskRunner();
|
|
|
| - // Schedules a task to be run immediately.
|
| - virtual bool PostTask(
|
| - const tracked_objects::Location& from_here,
|
| - const base::Closure& task);
|
| + // The PostTask() method, defined by TaskRunner, schedules a task
|
| + // to run immediately.
|
|
|
| // Schedules a task to be run after a delay.
|
| virtual bool PostDelayedTask(
|
| const tracked_objects::Location& from_here,
|
| const base::Closure& task,
|
| - base::TimeDelta delay);
|
| + base::TimeDelta delay) OVERRIDE;
|
|
|
| + // DEPRECATED: Only here because base::TaskRunner requires it, implemented
|
| + // by calling the virtual PostDelayedTask(..., TimeDelta) variant.
|
| + virtual bool PostDelayedTask(
|
| + const tracked_objects::Location& from_here,
|
| + const base::Closure& task,
|
| + int64 delay_ms) OVERRIDE;
|
| +
|
| + // Only here because base::TaskRunner requires it, the return
|
| + // value is hard coded to true.
|
| + virtual bool RunsTasksOnCurrentThread() const OVERRIDE;
|
| +
|
| protected:
|
| const scoped_refptr<base::MessageLoopProxy> message_loop_;
|
| };
|
| @@ -47,20 +56,18 @@
|
| public:
|
| DomStorageWorkerPoolTaskRunner(
|
| base::SequencedWorkerPool* sequenced_worker_pool,
|
| + base::SequencedWorkerPool::SequenceToken sequence_token,
|
| base::MessageLoopProxy* delayed_task_loop);
|
| virtual ~DomStorageWorkerPoolTaskRunner();
|
|
|
| - // Schedules a sequenced worker task to be run immediately.
|
| - virtual bool PostTask(
|
| - const tracked_objects::Location& from_here,
|
| - const base::Closure& task) OVERRIDE;
|
| -
|
| // Schedules a sequenced worker task to be run after a delay.
|
| virtual bool PostDelayedTask(
|
| const tracked_objects::Location& from_here,
|
| const base::Closure& task,
|
| base::TimeDelta delay) OVERRIDE;
|
|
|
| + base::SequencedWorkerPool::SequenceToken sequence_token() const;
|
| +
|
| private:
|
| const scoped_refptr<base::SequencedWorkerPool> sequenced_worker_pool_;
|
| base::SequencedWorkerPool::SequenceToken sequence_token_;
|
| @@ -72,7 +79,7 @@
|
| class MockDomStorageTaskRunner : public DomStorageTaskRunner {
|
| public:
|
| explicit MockDomStorageTaskRunner(base::MessageLoopProxy* message_loop);
|
| - virtual ~MockDomStorageTaskRunner() { }
|
| + virtual ~MockDomStorageTaskRunner() {}
|
|
|
| virtual bool PostDelayedTask(
|
| const tracked_objects::Location& from_here,
|
|
|