1
0
Fork 0
mirror of https://forgejo.ellis.link/continuwuation/continuwuity.git synced 2025-08-01 20:58:31 +00:00
continuwuity/src/service/media/data.rs

34 lines
855 B
Rust
Raw Normal View History

2022-09-07 13:25:51 +02:00
use crate::Result;
2022-10-05 15:33:57 +02:00
pub trait Data: Send + Sync {
2022-10-05 20:34:31 +02:00
fn create_file_metadata(
&self,
mxc: String,
width: u32,
height: u32,
content_disposition: Option<&str>,
content_type: Option<&str>,
) -> Result<Vec<u8>>;
2022-09-07 13:25:51 +02:00
fn delete_file_mxc(&self, mxc: String) -> Result<()>;
2022-09-07 13:25:51 +02:00
/// Returns content_disposition, content_type and the metadata key.
2022-10-05 20:34:31 +02:00
fn search_file_metadata(
&self,
mxc: String,
width: u32,
height: u32,
) -> Result<(Option<String>, Option<String>, Vec<u8>)>;
fn remove_url_preview(&self, url: &str) -> Result<()>;
fn set_url_preview(
&self,
url: &str,
data: &super::UrlPreviewData,
timestamp: std::time::Duration,
) -> Result<()>;
fn get_url_preview(&self, url: &str) -> Option<super::UrlPreviewData>;
2022-09-07 13:25:51 +02:00
}