1 // Copyright (c) 2012 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 WEBFILEUTILITIES_IMPL_H_
6 #define WEBFILEUTILITIES_IMPL_H_
8 #include "base/platform_file.h"
9 #include "third_party/WebKit/public/platform/WebFileInfo.h"
10 #include "third_party/WebKit/public/platform/WebFileUtilities.h"
11 #include "webkit/glue/webkit_glue_export.h"
13 namespace webkit_glue {
15 class WEBKIT_GLUE_EXPORT WebFileUtilitiesImpl :
16 NON_EXPORTED_BASE(public blink::WebFileUtilities) {
18 WebFileUtilitiesImpl();
19 virtual ~WebFileUtilitiesImpl();
21 // WebFileUtilities methods:
22 virtual bool getFileInfo(
23 const blink::WebString& path,
24 blink::WebFileInfo& result);
25 virtual blink::WebString directoryName(const blink::WebString& path);
26 virtual blink::WebString baseName(const blink::WebString& path);
27 virtual blink::WebURL filePathToURL(const blink::WebString& path);
28 virtual base::PlatformFile openFile(const blink::WebString& path, int mode);
29 virtual void closeFile(base::PlatformFile& handle);
30 virtual int readFromFile(base::PlatformFile handle, char* data, int length);
32 void set_sandbox_enabled(bool sandbox_enabled) {
33 sandbox_enabled_ = sandbox_enabled;
37 bool sandbox_enabled_;
40 } // namespace webkit_glue
42 #endif // WEBFILEUTILITIES_IMPL_H_