Index: chrome/browser/chromeos/file_system_provider/operations/operation.h |
diff --git a/chrome/browser/chromeos/file_system_provider/operations/operation.h b/chrome/browser/chromeos/file_system_provider/operations/operation.h |
index 3d9cfcd70bb645a02de11290d3682e838c89858b..31ff5caf904385509845224698067f995a99f7a3 100644 |
--- a/chrome/browser/chromeos/file_system_provider/operations/operation.h |
+++ b/chrome/browser/chromeos/file_system_provider/operations/operation.h |
@@ -19,7 +19,6 @@ class ListValue; |
namespace extensions { |
struct Event; |
-class EventRouter; |
} // namespace extensions |
namespace chromeos { |
@@ -27,12 +26,15 @@ namespace file_system_provider { |
namespace operations { |
// Base class for operation bridges between fileapi and providing extensions. |
-class Operation : public RequestManager::HandlerInterface { |
+template <int source> |
+class Operation : public RequestManager::HandlerInterface, |
+ public Source_Traits<source> { |
public: |
+ typedef typename Source_Traits<source>::EventRouterType EventRouterType; |
typedef base::Callback<bool(scoped_ptr<extensions::Event> event)> |
DispatchEventImplCallback; |
- Operation(extensions::EventRouter* event_router, |
+ Operation(typename Operation<source>::EventRouterType* event_router, |
const ProvidedFileSystemInfo& file_system_info); |
~Operation() override; |