From 8691c98f44762d518ad0d34ba714180c79a9e506 Mon Sep 17 00:00:00 2001 From: Quentin Dufour Date: Fri, 1 Mar 2024 08:43:37 +0100 Subject: WIP property --- src/dav/caltypes.rs | 1 + src/dav/encoder.rs | 11 +++++++++-- src/dav/types.rs | 9 +++++++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/dav/caltypes.rs b/src/dav/caltypes.rs index c672370..a68936c 100644 --- a/src/dav/caltypes.rs +++ b/src/dav/caltypes.rs @@ -8,6 +8,7 @@ impl Extension for CalExtension { type Error = Violation; type Property = Property; type PropertyRequest = Property; //@FIXME + type ResourceType = Property; //@FIXME } pub enum Violation { diff --git a/src/dav/encoder.rs b/src/dav/encoder.rs index 399a92e..5392b18 100644 --- a/src/dav/encoder.rs +++ b/src/dav/encoder.rs @@ -198,8 +198,15 @@ impl QuickWritable for Property { match self { CreationDate(date) => unimplemented!(), DisplayName(name) => unimplemented!(), - //@FIXME not finished - _ => unimplemented!(), + GetContentLanguage(lang) => unimplemented!(), + GetContentLength(len) => unimplemented!(), + GetContentType(ct) => unimplemented!(), + GetEtag(et) => unimplemented!(), + GetLastModified(dt) => unimplemented!(), + LockDiscovery(locks) => unimplemented!(), + ResourceType(res) => unimplemented!(), + SupportedLock(sup) => unimplemented!(), + Extension(inner) => unimplemented!(), }; Ok(()) } diff --git a/src/dav/types.rs b/src/dav/types.rs index 8807658..59cfcd6 100644 --- a/src/dav/types.rs +++ b/src/dav/types.rs @@ -8,6 +8,7 @@ pub trait Extension { type Error; type Property; type PropertyRequest; + type ResourceType; } /// No extension @@ -18,6 +19,7 @@ impl Extension for NoExtension { type Error = Disabled; type Property = Disabled; type PropertyRequest = Disabled; + type ResourceType = Disabled; } /// 14.1. activelock XML Element @@ -849,7 +851,7 @@ pub enum Property { /// /// /// - ResourceType(Collection), + ResourceType(Vec>), /// 15.10. supportedlock Property /// @@ -880,4 +882,7 @@ pub enum Property { Extension(T::Property), } - +pub enum ResourceType { + Collection, + Extension(T::ResourceType), +} -- cgit v1.2.3