mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Add fetch_async to PendingAsyncLoad, DocumentLoader and Document
This commit is contained in:
parent
2bb95989c5
commit
d4816762fa
3 changed files with 32 additions and 3 deletions
|
@ -7,9 +7,11 @@
|
|||
|
||||
use dom::bindings::js::JS;
|
||||
use dom::document::Document;
|
||||
use ipc_channel::ipc::IpcSender;
|
||||
use msg::constellation_msg::{PipelineId, ReferrerPolicy};
|
||||
use net_traits::{PendingAsyncLoad, AsyncResponseTarget, LoadContext};
|
||||
use net_traits::{ResourceThreads, IpcSend};
|
||||
use net_traits::request::RequestInit;
|
||||
use net_traits::{AsyncResponseTarget, PendingAsyncLoad, LoadContext};
|
||||
use net_traits::{FetchResponseMsg, ResourceThreads, IpcSend};
|
||||
use std::thread;
|
||||
use url::Url;
|
||||
|
||||
|
@ -148,6 +150,17 @@ impl DocumentLoader {
|
|||
pending.load_async(listener)
|
||||
}
|
||||
|
||||
/// Initiate a new fetch.
|
||||
pub fn fetch_async(&mut self,
|
||||
load: LoadType,
|
||||
request: RequestInit,
|
||||
fetch_target: IpcSender<FetchResponseMsg>,
|
||||
referrer: &Document,
|
||||
referrer_policy: Option<ReferrerPolicy>) {
|
||||
let pending = self.prepare_async_load(load, referrer, referrer_policy);
|
||||
pending.fetch_async(request, fetch_target);
|
||||
}
|
||||
|
||||
/// Mark an in-progress network request complete.
|
||||
pub fn finish_load(&mut self, load: &LoadType) {
|
||||
let idx = self.blocking_loads.iter().position(|unfinished| *unfinished == *load);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue