use std::sync::Arc;
use anyhow::Result;
use oay::services::WebdavService;
use oay::Config;
use opendal::services::Fs;
use opendal::Operator;
#[tokio::main]
async fn main() -> Result<()> {
logforth::stderr().apply();
let cfg: Config = Config {
backend: oay::BackendConfig {
typ: "fs".to_string(),
..Default::default()
},
frontends: oay::FrontendsConfig {
webdav: oay::WebdavConfig {
enable: true,
addr: "127.0.0.1:3000".to_string(),
},
..Default::default()
},
};
let builder = Fs::default().root("/tmp");
let op = Operator::new(builder)?.finish();
let webdav = WebdavService::new(Arc::new(cfg), op);
webdav.serve().await?;
Ok(())
}