2024-03-05 15:07:47 +00:00
|
|
|
use super::types as dav;
|
|
|
|
use super::caltypes as cal;
|
|
|
|
use super::xml;
|
|
|
|
use super::error;
|
|
|
|
|
|
|
|
#[derive(Debug, PartialEq)]
|
|
|
|
pub struct Disabled(());
|
|
|
|
impl xml::QRead<Disabled> for Disabled {
|
2024-03-06 22:24:54 +00:00
|
|
|
async fn qread(xml: &mut xml::Reader<impl xml::IRead>) -> Result<Self, error::ParsingError> {
|
|
|
|
Err(error::ParsingError::Recoverable)
|
2024-03-05 15:07:47 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
impl xml::QWrite for Disabled {
|
|
|
|
async fn qwrite(&self, xml: &mut xml::Writer<impl xml::IWrite>) -> Result<(), quick_xml::Error> {
|
|
|
|
unreachable!();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/// The base WebDAV
|
|
|
|
///
|
|
|
|
/// Any extension is kooh is disabled through an object we can't build
|
|
|
|
/// due to a private inner element.
|
2024-03-05 18:06:04 +00:00
|
|
|
#[derive(Debug, PartialEq)]
|
2024-03-05 15:07:47 +00:00
|
|
|
pub struct Core {}
|
|
|
|
impl dav::Extension for Core {
|
|
|
|
type Error = Disabled;
|
|
|
|
type Property = Disabled;
|
|
|
|
type PropertyRequest = Disabled;
|
|
|
|
type ResourceType = Disabled;
|
|
|
|
}
|
|
|
|
|
|
|
|
// WebDAV with the base Calendar implementation (RFC4791)
|
2024-03-05 18:06:04 +00:00
|
|
|
#[derive(Debug, PartialEq)]
|
2024-03-05 17:15:03 +00:00
|
|
|
pub struct Calendar {}
|
|
|
|
impl dav::Extension for Calendar
|
2024-03-05 15:07:47 +00:00
|
|
|
{
|
|
|
|
type Error = cal::Violation;
|
|
|
|
type Property = cal::Property;
|
|
|
|
type PropertyRequest = cal::PropertyRequest;
|
|
|
|
type ResourceType = cal::ResourceType;
|
|
|
|
}
|
2024-03-05 17:15:03 +00:00
|
|
|
|