claudiob-yesradio 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -50,6 +50,9 @@ http://rdoc.info/projects/claudiob/yesradio
50
50
 
51
51
  ## History ##
52
52
 
53
+ v0.1.2 2009/09/17
54
+ Changed REXML with Nokogiri for XML parsing
55
+
53
56
  v0.1.1 2009/09/15
54
57
  Fixed bug that made gem unusable (required inexistent file)
55
58
 
data/Rakefile CHANGED
@@ -12,6 +12,7 @@ begin
12
12
  gem.authors = ["Claudio Baccigalupo"]
13
13
  gem.rubyforge_project = "yesradio"
14
14
  gem.add_development_dependency "cucumber"
15
+ gem.add_dependency "nokogiri", ">=1.3.2"
15
16
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
16
17
  end
17
18
  Jeweler::RubyforgeTasks.new do |rubyforge|
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
data/lib/item.rb CHANGED
@@ -19,8 +19,8 @@ module Yesradio
19
19
  private
20
20
 
21
21
  def get_element_child(element, child, type = :text)
22
- return if element.nil? || element.elements[child].nil?
23
- child = element.elements[child][0].to_s
22
+ return if element.nil? || element.xpath(child).empty?
23
+ child = element.xpath(child).text.to_s
24
24
  return case type
25
25
  when :int then child.to_i
26
26
  when :float then child.to_f
data/lib/yesradio.rb CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  require 'cgi'
5
5
  require 'net/http'
6
- require 'rexml/document'
6
+ require 'nokogiri'
7
7
 
8
8
  require 'station'
9
9
  require 'song'
@@ -130,10 +130,10 @@ module Yesradio
130
130
  res = Net::HTTP.start(uri.host, uri.port) { |http|
131
131
  http.request(req)
132
132
  }
133
- doc = REXML::Document.new res.body
134
- return if doc.elements[xml_element].nil?
135
- doc.elements.collect(xml_element) do |element|
136
- eval "#{item_class}.new(element)"
133
+ doc = Nokogiri::XML res.body
134
+ return if doc.xpath(xml_element).empty?
135
+ doc.xpath(xml_element).collect do |element|
136
+ eval "Yesradio::#{item_class}.new(element)"
137
137
  end
138
138
  end
139
139
 
data/yesradio.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{yesradio}
8
- s.version = "0.1.1"
8
+ s.version = "0.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Claudio Baccigalupo"]
12
- s.date = %q{2009-09-15}
12
+ s.date = %q{2009-09-18}
13
13
  s.description = %q{YesRadio makes available as a ruby gem the method exposed by Yes.com API to retrieve songs broadcast by thousands of radios.}
14
14
  s.email = %q{claudiob@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -52,10 +52,13 @@ Gem::Specification.new do |s|
52
52
 
53
53
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
54
54
  s.add_development_dependency(%q<cucumber>, [">= 0"])
55
+ s.add_runtime_dependency(%q<nokogiri>, [">= 1.3.2"])
55
56
  else
56
57
  s.add_dependency(%q<cucumber>, [">= 0"])
58
+ s.add_dependency(%q<nokogiri>, [">= 1.3.2"])
57
59
  end
58
60
  else
59
61
  s.add_dependency(%q<cucumber>, [">= 0"])
62
+ s.add_dependency(%q<nokogiri>, [">= 1.3.2"])
60
63
  end
61
64
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: claudiob-yesradio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Claudio Baccigalupo
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-09-15 00:00:00 -07:00
12
+ date: 2009-09-18 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -22,6 +22,16 @@ dependencies:
22
22
  - !ruby/object:Gem::Version
23
23
  version: "0"
24
24
  version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: nokogiri
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.3.2
34
+ version:
25
35
  description: YesRadio makes available as a ruby gem the method exposed by Yes.com API to retrieve songs broadcast by thousands of radios.
26
36
  email: claudiob@gmail.com
27
37
  executables: []