summaryrefslogtreecommitdiffstats
path: root/src/plugins/factoids/utils.rs
blob: fd08da1f70030757a19dc9758114d59feba42018 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
extern crate reqwest;

use std::thread;
use std::time::Duration;

use super::rlua::prelude::*;
use utils::Url;

use self::LuaError::RuntimeError;

pub fn download(_: &Lua, url: String) -> Result<String, LuaError> {
    let url = Url::from(url).max_kib(1024);
    match url.request() {
        Ok(v) => Ok(v),
        Err(e) => Err(RuntimeError(format!(
            "Failed to download {} - {}",
            url.as_str(),
            e.to_string()
        ))),
    }
}

pub fn sleep(_: &Lua, dur: u64) -> Result<(), LuaError> {
    thread::sleep(Duration::from_millis(dur));
    Ok(())
}