Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(172)

Side by Side Diff: native_client_sdk/src/libraries/nacl_io/html5fs/html5_fs.h

Issue 320983002: [NaCl SDK] nacl_io: Allows subtree of html5fs to be mounted. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_H_ 5 #ifndef LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_H_
6 #define LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_H_ 6 #define LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_H_
7 7
8 #include <pthread.h> 8 #include <pthread.h>
9 9
10 #include "nacl_io/filesystem.h" 10 #include "nacl_io/filesystem.h"
(...skipping 11 matching lines...) Expand all
22 virtual Error Open(const Path& path, int mode, ScopedNode* out_node); 22 virtual Error Open(const Path& path, int mode, ScopedNode* out_node);
23 virtual Error Unlink(const Path& path); 23 virtual Error Unlink(const Path& path);
24 virtual Error Mkdir(const Path& path, int permissions); 24 virtual Error Mkdir(const Path& path, int permissions);
25 virtual Error Rmdir(const Path& path); 25 virtual Error Rmdir(const Path& path);
26 virtual Error Remove(const Path& path); 26 virtual Error Remove(const Path& path);
27 virtual Error Rename(const Path& path, const Path& newpath); 27 virtual Error Rename(const Path& path, const Path& newpath);
28 28
29 PP_Resource filesystem_resource() { return filesystem_resource_; } 29 PP_Resource filesystem_resource() { return filesystem_resource_; }
30 30
31 protected: 31 protected:
32 static const int REMOVE_DIR = 1;
33 static const int REMOVE_FILE = 2;
34 static const int REMOVE_ALL = REMOVE_DIR | REMOVE_FILE;
35
32 Html5Fs(); 36 Html5Fs();
33 37
34 virtual Error Init(const FsInitArgs& args); 38 virtual Error Init(const FsInitArgs& args);
35 virtual void Destroy(); 39 virtual void Destroy();
36 40
41 virtual Error RemoveInternal(const Path& path, int remove_type);
binji 2014/06/09 20:54:29 does this need to be virtual?
37 Error BlockUntilFilesystemOpen(); 42 Error BlockUntilFilesystemOpen();
38 43
39 private: 44 private:
40 static void FilesystemOpenCallbackThunk(void* user_data, int32_t result); 45 static void FilesystemOpenCallbackThunk(void* user_data, int32_t result);
41 void FilesystemOpenCallback(int32_t result); 46 void FilesystemOpenCallback(int32_t result);
47 Path GetFullPath(const Path& path);
42 48
43 PP_Resource filesystem_resource_; 49 PP_Resource filesystem_resource_;
44 bool filesystem_open_has_result_; // protected by lock_. 50 bool filesystem_open_has_result_; // protected by lock_.
45 Error filesystem_open_error_; // protected by lock_. 51 Error filesystem_open_error_; // protected by lock_.
46 52
47 pthread_cond_t filesystem_open_cond_; 53 pthread_cond_t filesystem_open_cond_;
48 sdk_util::SimpleLock filesysem_open_lock_; 54 sdk_util::SimpleLock filesysem_open_lock_;
55 std::string prefix_;
49 56
50 friend class TypedFsFactory<Html5Fs>; 57 friend class TypedFsFactory<Html5Fs>;
51 }; 58 };
52 59
53 } // namespace nacl_io 60 } // namespace nacl_io
54 61
55 #endif // LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_H_ 62 #endif // LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698