Class: Svnx::Base::Entry

Inherits:
Object
  • Object
show all
Includes:
Logue::Loggable
Defined in:
lib/svnx/base/entry.rb

Instance Method Summary collapse

Constructor Details

#initialize(xmlelement) ⇒ Entry

Returns a new instance of Entry.



16
17
18
# File 'lib/svnx/base/entry.rb', line 16

def initialize xmlelement
  set_from_element xmlelement
end

Instance Method Details

#attribute_value(xmlelement, attrname) ⇒ Object



48
49
50
# File 'lib/svnx/base/entry.rb', line 48

def attribute_value xmlelement, attrname
  xmlelement.attributes[attrname.to_s]
end

#element_text(xmlelement, elmtname) ⇒ Object



52
53
54
55
# File 'lib/svnx/base/entry.rb', line 52

def element_text xmlelement, elmtname
  elmt = xmlelement.elements[elmtname.to_s]
  elmt && elmt.text || ""
end

#set_attr_var(xmlelement, varname, attrname = varname) ⇒ Object



24
25
26
# File 'lib/svnx/base/entry.rb', line 24

def set_attr_var xmlelement, varname, attrname = varname
  set_var varname, xmlelement && attribute_value(xmlelement, attrname)
end

#set_attr_vars(xmlelement, *varnames) ⇒ Object



28
29
30
31
32
# File 'lib/svnx/base/entry.rb', line 28

def set_attr_vars xmlelement, *varnames
  varnames.each do |varname|
    set_attr_var xmlelement, varname
  end
end

#set_elmt_var(xmlelement, varname) ⇒ Object



34
35
36
# File 'lib/svnx/base/entry.rb', line 34

def set_elmt_var xmlelement, varname
  set_var varname, xmlelement && element_text(xmlelement, varname)
end

#set_elmt_vars(xmlelement, *varnames) ⇒ Object



38
39
40
41
42
# File 'lib/svnx/base/entry.rb', line 38

def set_elmt_vars xmlelement, *varnames
  varnames.each do |varname|
    set_elmt_var xmlelement, varname
  end
end

#set_from_element(elmt) ⇒ Object



20
21
22
# File 'lib/svnx/base/entry.rb', line 20

def set_from_element elmt
  raise "must be implemented"
end

#set_var(varname, value) ⇒ Object



44
45
46
# File 'lib/svnx/base/entry.rb', line 44

def set_var varname, value
  instance_variable_set '@' + varname.to_s, value
end