Index: extensions/browser/api/cast_channel/cast_channel_api.cc |
diff --git a/extensions/browser/api/cast_channel/cast_channel_api.cc b/extensions/browser/api/cast_channel/cast_channel_api.cc |
index cb5078d5a650370361868a7f5956137311c5bdd0..b645aed0b39b543552800d0eff72b56a75aa7125 100644 |
--- a/extensions/browser/api/cast_channel/cast_channel_api.cc |
+++ b/extensions/browser/api/cast_channel/cast_channel_api.cc |
@@ -19,6 +19,7 @@ |
#include "base/strings/string_number_conversions.h" |
#include "base/values.h" |
#include "content/public/browser/browser_thread.h" |
+#include "extensions/browser/api/cast_channel/cast_channel_enum_util.h" |
#include "extensions/browser/api/cast_channel/cast_message_util.h" |
#include "extensions/browser/api/cast_channel/cast_socket.h" |
#include "extensions/browser/api/cast_channel/cast_socket_service.h" |
@@ -43,18 +44,19 @@ namespace OnError = cast_channel::OnError; |
namespace OnMessage = cast_channel::OnMessage; |
namespace Open = cast_channel::Open; |
namespace Send = cast_channel::Send; |
+using ::cast_channel::ChannelError; |
using cast_channel::CastDeviceCapability; |
using cast_channel::CastMessage; |
using cast_channel::CastSocket; |
-using cast_channel::ChannelAuthType; |
-using cast_channel::ChannelError; |
+using cast_channel::CastSocketImpl; |
+using cast_channel::CastTransport; |
using cast_channel::ChannelInfo; |
using cast_channel::ConnectInfo; |
using cast_channel::ErrorInfo; |
+using cast_channel::KeepAliveDelegate; |
using cast_channel::LastErrors; |
using cast_channel::Logger; |
using cast_channel::MessageInfo; |
-using cast_channel::ReadyState; |
using content::BrowserThread; |
namespace { |
@@ -75,15 +77,17 @@ void FillChannelInfo(const CastSocket& socket, ChannelInfo* channel_info) { |
const net::IPEndPoint& ip_endpoint = socket.ip_endpoint(); |
channel_info->connect_info.ip_address = ip_endpoint.ToStringWithoutPort(); |
channel_info->connect_info.port = ip_endpoint.port(); |
- channel_info->connect_info.auth = socket.channel_auth(); |
- channel_info->ready_state = socket.ready_state(); |
- channel_info->error_state = socket.error_state(); |
+ channel_info->connect_info.auth = |
+ cast_channel::ToChannelAuthType(socket.channel_auth()); |
+ channel_info->ready_state = cast_channel::ToReadyState(socket.ready_state()); |
+ channel_info->error_state = |
+ cast_channel::ToChannelError(socket.error_state()); |
channel_info->keep_alive = socket.keep_alive(); |
channel_info->audio_only = socket.audio_only(); |
} |
// Fills |error_info| from |error_state| and |last_errors|. |
-void FillErrorInfo(ChannelError error_state, |
+void FillErrorInfo(cast_channel::ChannelError error_state, |
const LastErrors& last_errors, |
ErrorInfo* error_info) { |
error_info->error_state = error_state; |
@@ -209,15 +213,17 @@ void CastChannelAsyncApiFunction::SetResultFromSocket( |
const CastSocket& socket) { |
ChannelInfo channel_info; |
FillChannelInfo(socket, &channel_info); |
- ChannelError error = socket.error_state(); |
+ cast_channel::ChannelError error = |
+ cast_channel::ToChannelError(socket.error_state()); |
if (error != cast_channel::CHANNEL_ERROR_NONE) { |
SetError("Channel socket error = " + base::IntToString(error)); |
} |
SetResultFromChannelInfo(channel_info); |
} |
-void CastChannelAsyncApiFunction::SetResultFromError(int channel_id, |
- ChannelError error) { |
+void CastChannelAsyncApiFunction::SetResultFromError( |
+ int channel_id, |
+ cast_channel::ChannelError error) { |
ChannelInfo channel_info; |
channel_info.channel_id = channel_id; |
channel_info.ready_state = cast_channel::READY_STATE_CLOSED; |
@@ -294,7 +300,7 @@ bool CastChannelOpenFunction::Prepare() { |
return false; |
} |
- channel_auth_ = connect_info.auth; |
+ channel_auth_ = cast_channel::ToChannelAuthTypeInternal(connect_info.auth); |
ip_endpoint_.reset(ParseConnectInfo(connect_info)); |
return true; |
} |
@@ -308,7 +314,7 @@ void CastChannelOpenFunction::AsyncWorkStart() { |
if (test_socket.get()) { |
socket = test_socket.release(); |
} else { |
- socket = new cast_channel::CastSocketImpl( |
+ socket = new CastSocketImpl( |
extension_->id(), *ip_endpoint_, channel_auth_, |
ExtensionsBrowserClient::Get()->GetNetLog(), |
base::TimeDelta::FromMilliseconds(connect_info.timeout.get() |
@@ -321,17 +327,16 @@ void CastChannelOpenFunction::AsyncWorkStart() { |
new_channel_id_ = AddSocket(base::WrapUnique(socket)); |
// Construct read delegates. |
- std::unique_ptr<api::cast_channel::CastTransport::Delegate> delegate( |
+ std::unique_ptr<CastTransport::Delegate> delegate( |
base::MakeUnique<CastMessageHandler>( |
base::Bind(&CastChannelAPI::SendEvent, api_->AsWeakPtr(), |
extension_->id()), |
socket, api_->GetLogger())); |
if (socket->keep_alive()) { |
// Wrap read delegate in a KeepAliveDelegate for timeout handling. |
- api::cast_channel::KeepAliveDelegate* keep_alive = |
- new api::cast_channel::KeepAliveDelegate( |
- socket, api_->GetLogger(), std::move(delegate), ping_interval_, |
- liveness_timeout_); |
+ KeepAliveDelegate* keep_alive = |
+ new KeepAliveDelegate(socket, api_->GetLogger(), std::move(delegate), |
+ ping_interval_, liveness_timeout_); |
std::unique_ptr<base::Timer> injected_timer = |
api_->GetInjectedTimeoutTimerForTest(); |
if (injected_timer) { |
@@ -345,19 +350,19 @@ void CastChannelOpenFunction::AsyncWorkStart() { |
base::Bind(&CastChannelOpenFunction::OnOpen, this)); |
} |
-void CastChannelOpenFunction::OnOpen(cast_channel::ChannelError result) { |
+void CastChannelOpenFunction::OnOpen(ChannelError result) { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
VLOG(1) << "Connect finished, OnOpen invoked."; |
// TODO: If we failed to open the CastSocket, we may want to clean up here, |
// rather than relying on the extension to call close(). This can be done by |
// calling RemoveSocket() and api_->GetLogger()->ClearLastErrors(channel_id). |
- if (result != cast_channel::CHANNEL_ERROR_UNKNOWN) { |
+ if (result != ChannelError::UNKNOWN) { |
CastSocket* socket = GetSocket(new_channel_id_); |
CHECK(socket); |
SetResultFromSocket(*socket); |
} else { |
// The socket is being destroyed. |
- SetResultFromError(new_channel_id_, result); |
+ SetResultFromError(new_channel_id_, cast_channel::CHANNEL_ERROR_UNKNOWN); |
} |
AsyncWorkCompleted(); |
@@ -470,7 +475,7 @@ void CastChannelCloseFunction::OnClose(int result) { |
CastChannelOpenFunction::CastMessageHandler::CastMessageHandler( |
const EventDispatchCallback& ui_dispatch_cb, |
- cast_channel::CastSocket* socket, |
+ CastSocket* socket, |
scoped_refptr<Logger> logger) |
: ui_dispatch_cb_(ui_dispatch_cb), socket_(socket), logger_(logger) { |
DCHECK(socket_); |
@@ -481,14 +486,14 @@ CastChannelOpenFunction::CastMessageHandler::~CastMessageHandler() { |
} |
void CastChannelOpenFunction::CastMessageHandler::OnError( |
- cast_channel::ChannelError error_state) { |
+ ChannelError error_state) { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
ChannelInfo channel_info; |
FillChannelInfo(*socket_, &channel_info); |
- channel_info.error_state = error_state; |
+ channel_info.error_state = cast_channel::ToChannelError(error_state); |
ErrorInfo error_info; |
- FillErrorInfo(error_state, logger_->GetLastErrors(socket_->id()), |
+ FillErrorInfo(channel_info.error_state, logger_->GetLastErrors(socket_->id()), |
&error_info); |
std::unique_ptr<base::ListValue> results = |
@@ -505,7 +510,7 @@ void CastChannelOpenFunction::CastMessageHandler::OnMessage( |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
MessageInfo message_info; |
- cast_channel::CastMessageToMessageInfo(message, &message_info); |
+ CastMessageToMessageInfo(message, &message_info); |
ChannelInfo channel_info; |
FillChannelInfo(*socket_, &channel_info); |
VLOG(1) << "Received message " << ParamToString(message_info) |