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

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

Issue 9113044: Convert to new enter method (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: PATCH DESCRIPTIONS ARE A STUPID WASTE OF TIME Created 8 years, 10 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
« no previous file with comments | « ppapi/thunk/ppb_mouse_lock_thunk.cc ('k') | ppapi/thunk/ppb_transport_thunk.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_completion_callback.h" 5 #include "ppapi/c/pp_completion_callback.h"
6 #include "ppapi/c/pp_errors.h" 6 #include "ppapi/c/pp_errors.h"
7 #include "ppapi/c/private/ppb_tcp_socket_private.h" 7 #include "ppapi/c/private/ppb_tcp_socket_private.h"
8 #include "ppapi/thunk/common.h"
9 #include "ppapi/thunk/enter.h" 8 #include "ppapi/thunk/enter.h"
10 #include "ppapi/thunk/thunk.h" 9 #include "ppapi/thunk/thunk.h"
11 #include "ppapi/thunk/ppb_tcp_socket_private_api.h" 10 #include "ppapi/thunk/ppb_tcp_socket_private_api.h"
12 #include "ppapi/thunk/resource_creation_api.h" 11 #include "ppapi/thunk/resource_creation_api.h"
13 12
14 namespace ppapi { 13 namespace ppapi {
15 namespace thunk { 14 namespace thunk {
16 15
17 namespace { 16 namespace {
18 17
18 typedef EnterResource<PPB_TCPSocket_Private_API> EnterTCP;
19
19 PP_Resource Create(PP_Instance instance) { 20 PP_Resource Create(PP_Instance instance) {
20 EnterFunction<ResourceCreationAPI> enter(instance, true); 21 EnterFunction<ResourceCreationAPI> enter(instance, true);
21 if (enter.failed()) 22 if (enter.failed())
22 return 0; 23 return 0;
23 return enter.functions()->CreateTCPSocketPrivate(instance); 24 return enter.functions()->CreateTCPSocketPrivate(instance);
24 } 25 }
25 26
26 PP_Bool IsTCPSocket(PP_Resource resource) { 27 PP_Bool IsTCPSocket(PP_Resource resource) {
27 EnterResource<PPB_TCPSocket_Private_API> enter(resource, false); 28 EnterTCP enter(resource, false);
28 return PP_FromBool(enter.succeeded()); 29 return PP_FromBool(enter.succeeded());
29 } 30 }
30 31
31 int32_t Connect(PP_Resource tcp_socket, 32 int32_t Connect(PP_Resource tcp_socket,
32 const char* host, 33 const char* host,
33 uint16_t port, 34 uint16_t port,
34 PP_CompletionCallback callback) { 35 PP_CompletionCallback callback) {
35 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 36 EnterTCP enter(tcp_socket, callback, true);
36 if (enter.failed()) 37 if (enter.failed())
37 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 38 return enter.retval();
38 int32_t result = enter.object()->Connect(host, port, callback); 39 return enter.SetResult(enter.object()->Connect(host, port, callback));
39 return MayForceCallback(callback, result);
40 } 40 }
41 41
42 int32_t ConnectWithNetAddress(PP_Resource tcp_socket, 42 int32_t ConnectWithNetAddress(PP_Resource tcp_socket,
43 const PP_NetAddress_Private* addr, 43 const PP_NetAddress_Private* addr,
44 PP_CompletionCallback callback) { 44 PP_CompletionCallback callback) {
45 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 45 EnterTCP enter(tcp_socket, callback, true);
46 if (enter.failed()) 46 if (enter.failed())
47 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 47 return enter.retval();
48 int32_t result = enter.object()->ConnectWithNetAddress(addr, callback); 48 return enter.SetResult(enter.object()->ConnectWithNetAddress(addr, callback));
49 return MayForceCallback(callback, result);
50 } 49 }
51 50
52 PP_Bool GetLocalAddress(PP_Resource tcp_socket, 51 PP_Bool GetLocalAddress(PP_Resource tcp_socket,
53 PP_NetAddress_Private* local_addr) { 52 PP_NetAddress_Private* local_addr) {
54 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 53 EnterTCP enter(tcp_socket, true);
55 if (enter.failed()) 54 if (enter.failed())
56 return PP_FALSE; 55 return PP_FALSE;
57 return enter.object()->GetLocalAddress(local_addr); 56 return enter.object()->GetLocalAddress(local_addr);
58 } 57 }
59 58
60 PP_Bool GetRemoteAddress(PP_Resource tcp_socket, 59 PP_Bool GetRemoteAddress(PP_Resource tcp_socket,
61 PP_NetAddress_Private* remote_addr) { 60 PP_NetAddress_Private* remote_addr) {
62 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 61 EnterTCP enter(tcp_socket, true);
63 if (enter.failed()) 62 if (enter.failed())
64 return PP_FALSE; 63 return PP_FALSE;
65 return enter.object()->GetRemoteAddress(remote_addr); 64 return enter.object()->GetRemoteAddress(remote_addr);
66 } 65 }
67 66
68 int32_t SSLHandshake(PP_Resource tcp_socket, 67 int32_t SSLHandshake(PP_Resource tcp_socket,
69 const char* server_name, 68 const char* server_name,
70 uint16_t server_port, 69 uint16_t server_port,
71 PP_CompletionCallback callback) { 70 PP_CompletionCallback callback) {
72 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 71 EnterTCP enter(tcp_socket, callback, true);
73 if (enter.failed()) 72 if (enter.failed())
74 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 73 return enter.retval();
75 int32_t result = enter.object()->SSLHandshake(server_name, server_port, 74 return enter.SetResult(enter.object()->SSLHandshake(server_name, server_port,
76 callback); 75 callback));
77 return MayForceCallback(callback, result);
78 } 76 }
79 77
80 int32_t Read(PP_Resource tcp_socket, 78 int32_t Read(PP_Resource tcp_socket,
81 char* buffer, 79 char* buffer,
82 int32_t bytes_to_read, 80 int32_t bytes_to_read,
83 PP_CompletionCallback callback) { 81 PP_CompletionCallback callback) {
84 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 82 EnterTCP enter(tcp_socket, callback, true);
85 if (enter.failed()) 83 if (enter.failed())
86 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 84 return enter.retval();
87 int32_t result = enter.object()->Read(buffer, bytes_to_read, callback); 85 return enter.SetResult(enter.object()->Read(buffer, bytes_to_read, callback));
88 return MayForceCallback(callback, result);
89 } 86 }
90 87
91 int32_t Write(PP_Resource tcp_socket, 88 int32_t Write(PP_Resource tcp_socket,
92 const char* buffer, 89 const char* buffer,
93 int32_t bytes_to_write, 90 int32_t bytes_to_write,
94 PP_CompletionCallback callback) { 91 PP_CompletionCallback callback) {
95 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 92 EnterTCP enter(tcp_socket, callback, true);
96 if (enter.failed()) 93 if (enter.failed())
97 return MayForceCallback(callback, PP_ERROR_BADRESOURCE); 94 return enter.retval();
98 int32_t result = enter.object()->Write(buffer, bytes_to_write, callback); 95 return enter.SetResult(enter.object()->Write(buffer, bytes_to_write,
99 return MayForceCallback(callback, result); 96 callback));
100 } 97 }
101 98
102 void Disconnect(PP_Resource tcp_socket) { 99 void Disconnect(PP_Resource tcp_socket) {
103 EnterResource<PPB_TCPSocket_Private_API> enter(tcp_socket, true); 100 EnterTCP enter(tcp_socket, true);
104 if (enter.succeeded()) 101 if (enter.succeeded())
105 enter.object()->Disconnect(); 102 enter.object()->Disconnect();
106 } 103 }
107 104
108 const PPB_TCPSocket_Private g_ppb_tcp_socket_thunk = { 105 const PPB_TCPSocket_Private g_ppb_tcp_socket_thunk = {
109 &Create, 106 &Create,
110 &IsTCPSocket, 107 &IsTCPSocket,
111 &Connect, 108 &Connect,
112 &ConnectWithNetAddress, 109 &ConnectWithNetAddress,
113 &GetLocalAddress, 110 &GetLocalAddress,
114 &GetRemoteAddress, 111 &GetRemoteAddress,
115 &SSLHandshake, 112 &SSLHandshake,
116 &Read, 113 &Read,
117 &Write, 114 &Write,
118 &Disconnect 115 &Disconnect
119 }; 116 };
120 117
121 } // namespace 118 } // namespace
122 119
123 const PPB_TCPSocket_Private_0_3* GetPPB_TCPSocket_Private_0_3_Thunk() { 120 const PPB_TCPSocket_Private_0_3* GetPPB_TCPSocket_Private_0_3_Thunk() {
124 return &g_ppb_tcp_socket_thunk; 121 return &g_ppb_tcp_socket_thunk;
125 } 122 }
126 123
127 } // namespace thunk 124 } // namespace thunk
128 } // namespace ppapi 125 } // namespace ppapi
OLDNEW
« no previous file with comments | « ppapi/thunk/ppb_mouse_lock_thunk.cc ('k') | ppapi/thunk/ppb_transport_thunk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698