Merge pull request 'some cleanup' (#2) from master into main
Reviewed-on: #2
This commit was merged in pull request #2.
This commit is contained in:
@@ -9,17 +9,11 @@ awc = "3.7.0"
|
|||||||
env_logger = "0.11.8"
|
env_logger = "0.11.8"
|
||||||
error-chain = "0.12.4"
|
error-chain = "0.12.4"
|
||||||
futures = "0.3.31"
|
futures = "0.3.31"
|
||||||
html5ever = "0.31.0"
|
|
||||||
htmlentity = "1.3.2"
|
htmlentity = "1.3.2"
|
||||||
markup5ever_rcdom = "0.3.0"
|
|
||||||
ntex = { version = "2.0", features = ["tokio", "openssl"] }
|
ntex = { version = "2.0", features = ["tokio", "openssl"] }
|
||||||
ntex-files = "2.0.0"
|
ntex-files = "2.0.0"
|
||||||
once_cell = "1.21.3"
|
once_cell = "1.21.3"
|
||||||
openssl = "0.10.73"
|
|
||||||
reqwest = { version = "0.12.18", features = ["blocking", "json", "rustls-tls"] }
|
reqwest = { version = "0.12.18", features = ["blocking", "json", "rustls-tls"] }
|
||||||
serde = "1.0.219"
|
serde = "1.0.219"
|
||||||
serde_json = "1.0.140"
|
serde_json = "1.0.140"
|
||||||
skyscraper = "0.6.4"
|
|
||||||
sxd-document = "0.3.2"
|
|
||||||
sxd-xpath = "0.4.2"
|
|
||||||
|
|
||||||
|
|||||||
48
src/main.rs
48
src/main.rs
@@ -12,50 +12,6 @@ mod videos;
|
|||||||
mod providers;
|
mod providers;
|
||||||
mod util;
|
mod util;
|
||||||
|
|
||||||
#[derive(Clone, Debug, Deserialize)]
|
|
||||||
struct Metadata {
|
|
||||||
name: String,
|
|
||||||
version: String,
|
|
||||||
author: String,
|
|
||||||
}
|
|
||||||
|
|
||||||
// type getVideosFn = fn get_videos(channel: Option<String>, sort: Option<String>, query: Option<String>, page: Option<String>, per_page: Option<String>) -> Videos;
|
|
||||||
|
|
||||||
|
|
||||||
async fn metadata(data: web::types::State<Metadata>) -> HttpResponse {
|
|
||||||
async fn counter(x: String) -> String{
|
|
||||||
for i in 1..=5 {
|
|
||||||
println!("{}: {}", x, i);
|
|
||||||
thread::sleep(Duration::from_secs(1));
|
|
||||||
}
|
|
||||||
return x;
|
|
||||||
}
|
|
||||||
|
|
||||||
let meta = data.get_ref().clone();
|
|
||||||
let mut handles = vec![];
|
|
||||||
|
|
||||||
for i in 1..=3 {
|
|
||||||
let name = format!("{}-{}", meta.name, i);
|
|
||||||
handles.push(thread::spawn(move || {
|
|
||||||
futures::executor::block_on(counter(name.clone()))
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
let results: Vec<String> = handles
|
|
||||||
.into_iter()
|
|
||||||
.map(|handle| handle.join().unwrap())
|
|
||||||
.collect();
|
|
||||||
|
|
||||||
println!("Results: {:?}", results);
|
|
||||||
|
|
||||||
HttpResponse::Ok().json(
|
|
||||||
&json!({
|
|
||||||
"description": "A simple web server for the Hot Tub app.",
|
|
||||||
"documentation": ""
|
|
||||||
}),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
#[ntex::main]
|
#[ntex::main]
|
||||||
async fn main() -> std::io::Result<()> {
|
async fn main() -> std::io::Result<()> {
|
||||||
std::env::set_var("RUST_LOG", "ntex=warn");
|
std::env::set_var("RUST_LOG", "ntex=warn");
|
||||||
@@ -64,12 +20,8 @@ async fn main() -> std::io::Result<()> {
|
|||||||
|
|
||||||
|
|
||||||
web::HttpServer::new(|| {
|
web::HttpServer::new(|| {
|
||||||
const METADATA_JSON: &str = include_str!("../metadata.json");
|
|
||||||
let mut meta: Metadata = serde_json::from_str(METADATA_JSON).unwrap();
|
|
||||||
web::App::new()
|
web::App::new()
|
||||||
.wrap(web::middleware::Logger::default())
|
.wrap(web::middleware::Logger::default())
|
||||||
.state(meta.clone())
|
|
||||||
.route("/meta", web::get().to(metadata))
|
|
||||||
.service(web::scope("/api").configure(api::config))
|
.service(web::scope("/api").configure(api::config))
|
||||||
.service(fs::Files::new("/", "static"))
|
.service(fs::Files::new("/", "static"))
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ use std::vec;
|
|||||||
use error_chain::error_chain;
|
use error_chain::error_chain;
|
||||||
use htmlentity::entity::{decode, encode, CharacterSet, EncodeType, ICodedDataTrait};
|
use htmlentity::entity::{decode, encode, CharacterSet, EncodeType, ICodedDataTrait};
|
||||||
use htmlentity::types::{AnyhowResult, Byte};
|
use htmlentity::types::{AnyhowResult, Byte};
|
||||||
use reqwest::Proxy;
|
|
||||||
|
|
||||||
use crate::providers::Provider;
|
use crate::providers::Provider;
|
||||||
use crate::util::time::parse_time_to_seconds;
|
use crate::util::time::parse_time_to_seconds;
|
||||||
|
|||||||
Reference in New Issue
Block a user