mwk-ruby-utils 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1,2 @@
1
- 0.3.0
1
+ 0.3.1
2
+
@@ -27,6 +27,9 @@ module Mwkrom
27
27
 
28
28
  def internal_articles_for(tags)
29
29
  d = latest_feed_dom
30
+ if d.blank? # bad connection; empty data; etc.
31
+ return []
32
+ end
30
33
  items = (d/:item).select do |item|
31
34
  tags.empty? || ((item/:category).any? {|x| puts x.inner_text; tags.include?(x.inner_text)})
32
35
  end
@@ -36,19 +39,23 @@ module Mwkrom
36
39
  :pubDate => (item.at('pubDate') && item.at('pubDate').inner_html),
37
40
  :creator => (item.at('dc:creator') && item.at('dc:creator').inner_html),
38
41
  :description => item.at('description').inner_text}
39
- end
40
42
  end
43
+ end
41
44
 
42
45
  def latest_feed_xml
43
46
  cache_key = "blog_reader_all:#{key}"
44
47
  Rails.cache.fetch(cache_key, :expires_in => use_expires_in) do
45
- res = Net::HTTP.get_response(URI.parse(feed_url))
46
- res && res.body
48
+ begin
49
+ res = Net::HTTP.get_response(URI.parse(feed_url))
50
+ res && res.body
51
+ rescue Errno::ECONNREFUSED => e
52
+ ""
53
+ end
47
54
  end
48
55
  end
49
56
 
50
57
  def latest_feed_dom
51
- Hpricot::XML(latest_feed_xml)
58
+ latest_feed_xml.present? && Hpricot::XML(latest_feed_xml)
52
59
  end
53
60
 
54
61
  end
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{mwk-ruby-utils}
8
- s.version = "0.3.0"
8
+ s.version = "0.3.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = [%q{Matthew Krom}]
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mwk-ruby-utils
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- - 0
10
- version: 0.3.0
9
+ - 1
10
+ version: 0.3.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Matthew Krom