aboutsummaryrefslogtreecommitdiff
path: root/src/error.rs
AgeCommit message (Collapse)Author
2021-07-04refactor: move Error rendering to error moduleMartin Fischer
2021-07-03refactor: introduce build_raw_response helperMartin Fischer
2021-06-24refactor: simplify Controller request interceptionMartin Fischer
In multi-user mode if Alice attempts to access /~bob/ she would get an Unauthorized error since branches are private. To improve the UX we instead already showed Alice a list of which files Bob has shared with her. Previously this was achieved with an before_return_error hook in the Controller trait. While this worked fine, it wasn't elegant, since it required passing the Context struct in all Unauthorized errors, so that the before_return_error hook could access the context. This commit refactors the code to intercept requests to paths like /~bob/ before the regular request handling instead of afterwards. While this could have been implemented in the before_route hook, this would have required either invoking parse_url_path a second time or passing the Result of parse_url_path, both of which would be akward. Therefore this commit also merges before_route into parse_url_path.
2021-06-24refactor: move Error enum and impls to own moduleMartin Fischer