shit
This commit is contained in:
parent
7583f7e557
commit
8d3c25b59d
34 changed files with 373 additions and 196 deletions
19
http/src/requests/files.rs
Normal file
19
http/src/requests/files.rs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
use eva::data;
|
||||
|
||||
use crate::requests::status_code;
|
||||
|
||||
use viendesu_core::{errors, requests::files as reqs};
|
||||
|
||||
#[data]
|
||||
pub struct GetInfo {}
|
||||
|
||||
impl_req!(GetInfo => [reqs::get_info::Ok; reqs::get_info::Err]);
|
||||
status_code::direct!(reqs::get_info::Ok => OK);
|
||||
status_code::map!(reqs::get_info::Err => [NotFound]);
|
||||
|
||||
const _: () = {
|
||||
use errors::files::*;
|
||||
use status_code::direct;
|
||||
|
||||
direct!(NotFound => NOT_FOUND);
|
||||
};
|
||||
|
|
@ -32,3 +32,6 @@ pub mod games;
|
|||
pub mod boards;
|
||||
pub mod messages;
|
||||
pub mod threads;
|
||||
|
||||
pub mod files;
|
||||
pub mod uploads;
|
||||
|
|
|
|||
57
http/src/requests/uploads.rs
Normal file
57
http/src/requests/uploads.rs
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
use std::num::NonZeroU64;
|
||||
|
||||
use eva::data;
|
||||
|
||||
use crate::requests::status_code;
|
||||
|
||||
use viendesu_core::{errors, requests::uploads as reqs, types::file};
|
||||
|
||||
#[data]
|
||||
pub struct ListPending {}
|
||||
|
||||
impl_req!(ListPending => [reqs::list_pending::Ok; reqs::list_pending::Err]);
|
||||
status_code::direct!(reqs::list_pending::Ok => OK);
|
||||
status_code::map!(reqs::list_pending::Err => []);
|
||||
|
||||
#[data]
|
||||
pub struct Start {
|
||||
pub file_name: Option<file::BaseName>,
|
||||
pub hash: file::Hash,
|
||||
pub class: file::ClassKind,
|
||||
pub size: NonZeroU64,
|
||||
}
|
||||
|
||||
impl_req!(Start => [reqs::start::Ok; reqs::start::Err]);
|
||||
status_code::direct!(reqs::start::Ok => CREATED);
|
||||
status_code::map!(reqs::start::Err => [QuotaExceeded, SimUpQuotaExceeded]);
|
||||
|
||||
#[data]
|
||||
pub struct Finish {}
|
||||
|
||||
impl_req!(Finish => [reqs::finish::Ok; reqs::finish::Err]);
|
||||
status_code::direct!(reqs::finish::Ok => OK);
|
||||
status_code::map!(reqs::finish::Err => [
|
||||
HashMismatch,
|
||||
NotFound,
|
||||
Overuploading,
|
||||
ConcurrentUploadInProgress,
|
||||
]);
|
||||
|
||||
#[data]
|
||||
pub struct Abort {}
|
||||
|
||||
impl_req!(Abort => [reqs::abort::Ok; reqs::abort::Err]);
|
||||
status_code::direct!(reqs::abort::Ok => OK);
|
||||
status_code::map!(reqs::abort::Err => [NotFound]);
|
||||
|
||||
const _: () = {
|
||||
use errors::uploads::*;
|
||||
use status_code::direct;
|
||||
|
||||
direct!(ConcurrentUploadInProgress => BAD_REQUEST);
|
||||
direct!(NotFound => NOT_FOUND);
|
||||
direct!(QuotaExceeded => TOO_MANY_REQUESTS);
|
||||
direct!(SimUpQuotaExceeded => TOO_MANY_REQUESTS);
|
||||
direct!(Overuploading => BAD_REQUEST);
|
||||
direct!(HashMismatch => BAD_REQUEST);
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue