aboutsummaryrefslogtreecommitdiffstats
path: root/components/net/blob_loader.rs
diff options
context:
space:
mode:
authorFernando Jiménez Moreno <ferjmoreno@gmail.com>2018-11-10 11:57:47 +0100
committerFernando Jiménez Moreno <ferjmoreno@gmail.com>2018-11-26 09:33:35 +0100
commita84442864d64242903a2b55c170b7f889ab4ab32 (patch)
tree1bf28997d93190f923bcaceccdb794e28d64840c /components/net/blob_loader.rs
parent8538634210988adabd5d75c8ff28cabd59a06baa (diff)
downloadservo-a84442864d64242903a2b55c170b7f889ab4ab32.tar.gz
servo-a84442864d64242903a2b55c170b7f889ab4ab32.zip
Add support fo byte range requests for blob URLs
Diffstat (limited to 'components/net/blob_loader.rs')
-rw-r--r--components/net/blob_loader.rs41
1 files changed, 0 insertions, 41 deletions
diff --git a/components/net/blob_loader.rs b/components/net/blob_loader.rs
deleted file mode 100644
index ae8f09879a4..00000000000
--- a/components/net/blob_loader.rs
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
-
-use crate::fetch::methods::{Data, DoneChannel};
-use crate::filemanager_thread::FileManager;
-use net_traits::blob_url_store::parse_blob_url;
-use net_traits::response::{Response, ResponseBody};
-use net_traits::{NetworkError, ResourceFetchTiming};
-use servo_channel::channel;
-use servo_url::ServoUrl;
-
-// TODO: Check on GET
-// https://w3c.github.io/FileAPI/#requestResponseModel
-
-/// https://fetch.spec.whatwg.org/#concept-basic-fetch (partial)
-pub fn load_blob_async(
- url: ServoUrl,
- filemanager: FileManager,
- done_chan: &mut DoneChannel,
-) -> Response {
- let (id, origin) = match parse_blob_url(&url) {
- Ok((id, origin)) => (id, origin),
- Err(()) => {
- return Response::network_error(NetworkError::Internal("Invalid blob url".into()));
- },
- };
-
- let mut response = Response::new(url, ResourceFetchTiming::new(request.timing_type()));
- let (sender, receiver) = channel();
- *done_chan = Some((sender.clone(), receiver));
- *response.body.lock().unwrap() = ResponseBody::Receiving(vec![]);
- let check_url_validity = true;
- if let Err(err) = filemanager.fetch_file(&sender, id, check_url_validity, origin, &mut response)
- {
- let _ = sender.send(Data::Done);
- return Response::network_error(NetworkError::Internal(err));
- };
-
- response
-}