app_store 0.0.3 → 0.0.4

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.rdoc CHANGED
@@ -13,13 +13,18 @@ It provides way to search for applications, navigate through categories.
13
13
  @applications.first.title # => "PlugPlayer"
14
14
  @applications.first.price # => 4.99
15
15
 
16
- * Find an application by its id
16
+ * Find an application by id
17
17
  @fontpicker = AppStore::Application.find_by_id(327076783)
18
18
  @fontpicker.class # => AppStore::Application
19
19
  @fontpicker.title # => "FontPicker"
20
20
  @fontpicker.price # => 0.0
21
21
  @fontpicker.company.title # => "Etienne Segonzac"
22
22
 
23
+ * Medias
24
+ @fontpicker.screenshots # => [#<AppStore::Image:0x1017683e0 @width=320, @ra ...
25
+ @fontpicker.screenshots.first.url # => "http://a1.phobos.apple.com/us/r1000/017/Purple/c4/99/6d/mzl.jtoxfers.480x480-75.jpg"
26
+ @fontpicker.icon.url # => "http://a1.phobos.apple.com/us/r1000/026/Purple/39/40/54/mzl.yrrhymuu.100x100-75.jpg"
27
+
23
28
  * User reviews
24
29
  @remote = AppStore::Application.find_by_id(284417350)
25
30
  @remote.title # => "Remote"
@@ -59,10 +64,12 @@ It provides way to search for applications, navigate through categories.
59
64
  == INSTALL
60
65
  gem install app_store
61
66
 
67
+ == DOCUMENTATION
68
+
69
+ * http://rdoc.info/projects/jakimowicz/app_store/
70
+
71
+
62
72
  == TODO
63
- * handle medias (screenshots, icons, ...)
64
- * optimize navigation through lists
65
- * handle 'links' to avoid calling AppStore API for each items in a list
66
73
  * use FakeMechanize to unit test each calls
67
74
  * handle multiple store/language
68
75
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.3
1
+ 0.0.4
@@ -6,7 +6,7 @@ require "app_store/list"
6
6
  require "app_store/link"
7
7
 
8
8
  # Represents an application in the AppStore.
9
- # Available attributes:
9
+ # = Available attributes:
10
10
  # * <tt>average_user_rating</tt>: average rating from all user_reviews.
11
11
  # * <tt>user_rating_count</tt>: user_reviews count.
12
12
  # * <tt>release_date</tt>: release date on the AppStore for the application.
@@ -19,6 +19,36 @@ require "app_store/link"
19
19
  # * <tt>price</tt>: price of the application on the Apple AppStore.
20
20
  # * <tt>icon</tt>: Image object of the application icon.
21
21
  # * <tt>size</tt>: size of the application in byte.
22
+ # = Examples
23
+ # === Simple search
24
+ # @applications = AppStore::Application.search('upnp')
25
+ # @applications.class # => Array
26
+ # @applications.length # => 8
27
+ # @applications.first.title # => "PlugPlayer"
28
+ # @applications.first.price # => 4.99
29
+ #
30
+ # === Find an application by id
31
+ # @fontpicker = AppStore::Application.find_by_id(327076783)
32
+ # @fontpicker.class # => AppStore::Application
33
+ # @fontpicker.title # => "FontPicker"
34
+ # @fontpicker.price # => 0.0
35
+ # @fontpicker.company.title # => "Etienne Segonzac"
36
+ #
37
+ # === Medias
38
+ # @fontpicker.screenshots # => [#<AppStore::Image:0x1017683e0 @width=320, @ra ...
39
+ # @fontpicker.screenshots.first.url # => "http://a1.phobos.apple.com/us/r1000/017/Purple/c4/99/6d/mzl.jtoxfers.480x480-75.jpg"
40
+ # @fontpicker.icon.url # => "http://a1.phobos.apple.com/us/r1000/026/Purple/39/40/54/mzl.yrrhymuu.100x100-75.jpg"
41
+ #
42
+ # === User reviews
43
+ # @remote = AppStore::Application.find_by_id(284417350)
44
+ # @remote.title # => "Remote"
45
+ # @remote.user_reviews.length # => 10
46
+ #
47
+ # @review = @remote.user_reviews.first
48
+ #
49
+ # @review.user_name # => "Ebolavoodoo on Aug 27, 2009"
50
+ # @review.average_user_rating # => 1.0
51
+ # @review.text # => "Simply amazing. My new favorite app. Instantly responds. Easy to navigate and control. For those who say it doesn't work. Stinks to be you."
22
52
  class AppStore::Application < AppStore::Base
23
53
  ApplicationURL = "http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware"
24
54
 
@@ -42,7 +42,7 @@ module AppStore::Caller
42
42
  end
43
43
 
44
44
  def itunes_agent
45
- @itunes_agent ||= WWW::Mechanize.new
45
+ @itunes_agent ||= WWW::Mechanize.new { |a| a.user_agent = 'iTunes/9.0.1 (Macintosh; Intel Mac OS X 10.6.1) AppleWebKit/531.9' }
46
46
  end
47
47
 
48
48
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fabien Jakimowicz
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-11-06 00:00:00 +01:00
12
+ date: 2009-11-07 00:00:00 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency