cookies and cookies storage implementation

This commit is contained in:
Shamir Khodzha 2014-04-02 23:13:19 +04:00 committed by Josh Matthews
parent e14c569ed0
commit 3239aeacdc
13 changed files with 6441 additions and 48 deletions

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use resource_task::{TargetedLoadResponse, Metadata, LoadData, start_sending, ResponseSenders};
use resource_task::ControlMsg;
use resource_task::ProgressMsg::Done;
use file_loader;
@ -14,7 +15,7 @@ use std::borrow::ToOwned;
use std::io::fs::PathExtensions;
use std::sync::mpsc::Sender;
pub fn factory(mut load_data: LoadData, start_chan: Sender<TargetedLoadResponse>) {
pub fn factory(mut load_data: LoadData, start_chan: Sender<TargetedLoadResponse>, cookies_chan: Sender<ControlMsg>) {
let senders = ResponseSenders {
immediate_consumer: start_chan.clone(),
eventual_consumer: load_data.consumer.clone(),
@ -26,8 +27,9 @@ pub fn factory(mut load_data: LoadData, start_chan: Sender<TargetedLoadResponse>
content_type: Some(("text".to_string(), "html".to_string())),
charset: Some("utf-8".to_string()),
headers: None,
status: Some(RawStatus(200, "OK".to_owned()))
});
status: Some(RawStatus(200, "OK".to_owned())),
cookies: Vec::new(),
}, cookies_chan);
chan.send(Done(Ok(()))).unwrap();
return
}
@ -39,10 +41,10 @@ pub fn factory(mut load_data: LoadData, start_chan: Sender<TargetedLoadResponse>
load_data.url = Url::from_file_path(&path).unwrap();
}
_ => {
start_sending(senders, Metadata::default(load_data.url))
start_sending(senders, Metadata::default(load_data.url), cookies_chan)
.send(Done(Err("Unknown about: URL.".to_string()))).unwrap();
return
}
};
file_loader::factory(load_data, start_chan)
file_loader::factory(load_data, start_chan, cookies_chan)
}