Index: services/catalog/catalog.h |
diff --git a/services/catalog/catalog.h b/services/catalog/catalog.h |
index e9a32a891ba544c8633724ca3a460c6ea9cff3e5..d6b8336b9a2afbaacb6f2aaebf9da1da740f4220 100644 |
--- a/services/catalog/catalog.h |
+++ b/services/catalog/catalog.h |
@@ -11,6 +11,7 @@ |
#include "base/macros.h" |
#include "base/memory/weak_ptr.h" |
+#include "components/filesystem/public/interfaces/directory.mojom.h" |
#include "mojo/public/cpp/bindings/binding.h" |
#include "services/catalog/public/interfaces/catalog.mojom.h" |
#include "services/catalog/types.h" |
@@ -23,6 +24,10 @@ class SequencedWorkerPool; |
class SingleThreadTaskRunner; |
} |
+namespace filesystem { |
+class LockTable; |
+} |
+ |
namespace shell { |
class ShellConnection; |
} |
@@ -38,6 +43,7 @@ class Store; |
// can be passed to the Shell, potentially in a different process. |
class Catalog : public shell::ShellClient, |
public shell::InterfaceFactory<mojom::Catalog>, |
+ public shell::InterfaceFactory<filesystem::Directory>, |
public shell::InterfaceFactory<shell::mojom::ShellResolver> { |
public: |
// |manifest_provider| may be null. |
@@ -68,6 +74,10 @@ class Catalog : public shell::ShellClient, |
void Create(shell::Connection* connection, |
mojom::CatalogRequest request) override; |
+ // shell::InterfaceFactory<filesystem::Directory>: |
+ void Create(shell::Connection* connection, |
+ filesystem::DirectoryRequest request) override; |
+ |
Instance* GetInstanceForUserId(const std::string& user_id); |
void SystemPackageDirScanned(); |
@@ -83,6 +93,8 @@ class Catalog : public shell::ShellClient, |
EntryCache system_cache_; |
bool loaded_ = false; |
+ scoped_refptr<filesystem::LockTable> lock_table_; |
+ |
base::WeakPtrFactory<Catalog> weak_factory_; |
DISALLOW_COPY_AND_ASSIGN(Catalog); |