Class: MathMetadata::Result

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/math_metadata_lookup/result.rb

Constant Summary collapse

FORMATS =
[:ruby, :yaml, :xml, :html, :text]

Instance Method Summary collapse

Constructor Details

#initialize(meta = []) ⇒ Result

Returns a new instance of Result.



11
12
13
# File 'lib/math_metadata_lookup/result.rb', line 11

def initialize( meta=[] )
  @metadata = meta
end

Instance Method Details

#<<(val) ⇒ Object



16
17
18
# File 'lib/math_metadata_lookup/result.rb', line 16

def <<(val)
  @metadata << val
end

#eachObject



21
22
23
24
25
# File 'lib/math_metadata_lookup/result.rb', line 21

def each
  @metadata.each do |site|
    yield site
  end
end

#format(f = :ruby) ⇒ Object



28
29
30
# File 'lib/math_metadata_lookup/result.rb', line 28

def format( f=:ruby )
  self.send "to_#{f}"
end

#to_arrayObject



74
75
76
# File 'lib/math_metadata_lookup/result.rb', line 74

def to_array
  @metadata
end

#to_htmlObject



33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/math_metadata_lookup/result.rb', line 33

def to_html
  result = ""
  @metadata.each do |site|
    result << %~
<div class="site">
<h3>Site: #{site[:name]}</h3>~
    site[:result].each do |entity|
      result << entity.to_html
    end
    result << %~</div>~
  end
  result
end

#to_textObject Also known as: to_str



79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/math_metadata_lookup/result.rb', line 79

def to_text
  result = ""
  @metadata.each do |site|
    next unless site[:result]
    result << "Site: #{site[:name]}\n"
    result << "URL: #{site[:url]}\n"
    result << "\n"
    site[:result].each do |entity|
      result << entity.to_text
    end
    result << "\n"
  end
  result
end

#to_xmlObject



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# File 'lib/math_metadata_lookup/result.rb', line 48

def to_xml
  result = ""

  result << %~<?xml version="1.0" encoding="utf-8"?>
<mml>~
  @metadata.each do |site|
    result << %~
<site name="#{site[:name]}">~
    site[:result].each do |entity|
      result << entity.to_xml
    end
    result << %~
</site>
~
  end
  result << %~</mml>~

  result
end

#to_yamlObject



69
70
71
# File 'lib/math_metadata_lookup/result.rb', line 69

def to_yaml
  @metadata.to_yaml
end