1 // Copyright 2015 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.
5 #include "mojo/services/network/url_loader_factory_impl.h"
7 #include "mojo/services/network/url_loader_impl.h"
11 URLLoaderFactoryImpl::URLLoaderFactoryImpl(
12 ApplicationConnection
* connection
,
13 NetworkContext
* context
,
14 scoped_ptr
<mojo::AppRefCount
> app_refcount
,
15 InterfaceRequest
<URLLoaderFactory
> request
)
17 app_refcount_(app_refcount
.Pass()),
18 binding_(this, request
.Pass()) {
21 URLLoaderFactoryImpl::~URLLoaderFactoryImpl() {
24 void URLLoaderFactoryImpl::CreateURLLoader(InterfaceRequest
<URLLoader
> loader
) {
25 // TODO(darin): Plumb origin. Use for CORS.
26 // TODO(beng): Figure out how to get origin through to here.
27 // The loader will delete itself when the pipe is closed, unless a request is
28 // in progress. In which case, the loader will delete itself when the request
30 new URLLoaderImpl(context_
, loader
.Pass(), app_refcount_
->Clone());