1 // Copyright 2014 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 "remoting/host/cast_extension.h" 6 7 #include "net/url_request/url_request_context_getter.h" 8 #include "remoting/host/cast_extension_session.h" 9 #include "remoting/protocol/network_settings.h" 10 11 namespace remoting { 12 13 const char kCapability[] = "casting"; 14 15 CastExtension::CastExtension( 16 scoped_refptr<base::SingleThreadTaskRunner> network_task_runner, 17 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter, 18 const protocol::NetworkSettings& network_settings) 19 : network_task_runner_(network_task_runner), 20 url_request_context_getter_(url_request_context_getter), 21 network_settings_(network_settings) { 22 } 23 24 CastExtension::~CastExtension() { 25 } 26 27 std::string CastExtension::capability() const { 28 return kCapability; 29 } 30 31 scoped_ptr<HostExtensionSession> CastExtension::CreateExtensionSession( 32 ClientSessionControl* client_session_control, 33 protocol::ClientStub* client_stub) { 34 return CastExtensionSession::Create(network_task_runner_, 35 url_request_context_getter_, 36 network_settings_, 37 client_session_control, 38 client_stub) 39 .PassAs<HostExtensionSession>(); 40 } 41 42 } // namespace remoting 43 44