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

Side by Side Diff: ppapi/thunk/ppb_file_ref_thunk.cc

Issue 9113044: Convert to new enter method (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove common.h Created 8 years, 11 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 (c) 2012 The Chromium Authors. All rights reserved. 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 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/pp_file_info.h" 5 #include "ppapi/c/pp_file_info.h"
6 #include "ppapi/c/ppb_file_ref.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/c/private/ppb_file_ref_private.h" 9 #include "ppapi/c/private/ppb_file_ref_private.h"
10 #include "ppapi/thunk/common.h"
11 #include "ppapi/thunk/enter.h" 10 #include "ppapi/thunk/enter.h"
12 #include "ppapi/thunk/thunk.h" 11 #include "ppapi/thunk/thunk.h"
13 #include "ppapi/thunk/ppb_file_ref_api.h" 12 #include "ppapi/thunk/ppb_file_ref_api.h"
14 #include "ppapi/thunk/resource_creation_api.h" 13 #include "ppapi/thunk/resource_creation_api.h"
15 14
16 namespace ppapi { 15 namespace ppapi {
17 namespace thunk { 16 namespace thunk {
18 17
19 namespace { 18 namespace {
20 19
20 typedef EnterResource<PPB_FileRef_API> EnterFileRef;
21
21 PP_Resource Create(PP_Resource file_system, const char* path) { 22 PP_Resource Create(PP_Resource file_system, const char* path) {
22 EnterFunctionGivenResource<ResourceCreationAPI> enter(file_system, true); 23 EnterFunctionGivenResource<ResourceCreationAPI> enter(file_system, true);
23 if (enter.failed()) 24 if (enter.failed())
24 return 0; 25 return 0;
25 return enter.functions()->CreateFileRef(file_system, path); 26 return enter.functions()->CreateFileRef(file_system, path);
26 } 27 }
27 28
28 PP_Bool IsFileRef(PP_Resource resource) { 29 PP_Bool IsFileRef(PP_Resource resource) {
29 EnterResource<PPB_FileRef_API> enter(resource, false); 30 EnterFileRef enter(resource, false);
30 return PP_FromBool(enter.succeeded()); 31 return PP_FromBool(enter.succeeded());
31 } 32 }
32 33
33 PP_FileSystemType GetFileSystemType(PP_Resource file_ref) { 34 PP_FileSystemType GetFileSystemType(PP_Resource file_ref) {
34 EnterResource<PPB_FileRef_API> enter(file_ref, true); 35 EnterFileRef enter(file_ref, true);
35 if (enter.failed()) 36 if (enter.failed())
36 return PP_FILESYSTEMTYPE_INVALID; 37 return PP_FILESYSTEMTYPE_INVALID;
37 return enter.object()->GetFileSystemType(); 38 return enter.object()->GetFileSystemType();
38 } 39 }
39 40
40 PP_Var GetName(PP_Resource file_ref) { 41 PP_Var GetName(PP_Resource file_ref) {
41 EnterResource<PPB_FileRef_API> enter(file_ref, true); 42 EnterFileRef enter(file_ref, true);
42 if (enter.failed()) 43 if (enter.failed())
43 return PP_MakeUndefined(); 44 return PP_MakeUndefined();
44 return enter.object()->GetName(); 45 return enter.object()->GetName();
45 } 46 }
46 47
47 PP_Var GetPath(PP_Resource file_ref) { 48 PP_Var GetPath(PP_Resource file_ref) {
48 EnterResource<PPB_FileRef_API> enter(file_ref, true); 49 EnterFileRef enter(file_ref, true);
49 if (enter.failed()) 50 if (enter.failed())
50 return PP_MakeUndefined(); 51 return PP_MakeUndefined();
51 return enter.object()->GetPath(); 52 return enter.object()->GetPath();
52 } 53 }
53 54
54 PP_Resource GetParent(PP_Resource file_ref) { 55 PP_Resource GetParent(PP_Resource file_ref) {
55 EnterResource<PPB_FileRef_API> enter(file_ref, true); 56 EnterFileRef enter(file_ref, true);
56 if (enter.failed()) 57 if (enter.failed())
57 return PP_ERROR_BADRESOURCE; 58 return enter.retval();
yzshen1 2012/01/25 19:11:01 This should return 0?
58 return enter.object()->GetParent(); 59 return enter.object()->GetParent();
59 } 60 }
60 61
61 int32_t MakeDirectory(PP_Resource directory_ref, 62 int32_t MakeDirectory(PP_Resource directory_ref,
62 PP_Bool make_ancestors, 63 PP_Bool make_ancestors,
63 PP_CompletionCallback callback) { 64 PP_CompletionCallback callback) {
64 EnterResource<PPB_FileRef_API> enter(directory_ref, true); 65 EnterFileRef enter(directory_ref, callback, true);
65 if (enter.failed()) 66 if (enter.failed())
66 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 67 return enter.retval();
67 int32_t result = enter.object()->MakeDirectory(make_ancestors, callback); 68 return enter.SetResult(enter.object()->MakeDirectory(make_ancestors,
68 return MayForceCallback(callback, result); 69 callback));
69 } 70 }
70 71
71 int32_t Touch(PP_Resource file_ref, 72 int32_t Touch(PP_Resource file_ref,
72 PP_Time last_access_time, 73 PP_Time last_access_time,
73 PP_Time last_modified_time, 74 PP_Time last_modified_time,
74 PP_CompletionCallback callback) { 75 PP_CompletionCallback callback) {
75 EnterResource<PPB_FileRef_API> enter(file_ref, true); 76 EnterFileRef enter(file_ref, callback, true);
76 if (enter.failed()) 77 if (enter.failed())
77 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 78 return enter.retval();
78 int32_t result = enter.object()->Touch(last_access_time, last_modified_time, 79 return enter.SetResult(enter.object()->Touch(
79 callback); 80 last_access_time, last_modified_time, callback));
80 return MayForceCallback(callback, result);
81 } 81 }
82 82
83 int32_t Delete(PP_Resource file_ref, 83 int32_t Delete(PP_Resource file_ref,
84 PP_CompletionCallback callback) { 84 PP_CompletionCallback callback) {
85 EnterResource<PPB_FileRef_API> enter(file_ref, true); 85 EnterFileRef enter(file_ref, callback, true);
86 if (enter.failed()) 86 if (enter.failed())
87 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 87 return enter.retval();
88 int32_t result = enter.object()->Delete(callback); 88 return enter.SetResult(enter.object()->Delete(callback));
89 return MayForceCallback(callback, result);
90 } 89 }
91 90
92 int32_t Rename(PP_Resource file_ref, 91 int32_t Rename(PP_Resource file_ref,
93 PP_Resource new_file_ref, 92 PP_Resource new_file_ref,
94 PP_CompletionCallback callback) { 93 PP_CompletionCallback callback) {
95 EnterResource<PPB_FileRef_API> enter(file_ref, true); 94 EnterFileRef enter(file_ref, callback, true);
96 if (enter.failed()) 95 if (enter.failed())
97 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 96 return enter.retval();
98 int32_t result = enter.object()->Rename(new_file_ref, callback); 97 return enter.SetResult(enter.object()->Rename(new_file_ref, callback));
99 return MayForceCallback(callback, result);
100 } 98 }
101 99
102 PP_Var GetAbsolutePath(PP_Resource file_ref) { 100 PP_Var GetAbsolutePath(PP_Resource file_ref) {
103 EnterResource<PPB_FileRef_API> enter(file_ref, true); 101 EnterFileRef enter(file_ref, true);
104 if (enter.failed()) 102 if (enter.failed())
105 return PP_MakeUndefined(); 103 return PP_MakeUndefined();
106 return enter.object()->GetAbsolutePath(); 104 return enter.object()->GetAbsolutePath();
107 } 105 }
108 106
109 const PPB_FileRef g_ppb_file_ref_thunk = { 107 const PPB_FileRef g_ppb_file_ref_thunk = {
110 &Create, 108 &Create,
111 &IsFileRef, 109 &IsFileRef,
112 &GetFileSystemType, 110 &GetFileSystemType,
113 &GetName, 111 &GetName,
(...skipping 14 matching lines...) Expand all
128 const PPB_FileRef_1_0* GetPPB_FileRef_1_0_Thunk() { 126 const PPB_FileRef_1_0* GetPPB_FileRef_1_0_Thunk() {
129 return &g_ppb_file_ref_thunk; 127 return &g_ppb_file_ref_thunk;
130 } 128 }
131 129
132 const PPB_FileRefPrivate_0_1* GetPPB_FileRefPrivate_0_1_Thunk() { 130 const PPB_FileRefPrivate_0_1* GetPPB_FileRefPrivate_0_1_Thunk() {
133 return &g_ppb_file_ref_private_thunk; 131 return &g_ppb_file_ref_private_thunk;
134 } 132 }
135 133
136 } // namespace thunk 134 } // namespace thunk
137 } // namespace ppapi 135 } // namespace ppapi
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698