hyperfeed 0.0.2 → 0.0.3
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/lib/hyperfeed/resource_builder.rb +15 -17
- data/lib/hyperfeed/version.rb +1 -1
- metadata +12 -12
@@ -6,17 +6,7 @@ module Hyperfeed
|
|
6
6
|
def get_resource(feed, id)
|
7
7
|
item = feed.content.xpath("//item").find { |i| generate_id(i) == id }
|
8
8
|
|
9
|
-
|
10
|
-
item.children.reject{ |x| x.name == "text" }.each do |node|
|
11
|
-
if node.name == "enclosure"
|
12
|
-
resource[:enclosure] ||= []
|
13
|
-
resource[:enclosure] << get_media(node)
|
14
|
-
else
|
15
|
-
resource[node.name.downcase.to_sym] = node.inner_text.strip
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
resource.extend(Methodize)
|
9
|
+
collect_fields(item).extend(Methodize)
|
20
10
|
end
|
21
11
|
|
22
12
|
def get_media(item)
|
@@ -54,16 +44,24 @@ module Hyperfeed
|
|
54
44
|
Digest::MD5.hexdigest(link)
|
55
45
|
end
|
56
46
|
|
47
|
+
def collect_fields(item)
|
48
|
+
resource = {:id => generate_id(item)}
|
49
|
+
item.children.reject{ |x| x.name == "text" }.each do |node|
|
50
|
+
if node.name == "enclosure"
|
51
|
+
resource[:enclosure] ||= []
|
52
|
+
resource[:enclosure] << get_media(node)
|
53
|
+
else
|
54
|
+
resource[node.name.downcase.to_sym] = node.inner_text.strip
|
55
|
+
end
|
56
|
+
end
|
57
|
+
resource
|
58
|
+
end
|
59
|
+
|
57
60
|
def build_results(feed)
|
58
61
|
results = []
|
59
62
|
feed.content.xpath("//item").each do |item|
|
60
63
|
id = generate_id(item)
|
61
|
-
results <<
|
62
|
-
:id => id,
|
63
|
-
:pubdate => (item.xpath("pubDate").inner_text rescue ""),
|
64
|
-
:title => (item.xpath("title").inner_text.strip rescue ""),
|
65
|
-
:source => (item.xpath("source").inner_text rescue "")
|
66
|
-
}
|
64
|
+
results << collect_fields(item)
|
67
65
|
end
|
68
66
|
results
|
69
67
|
end
|
data/lib/hyperfeed/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hyperfeed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-05-
|
12
|
+
date: 2013-05-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: http_monkey
|
16
|
-
requirement: &
|
16
|
+
requirement: &70254332367760 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70254332367760
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: nokogiri
|
27
|
-
requirement: &
|
27
|
+
requirement: &70254332367260 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '1.5'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70254332367260
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: methodize
|
38
|
-
requirement: &
|
38
|
+
requirement: &70254332366880 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70254332366880
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rspec
|
49
|
-
requirement: &
|
49
|
+
requirement: &70254332366420 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70254332366420
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: fakeweb
|
60
|
-
requirement: &
|
60
|
+
requirement: &70254332365920 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70254332365920
|
69
69
|
description: An adapter to plug feeds content on hypermedia engines
|
70
70
|
email:
|
71
71
|
- guilherme.kato@abril.com.br
|