aboutsummaryrefslogtreecommitdiffstats
path: root/components/net_traits/request.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/net_traits/request.rs')
-rw-r--r--components/net_traits/request.rs29
1 files changed, 15 insertions, 14 deletions
diff --git a/components/net_traits/request.rs b/components/net_traits/request.rs
index c559b41fd9c..795a8556f6f 100644
--- a/components/net_traits/request.rs
+++ b/components/net_traits/request.rs
@@ -6,10 +6,11 @@ use ReferrerPolicy;
use hyper::header::Headers;
use hyper::method::Method;
use msg::constellation_msg::PipelineId;
+use servo_url::ServoUrl;
use std::cell::{Cell, RefCell};
use std::default::Default;
use std::mem::swap;
-use url::{Origin as UrlOrigin, Url};
+use url::{Origin as UrlOrigin};
/// An [initiator](https://fetch.spec.whatwg.org/#concept-request-initiator)
#[derive(Copy, Clone, PartialEq, HeapSizeOf)]
@@ -49,7 +50,7 @@ pub enum Referrer {
NoReferrer,
/// Default referrer if nothing is specified
Client,
- ReferrerUrl(Url)
+ ReferrerUrl(ServoUrl)
}
/// A [request mode](https://fetch.spec.whatwg.org/#concept-request-mode)
@@ -117,7 +118,7 @@ pub struct RequestInit {
serialize_with = "::hyper_serde::serialize")]
#[ignore_heap_size_of = "Defined in hyper"]
pub method: Method,
- pub url: Url,
+ pub url: ServoUrl,
#[serde(deserialize_with = "::hyper_serde::deserialize",
serialize_with = "::hyper_serde::serialize")]
#[ignore_heap_size_of = "Defined in hyper"]
@@ -135,9 +136,9 @@ pub struct RequestInit {
pub use_url_credentials: bool,
// this should actually be set by fetch, but fetch
// doesn't have info about the client right now
- pub origin: Url,
+ pub origin: ServoUrl,
// XXXManishearth these should be part of the client object
- pub referrer_url: Option<Url>,
+ pub referrer_url: Option<ServoUrl>,
pub referrer_policy: Option<ReferrerPolicy>,
pub pipeline_id: Option<PipelineId>,
pub redirect_mode: RedirectMode,
@@ -147,7 +148,7 @@ impl Default for RequestInit {
fn default() -> RequestInit {
RequestInit {
method: Method::Get,
- url: Url::parse("about:blank").unwrap(),
+ url: ServoUrl::parse("about:blank").unwrap(),
headers: Headers::new(),
unsafe_request: false,
body: None,
@@ -159,7 +160,7 @@ impl Default for RequestInit {
use_cors_preflight: false,
credentials_mode: CredentialsMode::Omit,
use_url_credentials: false,
- origin: Url::parse("about:blank").unwrap(),
+ origin: ServoUrl::parse("about:blank").unwrap(),
referrer_url: None,
referrer_policy: None,
pipeline_id: None,
@@ -205,14 +206,14 @@ pub struct Request {
pub integrity_metadata: RefCell<String>,
// Use the last method on url_list to act as spec current url field, and
// first method to act as spec url field
- pub url_list: RefCell<Vec<Url>>,
+ pub url_list: RefCell<Vec<ServoUrl>>,
pub redirect_count: Cell<u32>,
pub response_tainting: Cell<ResponseTainting>,
pub done: Cell<bool>,
}
impl Request {
- pub fn new(url: Url,
+ pub fn new(url: ServoUrl,
origin: Option<Origin>,
is_service_worker_global_scope: bool,
pipeline_id: Option<PipelineId>) -> Request {
@@ -277,11 +278,11 @@ impl Request {
req
}
- pub fn url(&self) -> Url {
+ pub fn url(&self) -> ServoUrl {
self.url_list.borrow().first().unwrap().clone()
}
- pub fn current_url(&self) -> Url {
+ pub fn current_url(&self) -> ServoUrl {
self.url_list.borrow().last().unwrap().clone()
}
@@ -301,20 +302,20 @@ impl Request {
}
impl Referrer {
- pub fn to_url(&self) -> Option<&Url> {
+ pub fn to_url(&self) -> Option<&ServoUrl> {
match *self {
Referrer::NoReferrer | Referrer::Client => None,
Referrer::ReferrerUrl(ref url) => Some(url)
}
}
- pub fn from_url(url: Option<Url>) -> Self {
+ pub fn from_url(url: Option<ServoUrl>) -> Self {
if let Some(url) = url {
Referrer::ReferrerUrl(url)
} else {
Referrer::NoReferrer
}
}
- pub fn take(&mut self) -> Option<Url> {
+ pub fn take(&mut self) -> Option<ServoUrl> {
let mut new = Referrer::Client;
swap(self, &mut new);
match new {