2024-02-29 19:40:40 +00:00
|
|
|
use super::types::*;
|
|
|
|
|
|
|
|
|
2024-03-01 07:32:02 +00:00
|
|
|
pub struct CalExtension {
|
|
|
|
pub root: bool
|
|
|
|
}
|
2024-02-29 19:40:40 +00:00
|
|
|
impl Extension for CalExtension {
|
|
|
|
type Error = Violation;
|
2024-02-29 22:02:02 +00:00
|
|
|
type Property = Property;
|
|
|
|
type PropertyRequest = Property; //@FIXME
|
2024-03-01 09:29:16 +00:00
|
|
|
type ResourceType = ResourceType;
|
2024-02-29 19:40:40 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
pub enum Violation {
|
|
|
|
/// (CALDAV:supported-filter): The CALDAV:comp-filter (see
|
|
|
|
/// Section 9.7.1), CALDAV:prop-filter (see Section 9.7.2), and
|
|
|
|
/// CALDAV:param-filter (see Section 9.7.3) XML elements used in the
|
|
|
|
/// CALDAV:filter XML element (see Section 9.7) in the REPORT request
|
|
|
|
/// only make reference to components, properties, and parameters for
|
|
|
|
/// which queries are supported by the server, i.e., if the CALDAV:
|
|
|
|
/// filter element attempts to reference an unsupported component,
|
|
|
|
/// property, or parameter, this precondition is violated. Servers
|
|
|
|
/// SHOULD report the CALDAV:comp-filter, CALDAV:prop-filter, or
|
|
|
|
/// CALDAV:param-filter for which it does not provide support.
|
|
|
|
///
|
|
|
|
/// <!ELEMENT supported-filter (comp-filter*,
|
|
|
|
/// prop-filter*,
|
|
|
|
/// param-filter*)>
|
|
|
|
SupportedFilter,
|
|
|
|
}
|
2024-02-29 22:02:02 +00:00
|
|
|
|
2024-03-01 13:28:36 +00:00
|
|
|
pub enum PropertyRequest {
|
|
|
|
CalendarDescription,
|
|
|
|
CalendarTimezone,
|
|
|
|
}
|
2024-02-29 22:02:02 +00:00
|
|
|
|
|
|
|
pub enum Property {
|
|
|
|
CalendarDescription,
|
|
|
|
CalendarTimezone,
|
|
|
|
}
|
2024-03-01 09:29:16 +00:00
|
|
|
|
|
|
|
pub enum ResourceType {
|
|
|
|
Calendar,
|
|
|
|
}
|