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 "mojo/services/network/network_service_impl.h" 6 7#include "mojo/public/cpp/application/application_connection.h" 8#include "mojo/services/network/cookie_store_impl.h" 9#include "mojo/services/network/url_loader_impl.h" 10#include "mojo/services/network/web_socket_impl.h" 11 12namespace mojo { 13 14NetworkServiceImpl::NetworkServiceImpl(ApplicationConnection* connection, 15 NetworkContext* context) 16 : context_(context), 17 origin_(GURL(connection->GetRemoteApplicationURL()).GetOrigin()) { 18} 19 20NetworkServiceImpl::~NetworkServiceImpl() { 21} 22 23void NetworkServiceImpl::CreateURLLoader(InterfaceRequest<URLLoader> loader) { 24 // TODO(darin): Plumb origin_. Use for CORS. 25 BindToRequest(new URLLoaderImpl(context_), &loader); 26} 27 28void NetworkServiceImpl::GetCookieStore(InterfaceRequest<CookieStore> store) { 29 BindToRequest(new CookieStoreImpl(context_, origin_), &store); 30} 31 32void NetworkServiceImpl::CreateWebSocket(InterfaceRequest<WebSocket> socket) { 33 BindToRequest(new WebSocketImpl(context_), &socket); 34} 35 36} // namespace mojo 37