summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorsergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-15 01:10:08 +0000
committersergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-15 01:10:08 +0000
commit413a6fd5ffc8a1562e892027a3dca17e9c7099ce (patch)
tree6f702c53c0ca5f3397750033bc6b36e2154b8547 /webkit
parentfc1216ed7100ecb6b2c1bcb30e82994eb79864ef (diff)
downloadchromium_src-413a6fd5ffc8a1562e892027a3dca17e9c7099ce.zip
chromium_src-413a6fd5ffc8a1562e892027a3dca17e9c7099ce.tar.gz
chromium_src-413a6fd5ffc8a1562e892027a3dca17e9c7099ce.tar.bz2
Use enum instead of string to specify transport type.
TEST=None BUG=41776 Review URL: http://codereview.chromium.org/7891014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101211 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/plugins/ppapi/ppb_transport_impl.cc25
-rw-r--r--webkit/plugins/ppapi/ppb_transport_impl.h6
-rw-r--r--webkit/plugins/ppapi/resource_creation_impl.cc4
-rw-r--r--webkit/plugins/ppapi/resource_creation_impl.h2
4 files changed, 17 insertions, 20 deletions
diff --git a/webkit/plugins/ppapi/ppb_transport_impl.cc b/webkit/plugins/ppapi/ppb_transport_impl.cc
index e7779aa..d097354 100644
--- a/webkit/plugins/ppapi/ppb_transport_impl.cc
+++ b/webkit/plugins/ppapi/ppb_transport_impl.cc
@@ -70,9 +70,9 @@ PPB_Transport_Impl::~PPB_Transport_Impl() {
// static
PP_Resource PPB_Transport_Impl::Create(PP_Instance instance,
const char* name,
- const char* proto) {
+ PP_TransportType type) {
scoped_refptr<PPB_Transport_Impl> t(new PPB_Transport_Impl(instance));
- if (!t->Init(name, proto))
+ if (!t->Init(name, type))
return 0;
return t->GetReference();
}
@@ -81,17 +81,14 @@ PPB_Transport_API* PPB_Transport_Impl::AsPPB_Transport_API() {
return this;
}
-bool PPB_Transport_Impl::Init(const char* name, const char* proto) {
+bool PPB_Transport_Impl::Init(const char* name, PP_TransportType type) {
name_ = name;
- if (base::strcasecmp(proto, kUdpProtocolName) == 0) {
- use_tcp_ = false;
- } else if (base::strcasecmp(proto, kTcpProtocolName) == 0) {
- use_tcp_ = true;
- } else {
- LOG(WARNING) << "Unknown protocol: " << proto;
+ if (type != PP_TRANSPORTTYPE_DATAGRAM && type != PP_TRANSPORTTYPE_STREAM) {
+ LOG(WARNING) << "Unknown transport type: " << type;
return false;
}
+ type_ = type;
PluginDelegate* plugin_delegate = ResourceHelper::GetPluginDelegate(this);
if (!plugin_delegate)
@@ -147,7 +144,7 @@ int32_t PPB_Transport_Impl::SetProperty(PP_TransportProperty property,
}
case PP_TRANSPORTPROPERTY_TCP_RECEIVE_WINDOW: {
- if (!use_tcp_)
+ if (type_ != PP_TRANSPORTTYPE_STREAM)
return PP_ERROR_BADARGUMENT;
int32_t int_value = value.value.as_int;
@@ -160,7 +157,7 @@ int32_t PPB_Transport_Impl::SetProperty(PP_TransportProperty property,
}
case PP_TRANSPORTPROPERTY_TCP_SEND_WINDOW: {
- if (!use_tcp_)
+ if (type_ != PP_TRANSPORTTYPE_STREAM)
return PP_ERROR_BADARGUMENT;
int32_t int_value = value.value.as_int;
@@ -173,7 +170,7 @@ int32_t PPB_Transport_Impl::SetProperty(PP_TransportProperty property,
}
case PP_TRANSPORTPROPERTY_TCP_NO_DELAY: {
- if (!use_tcp_)
+ if (type_ != PP_TRANSPORTTYPE_STREAM)
return PP_ERROR_BADARGUMENT;
if (value.type != PP_VARTYPE_BOOL)
@@ -183,7 +180,7 @@ int32_t PPB_Transport_Impl::SetProperty(PP_TransportProperty property,
}
case PP_TRANSPORTPROPERTY_TCP_ACK_DELAY: {
- if (!use_tcp_)
+ if (type_ != PP_TRANSPORTTYPE_STREAM)
return PP_ERROR_BADARGUMENT;
int32_t int_value = value.value.as_int;
@@ -210,7 +207,7 @@ int32_t PPB_Transport_Impl::Connect(PP_CompletionCallback callback) {
if (started_)
return PP_ERROR_INPROGRESS;
- P2PTransport::Protocol protocol = use_tcp_ ?
+ P2PTransport::Protocol protocol = (type_ == PP_TRANSPORTTYPE_STREAM) ?
P2PTransport::PROTOCOL_TCP : P2PTransport::PROTOCOL_UDP;
if (!p2p_transport_->Init(name_, protocol, config_, this))
diff --git a/webkit/plugins/ppapi/ppb_transport_impl.h b/webkit/plugins/ppapi/ppb_transport_impl.h
index e4fe025..58138ab 100644
--- a/webkit/plugins/ppapi/ppb_transport_impl.h
+++ b/webkit/plugins/ppapi/ppb_transport_impl.h
@@ -27,7 +27,7 @@ class PPB_Transport_Impl : public ::ppapi::Resource,
static PP_Resource Create(PP_Instance instance,
const char* name,
- const char* proto);
+ PP_TransportType type);
// Resource override.
virtual ::ppapi::thunk::PPB_Transport_API* AsPPB_Transport_API() OVERRIDE;
@@ -54,13 +54,13 @@ class PPB_Transport_Impl : public ::ppapi::Resource,
private:
explicit PPB_Transport_Impl(PP_Instance instance);
- bool Init(const char* name, const char* proto);
+ bool Init(const char* name, PP_TransportType type);
void OnRead(int result);
void OnWritten(int result);
std::string name_;
- bool use_tcp_;
+ PP_TransportType type_;
webkit_glue::P2PTransport::Config config_;
bool started_;
scoped_ptr<webkit_glue::P2PTransport> p2p_transport_;
diff --git a/webkit/plugins/ppapi/resource_creation_impl.cc b/webkit/plugins/ppapi/resource_creation_impl.cc
index 311c35a..6698376 100644
--- a/webkit/plugins/ppapi/resource_creation_impl.cc
+++ b/webkit/plugins/ppapi/resource_creation_impl.cc
@@ -251,9 +251,9 @@ PP_Resource ResourceCreationImpl::CreateSurface3D(
PP_Resource ResourceCreationImpl::CreateTransport(PP_Instance instance,
const char* name,
- const char* proto) {
+ PP_TransportType type) {
#if defined(ENABLE_P2P_APIS)
- return PPB_Transport_Impl::Create(instance, name, proto);
+ return PPB_Transport_Impl::Create(instance, name, type);
#endif
}
diff --git a/webkit/plugins/ppapi/resource_creation_impl.h b/webkit/plugins/ppapi/resource_creation_impl.h
index 4a7a2a9..7269f1e 100644
--- a/webkit/plugins/ppapi/resource_creation_impl.h
+++ b/webkit/plugins/ppapi/resource_creation_impl.h
@@ -97,7 +97,7 @@ class ResourceCreationImpl : public ::ppapi::FunctionGroupBase,
const int32_t* attrib_list) OVERRIDE;
virtual PP_Resource CreateTransport(PP_Instance instance,
const char* name,
- const char* proto) OVERRIDE;
+ PP_TransportType type) OVERRIDE;
virtual PP_Resource CreateURLLoader(PP_Instance instance) OVERRIDE;
virtual PP_Resource CreateURLRequestInfo(
PP_Instance instance,