Function: url-dav-file-attributes
url-dav-file-attributes is a byte-compiled function defined in
url-dav.el.gz.
Signature
(url-dav-file-attributes URL &optional ID-FORMAT)
Source Code
;; Defined in /usr/src/emacs/lisp/url/url-dav.el.gz
(defun url-dav-file-attributes (url &optional id-format)
(let ((properties (cdar (url-dav-get-properties url))))
(if (and properties
(url-dav-http-success-p (plist-get properties 'DAV:status)))
;; We got a good DAV response back..
(list
;; t for directory, string for symbolic link, or nil
;; Need to support DAV Bindings to figure out the
;; symbolic link issues.
(if (memq 'DAV:collection (plist-get properties 'DAV:resourcetype)) t nil)
;; Number of links to file... Needs DAV Bindings.
1
;; File uid - no way to figure out?
0
;; File gid - no way to figure out?
0
;; Last access time - ???
nil
;; Last modification time
(plist-get properties 'DAV:getlastmodified)
;; Last status change time... just reuse last-modified
;; for now.
(plist-get properties 'DAV:getlastmodified)
;; size in bytes
(or (plist-get properties 'DAV:getcontentlength) 0)
;; file modes as a string like `ls -l'
;;
;; Should be able to build this up from the
;; DAV:supportedlock attribute pretty easily. Getting
;; the group info could be impossible though.
(url-dav-file-attributes-mode-string properties)
;; t if file's gid would change if it were deleted &
;; recreated. No way for us to know that thru DAV.
nil
;; inode number - meaningless
nil
;; device number - meaningless
nil)
;; Fall back to just the normal http way of doing things.
(url-http-head-file-attributes url id-format))))