Module: Gyoku::XMLValue

Defined in:
lib/gyoku/xml_value.rb

Constant Summary collapse

XS_DATETIME_FORMAT =

xs:dateTime format.

"%Y-%m-%dT%H:%M:%S%Z"

Class Method Summary collapse

Class Method Details

.create(object, escape_xml = true) ⇒ Object

Converts a given object to an XML value.



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/gyoku/xml_value.rb', line 12

def create(object, escape_xml = true)
  if DateTime === object
    object.strftime XS_DATETIME_FORMAT
  elsif String === object
    escape_xml ? CGI.escapeHTML(object) : object
  elsif object.respond_to?(:to_datetime)
    create object.to_datetime
  elsif object.respond_to?(:call)
    create object.call
  else
    object.to_s
  end
end