aboutsummaryrefslogblamecommitdiff
path: root/src/dav/caltypes.rs
blob: 9e4cb47d9da93e79016b0e0bb2706f61be672d32 (plain) (tree)
1
2
3
4
5
6
7
8
9
10

                    
 


                         

                                 

                                             
                                     


















                                                                         





                        



                       
use super::types::*;


pub struct CalExtension {
    pub root: bool
}
impl Extension for CalExtension {
    type Error = Violation;
    type Property = Property;
    type PropertyRequest = Property; //@FIXME
    type ResourceType = ResourceType;
}

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,
}


pub enum Property {
    CalendarDescription,
    CalendarTimezone,
}

pub enum ResourceType {
    Calendar,
}