use std::env;
use std::fs::{self, File};
use std::io::{self, Write};
use std::path::PathBuf;
pub static COOKIES_8_JDK: &'static [u8] = b"# Cookies for domains related to oracle.com.
# This content may be pasted into a cookies.txt file and used by wget
# Example: wget -x --load-cookies cookies.txt \
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
#
www.oracle.com FALSE /technetwork/java/javase/downloads FALSE 0 testSessionCookie Enabled
www.oracle.com FALSE / FALSE 0 JSESSIONID \
PRRLTwhLvGX3T1V2Mb1GPKPy9c38Xn9mspn15fp52PTdDtvrrQpT!-593619270!1487296478
.oracle.com TRUE / FALSE 1398258763.627247 Order_MarketingTrigger WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151734 Order_MarketingCampaignSuccess \
WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151784 p_mcc \
NA:WWOU13045613MPP002C002:WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 0 p_org_id 1001
.oracle.com TRUE / FALSE 0 p_lang US
.oracle.com TRUE / FALSE 0 p_cur_URL \
http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=3
.oracle.com TRUE / FALSE 1458821572 s_fid 1D59707C4A5F2EE8-36C9439BC0B23D90
.oracle.com TRUE / FALSE 0 s_eVar21 WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1553429573 s_ev43 \
%5B%5B%27WWOU13045613MPP002C002%27%2C%271395663173003%27%5D%5D
education.oracle.com FALSE / FALSE 0 fs_nocache_guid 51355CC33440384088C0D82E02C6738C
docs.oracle.com FALSE / FALSE 0 tutorial_showLeftBar yes
.edelivery.oracle.com TRUE / FALSE 1713124283.261694 ARU_LANG US
.oracle.com TRUE / FALSE 1400689265 s_nr 1398097265323
.oracle.com TRUE / FALSE 0 s_cc true
.oracle.com TRUE / FALSE 0 oraclelicense accept-securebackup-cookie
.oracle.com TRUE / FALSE 0 gpw_e24 \
http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk8-downloads-2133151.html
.oracle.com TRUE / FALSE 0 s_sq \
oracleotnlive%2Coracleglobal%3D%2526pid%253Dotn%25253Aen-us%25253A%25252Fjava%25252Fjavase%25252F\
downloads%25252Fjdk8-downloads-2133151.html%2526pidt%253D1%2526oid%253D\
functiononclick(event)%25257BacceptAgreement(window.self%25252C'jdk-8u5-oth-JPR')\
%25253B%25257D%2526oidt%253D2%2526ot%253DRADIO
";
pub static COOKIES_8_JRE: &'static [u8] = b"# Cookies for domains related to oracle.com.
# This content may be pasted into a cookies.txt file and used by wget
# Example: wget -x --load-cookies cookies.txt \
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
#
www.oracle.com FALSE /technetwork/java/javase/downloads FALSE 0 testSessionCookie Enabled
www.oracle.com FALSE / FALSE 0 JSESSIONID \
PRRLTwhLvGX3T1V2Mb1GPKPy9c38Xn9mspn15fp52PTdDtvrrQpT!-593619270!1487296478
.oracle.com TRUE / FALSE 1398258763.627247 Order_MarketingTrigger WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151734 Order_MarketingCampaignSuccess \
WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151784 p_mcc \
NA:WWOU13045613MPP002C002:WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 0 p_org_id 1001
.oracle.com TRUE / FALSE 0 p_lang US
.oracle.com TRUE / FALSE 0 p_cur_URL \
http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=3
.oracle.com TRUE / FALSE 1458821572 s_fid 1D59707C4A5F2EE8-36C9439BC0B23D90
.oracle.com TRUE / FALSE 0 s_eVar21 WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1553429573 s_ev43 \
%5B%5B%27WWOU13045613MPP002C002%27%2C%271395663173003%27%5D%5D
education.oracle.com FALSE / FALSE 0 fs_nocache_guid 51355CC33440384088C0D82E02C6738C
docs.oracle.com FALSE / FALSE 0 tutorial_showLeftBar yes
.edelivery.oracle.com TRUE / FALSE 1713124283.261694 ARU_LANG US
.oracle.com TRUE / FALSE 1400689265 s_nr 1398097265323
.oracle.com TRUE / FALSE 0 s_cc true
.oracle.com TRUE / FALSE 0 oraclelicense accept-securebackup-cookie
.oracle.com TRUE / FALSE 0 gpw_e24 \
http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjre8-downloads-2133155.html
.oracle.com TRUE / FALSE 0 s_sq \
oracleotnlive%2Coracleglobal%3D%2526pid%253Dotn%25253Aen-us%25253A%25252Fjava%25252Fjavase%25252F\
downloads%25252Fjre8-downloads-2133155.html%2526pidt%253D1%2526oid%253D\
functiononclick(event)%25257BacceptAgreement(window.self%25252C'jre-8u5-oth-JPR')\
%25253B%25257D%2526oidt%253D2%2526ot%253DRADIO";
pub static COOKIES_7_JDK: &'static [u8] = b"# Cookies for domains related to oracle.com.
# This content may be pasted into a cookies.txt file and used by wget
# Example: wget -x --load-cookies cookies.txt \
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
#
www.oracle.com FALSE /technetwork/java/javase/downloads FALSE 0 testSessionCookie Enabled
www.oracle.com FALSE / FALSE 0 JSESSIONID \
PRRLTwhLvGX3T1V2Mb1GPKPy9c38Xn9mspn15fp52PTdDtvrrQpT!-593619270!1487296478
.oracle.com TRUE / FALSE 1398258763.627247 Order_MarketingTrigger WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151734 Order_MarketingCampaignSuccess \
WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151784 p_mcc \
NA:WWOU13045613MPP002C002:WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 0 p_org_id 1001
.oracle.com TRUE / FALSE 0 p_lang US
.oracle.com TRUE / FALSE 0 p_cur_URL \
http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=3
.oracle.com TRUE / FALSE 1458821572 s_fid 1D59707C4A5F2EE8-36C9439BC0B23D90
.oracle.com TRUE / FALSE 0 s_eVar21 WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1553429573 s_ev43 \
%5B%5B%27WWOU13045613MPP002C002%27%2C%271395663173003%27%5D%5D
education.oracle.com FALSE / FALSE 0 fs_nocache_guid 51355CC33440384088C0D82E02C6738C
docs.oracle.com FALSE / FALSE 0 tutorial_showLeftBar yes
.edelivery.oracle.com TRUE / FALSE 1713124283.261694 ARU_LANG US
.oracle.com TRUE / FALSE 1400689265 s_nr 1398097265323
.oracle.com TRUE / FALSE 0 s_cc true
.oracle.com TRUE / FALSE 0 oraclelicense accept-securebackup-cookie
.oracle.com TRUE / FALSE 0 gpw_e24 \
http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk7-downloads-1880260.html
.oracle.com TRUE / FALSE 0 s_sq \
oracleotnlive%2Coracleglobal%3D%2526pid%253Dotn%25253Aen-us%25253A%25252Fjava%25252Fjavase%25252F\
downloads%25252Fjdk7-downloads-1880260.html%2526pidt%253D1%2526oid%253D\
functiononclick(event)%25257BacceptAgreement(window.self%25252C'jdk-7u55-oth-JPR')\
%25253B%25257D%2526oidt%253D2%2526ot%253DRADIO";
pub static COOKIES_7_JRE: &'static [u8] = b"# Cookies for domains related to oracle.com.
# This content may be pasted into a cookies.txt file and used by wget
# Example: wget -x --load-cookies cookies.txt \
http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html
#
www.oracle.com FALSE /technetwork/java/javase/downloads FALSE 0 testSessionCookie Enabled
www.oracle.com FALSE / FALSE 0 JSESSIONID \
PRRLTwhLvGX3T1V2Mb1GPKPy9c38Xn9mspn15fp52PTdDtvrrQpT!-593619270!1487296478
.oracle.com TRUE / FALSE 1398258763.627247 Order_MarketingTrigger WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151734 Order_MarketingCampaignSuccess \
WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1398258768.151784 p_mcc \
NA:WWOU13045613MPP002C002:WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 0 p_org_id 1001
.oracle.com TRUE / FALSE 0 p_lang US
.oracle.com TRUE / FALSE 0 p_cur_URL \
http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=3
.oracle.com TRUE / FALSE 1458821572 s_fid 1D59707C4A5F2EE8-36C9439BC0B23D90
.oracle.com TRUE / FALSE 0 s_eVar21 WWOU13045613MPP002C002
.oracle.com TRUE / FALSE 1553429573 s_ev43 \
%5B%5B%27WWOU13045613MPP002C002%27%2C%271395663173003%27%5D%5D
education.oracle.com FALSE / FALSE 0 fs_nocache_guid 51355CC33440384088C0D82E02C6738C
docs.oracle.com FALSE / FALSE 0 tutorial_showLeftBar yes
.edelivery.oracle.com TRUE / FALSE 1713124283.261694 ARU_LANG US
.oracle.com TRUE / FALSE 1400689265 s_nr 1398097265323
.oracle.com TRUE / FALSE 0 s_cc true
.oracle.com TRUE / FALSE 0 oraclelicense accept-securebackup-cookie
.oracle.com TRUE / FALSE 0 gpw_e24 \
http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjre7-downloads-1880261.html
.oracle.com TRUE / FALSE 0 s_sq \
oracleotnlive%2Coracleglobal%3D%2526pid%253Dotn%25253Aen-us%25253A%25252Fjava%25252Fjavase%25252F\
downloads%25252Fjre7-downloads-1880261.html%2526pidt%253D1%2526oid%253D\
functiononclick(event)%25257BacceptAgreement(window.self%25252C'jre-7u55-oth-JPR')\
%25253B%25257D%2526oidt%253D2%2526ot%253DRADIO";
fn delete_tmp_file(filename: &str) -> io::Result<()> {
let tmpfile = env::temp_dir().join(filename);
if tmpfile.exists() {
try!(fs::remove_file(&tmpfile));
}
Ok(())
}
pub fn delete_tmp_files() -> Result<i32, ::LibwgetjError> {
let paths = vec!["cookies_7_jdk",
"cookies_7_jre",
"cookies_8_jdk",
"cookies_8_jre"];
for path in &paths {
try!(delete_tmp_file(path));
}
Ok(0)
}
fn write_file(filename: &str, cookies: &[u8]) -> io::Result<PathBuf> {
let tmpfile = env::temp_dir().join(filename);
let mut cookie_file = try!(File::create(tmpfile.as_path()));
try!(cookie_file.write_all(cookies));
Ok(tmpfile)
}
pub fn write_tmp_files(cfg: &::DownloadConfig) -> Result<PathBuf, ::LibwgetjError> {
match (cfg.ver, cfg.pkg) {
(::Seven, ::JDK) => Ok(try!(write_file("cookies_7_jdk", COOKIES_7_JDK))),
(::Seven, ::JRE) => Ok(try!(write_file("cookies_7_jre", COOKIES_7_JRE))),
(::Eight, ::JDK) => Ok(try!(write_file("cookies_8_jdk", COOKIES_8_JDK))),
(::Eight, ::JRE) => Ok(try!(write_file("cookies_8_jre", COOKIES_8_JRE))),
}
}