]> OzVa Git service - ozva-cloud/commitdiff
chore: optimize code
authorsigoden <sigoden@gmail.com>
Thu, 9 Jun 2022 13:35:52 +0000 (21:35 +0800)
committersigoden <sigoden@gmail.com>
Thu, 9 Jun 2022 13:35:52 +0000 (21:35 +0800)
src/server.rs

index 150d4e6bc84227115e92a66c9c76c0464fddfd1c..f8029c5567931af78e4ae570e357f436e1fcfb81 100644 (file)
@@ -816,10 +816,12 @@ struct PathItem {
 impl PathItem {
     pub fn to_dav_xml(&self, prefix: &str) -> String {
         let mtime = Utc.timestamp_millis(self.mtime as i64).to_rfc2822();
+        let href = encode_uri(&format!("{}{}", prefix, &self.name));
+        let displayname = escape_str_pcdata(&self.base_name);
         match self.path_type {
             PathType::Dir | PathType::SymlinkDir => format!(
                 r#"<D:response>
-<D:href>{}{}</D:href>
+<D:href>{}</D:href>
 <D:propstat>
 <D:prop>
 <D:displayname>{}</D:displayname>
@@ -829,14 +831,11 @@ impl PathItem {
 <D:status>HTTP/1.1 200 OK</D:status>
 </D:propstat>
 </D:response>"#,
-                prefix,
-                encode_uri(&self.name),
-                escape_str_pcdata(&self.base_name),
-                mtime
+                href, displayname, mtime
             ),
             PathType::File | PathType::SymlinkFile => format!(
                 r#"<D:response>
-<D:href>{}{}</D:href>
+<D:href>{}</D:href>
 <D:propstat>
 <D:prop>
 <D:displayname>{}</D:displayname>
@@ -847,9 +846,8 @@ impl PathItem {
 <D:status>HTTP/1.1 200 OK</D:status>
 </D:propstat>
 </D:response>"#,
-                prefix,
-                encode_uri(&self.name),
-                escape_str_pcdata(&self.base_name),
+                href,
+                displayname,
                 self.size.unwrap_or_default(),
                 mtime
             ),