Class: Zimbra::A
- Inherits:
-
Object
- Object
- Zimbra::A
- Defined in:
- lib/zimbra/common_elements.rb
Instance Attribute Summary collapse
-
#extra_attributes ⇒ Object
Returns the value of attribute extra_attributes.
-
#name ⇒ Object
Returns the value of attribute name.
-
#value ⇒ Object
Returns the value of attribute value.
Class Method Summary collapse
- .from_node(node, name) ⇒ Object
- .inject(xmldoc, name, value, extra_attributes = {}) ⇒ Object
- .read(xmldoc, name) ⇒ Object
Instance Method Summary collapse
-
#initialize(name, value, extra_attributes = {}) ⇒ A
constructor
A new instance of A.
- #inject(xmldoc) ⇒ Object
Constructor Details
#initialize(name, value, extra_attributes = {}) ⇒ A
Returns a new instance of A.
25 26 27 28 29 |
# File 'lib/zimbra/common_elements.rb', line 25 def initialize(name, value, extra_attributes = {}) self.name = name self.value = value self.extra_attributes = extra_attributes || {} end |
Instance Attribute Details
#extra_attributes ⇒ Object
Returns the value of attribute extra_attributes.
23 24 25 |
# File 'lib/zimbra/common_elements.rb', line 23 def extra_attributes @extra_attributes end |
#name ⇒ Object
Returns the value of attribute name.
23 24 25 |
# File 'lib/zimbra/common_elements.rb', line 23 def name @name end |
#value ⇒ Object
Returns the value of attribute value.
23 24 25 |
# File 'lib/zimbra/common_elements.rb', line 23 def value @value end |
Class Method Details
.from_node(node, name) ⇒ Object
18 19 20 |
# File 'lib/zimbra/common_elements.rb', line 18 def from_node(node, name) new(name, node.to_s) end |
.inject(xmldoc, name, value, extra_attributes = {}) ⇒ Object
4 5 6 |
# File 'lib/zimbra/common_elements.rb', line 4 def inject(xmldoc, name, value, extra_attributes = {}) new(name, value, extra_attributes).inject(xmldoc) end |
.read(xmldoc, name) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/zimbra/common_elements.rb', line 8 def read(xmldoc, name) nodes = (xmldoc/"//n2:a[@n='#{name}']") return nil if nodes.nil? if nodes.size > 1 nodes.map { |n| from_node(n, name).value } else from_node(nodes, name).value end end |
Instance Method Details
#inject(xmldoc) ⇒ Object
31 32 33 34 35 36 37 38 |
# File 'lib/zimbra/common_elements.rb', line 31 def inject(xmldoc) xmldoc.add 'a', value do |a| a.set_attr 'n', name extra_attributes.each do |eaname, eavalue| a.set_attr eaname, eavalue end end end |