class Yandex::Disk::Client::Request::List::ListParser

Attributes

list[R]

Public Class Methods

new() click to toggle source
# File lib/yandex/disk/client/request/list.rb, line 25
def initialize
  @list = []
end

Public Instance Methods

characters(string) click to toggle source
# File lib/yandex/disk/client/request/list.rb, line 72
def characters string
  @current[:href] = string if @is_href
  @current[:displayname] = string if @is_displayname
  @current[:getcontentlength] = string.to_i if @is_getcontentlength
  @current[:creationdate] = DateTime.parse(string) if @is_creationdate
  @current[:getlastmodified] = DateTime.parse(string) if @is_getlastmodified
end
end_element(name, attributes = []) click to toggle source
# File lib/yandex/disk/client/request/list.rb, line 52
def end_element name, attributes = []
  case name
    when 'd:href'
      @list << @current if @current
      @is_href = false

    when 'd:displayname'
      @is_displayname = false

    when 'd:getcontentlength'
      @is_getcontentlength = false

    when 'd:creationdate'
      @is_creationdate = false

    when 'd:getlastmodified'
      @is_getlastmodified = false
  end
end
start_element(name, attributes = []) click to toggle source
# File lib/yandex/disk/client/request/list.rb, line 29
def start_element name, attributes = []
  case name
    when 'd:href'
      @current = {}
      @is_href = true

    when 'd:displayname'
      @is_displayname = true

    when 'd:getcontentlength'
      @is_getcontentlength = true

    when 'd:creationdate'
      @is_creationdate = true

    when 'd:getlastmodified'
      @is_getlastmodified = true

    when 'd:collection'
      @current[:resourcetype] = :collection
  end
end