When enabling new profile management programmatically, make sure to set the
[chromium-blink-merge.git] / webkit / browser / fileapi / dragged_file_util.h
blob8807fc1883a23e4c3d92cc8a5394f4726e818a08
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef WEBKIT_BROWSER_FILEAPI_DRAGGED_FILE_UTIL_H_
6 #define WEBKIT_BROWSER_FILEAPI_DRAGGED_FILE_UTIL_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "webkit/browser/fileapi/local_file_util.h"
10 #include "webkit/browser/webkit_storage_browser_export.h"
12 namespace fileapi {
14 class FileSystemOperationContext;
16 // Dragged file system is a specialized LocalFileUtil where read access to
17 // the virtual root directory (i.e. empty cracked path case) is allowed
18 // and single isolated context may be associated with multiple file paths.
19 class WEBKIT_STORAGE_BROWSER_EXPORT_PRIVATE DraggedFileUtil
20 : public LocalFileUtil {
21 public:
22 DraggedFileUtil();
23 virtual ~DraggedFileUtil() {}
25 // FileSystemFileUtil overrides.
26 virtual base::File::Error GetFileInfo(
27 FileSystemOperationContext* context,
28 const FileSystemURL& url,
29 base::File::Info* file_info,
30 base::FilePath* platform_path) OVERRIDE;
31 virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
32 FileSystemOperationContext* context,
33 const FileSystemURL& root_url) OVERRIDE;
35 private:
36 DISALLOW_COPY_AND_ASSIGN(DraggedFileUtil);
39 } // namespace fileapi
41 #endif // WEBKIT_BROWSER_FILEAPI_DRAGGED_FILE_UTIL_H_