clippy
This commit is contained in:
parent
768f944b36
commit
0f27cfb788
3 changed files with 20 additions and 29 deletions
|
@ -18,7 +18,7 @@ const LARGE_FILE_SIZE_THRESHOLD: u64 = 100_000_000;
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
const LARGE_FILE_SIZE_THRESHOLD: u64 = 1_000_000;
|
const LARGE_FILE_SIZE_THRESHOLD: u64 = 1_000_000;
|
||||||
|
|
||||||
#[derive(Deserialize, Debug, PartialEq)]
|
#[derive(Deserialize, Debug, PartialEq, Eq)]
|
||||||
pub struct Config {
|
pub struct Config {
|
||||||
pub bind_address: String,
|
pub bind_address: String,
|
||||||
pub public_address: String,
|
pub public_address: String,
|
||||||
|
@ -26,7 +26,7 @@ pub struct Config {
|
||||||
pub groups: Vec<RouteGroup>,
|
pub groups: Vec<RouteGroup>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Deserialize, Serialize, Debug, PartialEq, Clone)]
|
#[derive(Deserialize, Serialize, Debug, Eq, PartialEq, Clone)]
|
||||||
pub struct RouteGroup {
|
pub struct RouteGroup {
|
||||||
pub name: String,
|
pub name: String,
|
||||||
pub description: Option<String>,
|
pub description: Option<String>,
|
||||||
|
@ -35,7 +35,7 @@ pub struct RouteGroup {
|
||||||
pub routes: HashMap<String, Route>,
|
pub routes: HashMap<String, Route>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, PartialEq, Clone, Serialize)]
|
#[derive(Debug, PartialEq, Eq, Clone, Serialize)]
|
||||||
pub struct Route {
|
pub struct Route {
|
||||||
pub route_type: RouteType,
|
pub route_type: RouteType,
|
||||||
pub path: String,
|
pub path: String,
|
||||||
|
@ -211,7 +211,7 @@ fn get_route_type(path: &str) -> RouteType {
|
||||||
|
|
||||||
/// There exists two route types: an external path (e.g. a URL) or an internal
|
/// There exists two route types: an external path (e.g. a URL) or an internal
|
||||||
/// path (to a file).
|
/// path (to a file).
|
||||||
#[derive(Debug, PartialEq, Clone, Serialize)]
|
#[derive(Debug, PartialEq, Eq, Clone, Serialize)]
|
||||||
pub enum RouteType {
|
pub enum RouteType {
|
||||||
External,
|
External,
|
||||||
Internal,
|
Internal,
|
||||||
|
@ -288,7 +288,7 @@ pub fn get_config_data() -> Result<FileData, BunBunError> {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
debug!("Tried to open a new file at '{location:?}' but failed due to error: {e}",)
|
debug!("Tried to open a new file at '{location:?}' but failed due to error: {e}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
14
src/main.rs
14
src/main.rs
|
@ -57,10 +57,7 @@ async fn main() -> Result<()> {
|
||||||
.with(env_filter)
|
.with(env_filter)
|
||||||
.init();
|
.init();
|
||||||
|
|
||||||
let conf_data = match opts.config {
|
let conf_data = opts.config.map_or_else(get_config_data, load_custom_file)?;
|
||||||
Some(file_name) => load_custom_file(file_name),
|
|
||||||
None => get_config_data(),
|
|
||||||
}?;
|
|
||||||
|
|
||||||
let conf = load_file(conf_data.file.try_clone()?, opts.large_config)?;
|
let conf = load_file(conf_data.file.try_clone()?, opts.large_config)?;
|
||||||
let state = Arc::from(ArcSwap::from_pointee(State {
|
let state = Arc::from(ArcSwap::from_pointee(State {
|
||||||
|
@ -100,11 +97,10 @@ fn cache_routes(groups: Vec<RouteGroup>) -> HashMap<String, Route> {
|
||||||
for group in groups {
|
for group in groups {
|
||||||
for (kw, dest) in group.routes {
|
for (kw, dest) in group.routes {
|
||||||
// This function isn't called often enough to not be a performance issue.
|
// This function isn't called often enough to not be a performance issue.
|
||||||
match mapping.insert(kw.clone(), dest.clone()) {
|
if let Some(old_value) = mapping.insert(kw.clone(), dest.clone()) {
|
||||||
None => trace!("Inserting {kw} into mapping."),
|
trace!("Overriding {kw} route from {old_value} to {dest}.");
|
||||||
Some(old_value) => {
|
} else {
|
||||||
trace!("Overriding {kw} route from {old_value} to {dest}.");
|
trace!("Inserting {kw} into mapping.");
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -153,14 +153,11 @@ fn resolve_hop<'a>(
|
||||||
default_route: Option<&str>,
|
default_route: Option<&str>,
|
||||||
) -> RouteResolution<'a> {
|
) -> RouteResolution<'a> {
|
||||||
let mut split_args = query.split_ascii_whitespace().peekable();
|
let mut split_args = query.split_ascii_whitespace().peekable();
|
||||||
let maybe_route = {
|
let maybe_route = if let Some(command) = split_args.peek() {
|
||||||
match split_args.peek() {
|
routes.get(*command)
|
||||||
Some(command) => routes.get(*command),
|
} else {
|
||||||
None => {
|
debug!("Found empty query, returning no route.");
|
||||||
debug!("Found empty query, returning no route.");
|
return RouteResolution::Unresolved;
|
||||||
return RouteResolution::Unresolved;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
let args = split_args.collect::<Vec<_>>();
|
let args = split_args.collect::<Vec<_>>();
|
||||||
|
@ -177,13 +174,11 @@ fn resolve_hop<'a>(
|
||||||
}
|
}
|
||||||
|
|
||||||
// Try resolving with the default route, if it exists
|
// Try resolving with the default route, if it exists
|
||||||
if let Some(route) = default_route {
|
if let Some(route) = default_route.and_then(|route| routes.get(route)) {
|
||||||
if let Some(route) = routes.get(route) {
|
if check_route(route, arg_count) {
|
||||||
if check_route(route, arg_count) {
|
let args = args.join(" ");
|
||||||
let args = args.join(" ");
|
debug!("Using default route {route} with args {args}");
|
||||||
debug!("Using default route {route} with args {args}");
|
return RouteResolution::Resolved { route, args };
|
||||||
return RouteResolution::Resolved { route, args };
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue