Module: Hatemile::Util::Html::NokogiriLib::NokogiriHTMLDOMNode

Included in:
NokogiriHTMLDOMElement, NokogiriHTMLDOMTextNode
Defined in:
lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb

Overview

The NokogiriHTMLDOMNode module is official implementation of HTMLDOMNode methods.

Instance Method Summary collapse

Instance Method Details

#get_dataObject



99
100
101
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 99

def get_data
  @node
end

#get_parent_elementObject



89
90
91
92
93
94
95
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 89

def get_parent_element
  parent = @node.parent
  if !parent.nil? && parent.element?
    return NokogiriHTMLDOMElement.new(parent)
  end
  nil
end

#get_text_contentObject



55
56
57
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 55

def get_text_content
  @node.text
end

#init(node, hatemile_node) ⇒ Object

Initializes a new object that encapsulate the Nokogiri node.

Parameters:



41
42
43
44
45
46
47
48
49
50
51
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 41

def init(node, hatemile_node)
  Hatemile::Helper.require_not_nil(node, hatemile_node)
  Hatemile::Helper.require_valid_type(node, Nokogiri::XML::Node)
  Hatemile::Helper.require_valid_type(
    hatemile_node,
    Hatemile::Util::Html::HTMLDOMNode
  )

  @node = node
  @hatemile_node = hatemile_node
end

#insert_after(new_node) ⇒ Object



68
69
70
71
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 68

def insert_after(new_node)
  @node.after(new_node.get_data)
  @hatemile_node
end

#insert_before(new_node) ⇒ Object



61
62
63
64
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 61

def insert_before(new_node)
  @node.before(new_node.get_data)
  @hatemile_node
end

#remove_nodeObject



75
76
77
78
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 75

def remove_node
  @node.remove
  @hatemile_node
end

#replace_node(new_node) ⇒ Object



82
83
84
85
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 82

def replace_node(new_node)
  @node.replace(new_node.get_data)
  @hatemile_node
end

#set_node(node) ⇒ Object



105
106
107
# File 'lib/hatemile/util/html/nokogiri/nokogiri_html_dom_node.rb', line 105

def set_node(node)
  @node = node
end