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

Side by Side Diff: ppapi/cpp/private/tcp_socket_private.cc

Issue 8506016: Remove 'Flash' from TCP/UDP Pepper interfaces. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: resolved last comments Created 9 years, 1 month 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/cpp/private/tcp_socket_private.h ('k') | ppapi/cpp/private/udp_socket_private.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "ppapi/cpp/private/tcp_socket_private.h"
6
7 #include "ppapi/c/pp_bool.h"
8 #include "ppapi/c/pp_errors.h"
9 #include "ppapi/cpp/completion_callback.h"
10 #include "ppapi/cpp/instance.h"
11 #include "ppapi/cpp/module.h"
12 #include "ppapi/cpp/module_impl.h"
13
14 namespace pp {
15
16 namespace {
17
18 template <> const char* interface_name<PPB_TCPSocket_Private>() {
19 return PPB_TCPSOCKET_PRIVATE_INTERFACE;
20 }
21
22 } // namespace
23
24 TCPSocketPrivate::TCPSocketPrivate(Instance* instance) {
25 if (has_interface<PPB_TCPSocket_Private>() && instance) {
26 PassRefFromConstructor(get_interface<PPB_TCPSocket_Private>()->Create(
27 instance->pp_instance()));
28 }
29 }
30
31 // static
32 bool TCPSocketPrivate::IsAvailable() {
33 return has_interface<PPB_TCPSocket_Private>();
34 }
35
36 int32_t TCPSocketPrivate::Connect(const char* host,
37 uint16_t port,
38 const CompletionCallback& callback) {
39 if (!has_interface<PPB_TCPSocket_Private>())
40 return callback.MayForce(PP_ERROR_NOINTERFACE);
41 return get_interface<PPB_TCPSocket_Private>()->Connect(
42 pp_resource(), host, port, callback.pp_completion_callback());
43 }
44
45 int32_t TCPSocketPrivate::ConnectWithNetAddress(
46 const PP_NetAddress_Private* addr,
47 const CompletionCallback& callback) {
48 if (!has_interface<PPB_TCPSocket_Private>())
49 return callback.MayForce(PP_ERROR_NOINTERFACE);
50 return get_interface<PPB_TCPSocket_Private>()->ConnectWithNetAddress(
51 pp_resource(), addr, callback.pp_completion_callback());
52 }
53
54 bool TCPSocketPrivate::GetLocalAddress(PP_NetAddress_Private* local_addr) {
55 if (!has_interface<PPB_TCPSocket_Private>())
56 return false;
57
58 PP_Bool result = get_interface<PPB_TCPSocket_Private>()->GetLocalAddress(
59 pp_resource(), local_addr);
60 return PP_ToBool(result);
61 }
62
63 bool TCPSocketPrivate::GetRemoteAddress(PP_NetAddress_Private* remote_addr) {
64 if (!has_interface<PPB_TCPSocket_Private>())
65 return false;
66 PP_Bool result = get_interface<PPB_TCPSocket_Private>()->GetRemoteAddress(
67 pp_resource(), remote_addr);
68 return PP_ToBool(result);
69 }
70
71 int32_t TCPSocketPrivate::SSLHandshake(const char* server_name,
72 uint16_t server_port,
73 const CompletionCallback& callback) {
74 if (!has_interface<PPB_TCPSocket_Private>())
75 return callback.MayForce(PP_ERROR_NOINTERFACE);
76 return get_interface<PPB_TCPSocket_Private>()->SSLHandshake(
77 pp_resource(), server_name, server_port,
78 callback.pp_completion_callback());
79 }
80
81 int32_t TCPSocketPrivate::Read(char* buffer,
82 int32_t bytes_to_read,
83 const CompletionCallback& callback) {
84 if (!has_interface<PPB_TCPSocket_Private>())
85 return callback.MayForce(PP_ERROR_NOINTERFACE);
86 return get_interface<PPB_TCPSocket_Private>()->Read(
87 pp_resource(), buffer, bytes_to_read, callback.pp_completion_callback());
88 }
89
90 int32_t TCPSocketPrivate::Write(const char* buffer,
91 int32_t bytes_to_write,
92 const CompletionCallback& callback) {
93 if (!has_interface<PPB_TCPSocket_Private>())
94 return callback.MayForce(PP_ERROR_NOINTERFACE);
95 return get_interface<PPB_TCPSocket_Private>()->Write(
96 pp_resource(), buffer, bytes_to_write, callback.pp_completion_callback());
97 }
98
99 void TCPSocketPrivate::Disconnect() {
100 if (!has_interface<PPB_TCPSocket_Private>())
101 return;
102 return get_interface<PPB_TCPSocket_Private>()->Disconnect(pp_resource());
103 }
104
105 } // namespace pp
OLDNEW
« no previous file with comments | « ppapi/cpp/private/tcp_socket_private.h ('k') | ppapi/cpp/private/udp_socket_private.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698