Class: Calligraphy::Propfind

Inherits:
WebDavRequest show all
Includes:
XML::Utils
Defined in:
lib/calligraphy/web_dav_request/propfind.rb

Overview

Responsible for retrieving properties defined on the resource.

Instance Attribute Summary

Attributes inherited from WebDavRequest

#headers, #request, #resource, #response

Instance Method Summary collapse

Methods included from XML::Utils

#xml_for

Methods inherited from WebDavRequest

#initialize

Constructor Details

This class inherits a constructor from Calligraphy::WebDavRequest

Instance Method Details

#executeObject

Executes the WebDAV request for a particular resource.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/calligraphy/web_dav_request/propfind.rb', line 9

def execute
  xml = xml_for body: body, node: 'propfind'
  return :bad_request if xml == :bad_request

  properties = @resource.propfind xml

  builder = xml_builder
  xml_res = builder.propfind_response(@resource.full_request_path,
                                      properties)

  set_xml_content_type

  [:multi_status, xml_res]
end