OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "ppapi/c/dev/pp_file_info_dev.h" | 5 #include "ppapi/c/pp_file_info.h" |
6 #include "ppapi/c/dev/ppb_file_ref_dev.h" | 6 #include "ppapi/c/ppb_file_ref.h" |
7 #include "ppapi/c/pp_completion_callback.h" | 7 #include "ppapi/c/pp_completion_callback.h" |
8 #include "ppapi/c/pp_errors.h" | 8 #include "ppapi/c/pp_errors.h" |
9 #include "ppapi/thunk/common.h" | 9 #include "ppapi/thunk/common.h" |
10 #include "ppapi/thunk/enter.h" | 10 #include "ppapi/thunk/enter.h" |
11 #include "ppapi/thunk/thunk.h" | 11 #include "ppapi/thunk/thunk.h" |
12 #include "ppapi/thunk/ppb_file_ref_api.h" | 12 #include "ppapi/thunk/ppb_file_ref_api.h" |
13 #include "ppapi/thunk/resource_creation_api.h" | 13 #include "ppapi/thunk/resource_creation_api.h" |
14 | 14 |
15 namespace ppapi { | 15 namespace ppapi { |
16 namespace thunk { | 16 namespace thunk { |
17 | 17 |
18 namespace { | 18 namespace { |
19 | 19 |
20 PP_Resource Create(PP_Resource file_system, const char* path) { | 20 PP_Resource Create(PP_Resource file_system, const char* path) { |
21 EnterFunctionGivenResource<ResourceCreationAPI> enter(file_system, true); | 21 EnterFunctionGivenResource<ResourceCreationAPI> enter(file_system, true); |
22 if (enter.failed()) | 22 if (enter.failed()) |
23 return 0; | 23 return 0; |
24 return enter.functions()->CreateFileRef(file_system, path); | 24 return enter.functions()->CreateFileRef(file_system, path); |
25 } | 25 } |
26 | 26 |
27 PP_Bool IsFileRef(PP_Resource resource) { | 27 PP_Bool IsFileRef(PP_Resource resource) { |
28 EnterResource<PPB_FileRef_API> enter(resource, false); | 28 EnterResource<PPB_FileRef_API> enter(resource, false); |
29 return PP_FromBool(enter.succeeded()); | 29 return PP_FromBool(enter.succeeded()); |
30 } | 30 } |
31 | 31 |
32 PP_FileSystemType_Dev GetFileSystemType(PP_Resource file_ref) { | 32 PP_FileSystemType GetFileSystemType(PP_Resource file_ref) { |
33 EnterResource<PPB_FileRef_API> enter(file_ref, true); | 33 EnterResource<PPB_FileRef_API> enter(file_ref, true); |
34 if (enter.failed()) | 34 if (enter.failed()) |
35 return PP_FILESYSTEMTYPE_INVALID; | 35 return PP_FILESYSTEMTYPE_INVALID; |
36 return enter.object()->GetFileSystemType(); | 36 return enter.object()->GetFileSystemType(); |
37 } | 37 } |
38 | 38 |
39 PP_Var GetName(PP_Resource file_ref) { | 39 PP_Var GetName(PP_Resource file_ref) { |
40 EnterResource<PPB_FileRef_API> enter(file_ref, true); | 40 EnterResource<PPB_FileRef_API> enter(file_ref, true); |
41 if (enter.failed()) | 41 if (enter.failed()) |
42 return PP_MakeUndefined(); | 42 return PP_MakeUndefined(); |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 int32_t Rename(PP_Resource file_ref, | 91 int32_t Rename(PP_Resource file_ref, |
92 PP_Resource new_file_ref, | 92 PP_Resource new_file_ref, |
93 PP_CompletionCallback callback) { | 93 PP_CompletionCallback callback) { |
94 EnterResource<PPB_FileRef_API> enter(file_ref, true); | 94 EnterResource<PPB_FileRef_API> enter(file_ref, true); |
95 if (enter.failed()) | 95 if (enter.failed()) |
96 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); | 96 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); |
97 int32_t result = enter.object()->Rename(new_file_ref, callback); | 97 int32_t result = enter.object()->Rename(new_file_ref, callback); |
98 return MayForceCallback(callback, result); | 98 return MayForceCallback(callback, result); |
99 } | 99 } |
100 | 100 |
101 const PPB_FileRef_Dev g_ppb_file_ref_thunk = { | 101 const PPB_FileRef g_ppb_file_ref_thunk = { |
102 &Create, | 102 &Create, |
103 &IsFileRef, | 103 &IsFileRef, |
104 &GetFileSystemType, | 104 &GetFileSystemType, |
105 &GetName, | 105 &GetName, |
106 &GetPath, | 106 &GetPath, |
107 &GetParent, | 107 &GetParent, |
108 &MakeDirectory, | 108 &MakeDirectory, |
109 &Touch, | 109 &Touch, |
110 &Delete, | 110 &Delete, |
111 &Rename | 111 &Rename |
112 }; | 112 }; |
113 | 113 |
114 } // namespace | 114 } // namespace |
115 | 115 |
116 const PPB_FileRef_Dev* GetPPB_FileRef_Thunk() { | 116 const PPB_FileRef* GetPPB_FileRef_Thunk() { |
117 return &g_ppb_file_ref_thunk; | 117 return &g_ppb_file_ref_thunk; |
118 } | 118 } |
119 | 119 |
120 } // namespace thunk | 120 } // namespace thunk |
121 } // namespace ppapi | 121 } // namespace ppapi |
OLD | NEW |