issuu 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.rdoc CHANGED
@@ -20,11 +20,10 @@ See the {full Issuu API reference}[http://issuu.com/services/api/]
20
20
  end
21
21
 
22
22
  puts Issuu::Document.list.inspect
23
- response = Issuu::Document.upload('path_to_your_file', 'application/pdf')
24
- name = response["rsp"]["_content"]["document"]["name"]
25
- puts "File uploaded: #{name}"
23
+ document = Issuu::Document.upload('path_to_your_file', 'application/pdf')
24
+ puts "File uploaded: #{document.name}"
26
25
  puts Issuu::Document.list.inspect
27
- Issuu::Document.delete([name])
26
+ Issuu::Document.delete([document.name])
28
27
  puts Issuu::Document.list.inspect
29
28
 
30
29
  == Contributing to issuu
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
data/issuu.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{issuu}
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 = ["Bastien Vaucher - MagmaHQ"]
12
- s.date = %q{2011-01-28}
12
+ s.date = %q{2011-03-17}
13
13
  s.description = %q{Provides basic methods to access the Issuu API}
14
14
  s.email = %q{bastien.vaucher@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -40,7 +40,7 @@ Gem::Specification.new do |s|
40
40
  s.homepage = %q{http://github.com/bastien/issuu}
41
41
  s.licenses = ["MIT"]
42
42
  s.require_paths = ["lib"]
43
- s.rubygems_version = %q{1.3.7}
43
+ s.rubygems_version = %q{1.5.3}
44
44
  s.summary = %q{Issuu API}
45
45
  s.test_files = [
46
46
  "spec/issuu/bookmark_spec.rb",
@@ -50,7 +50,6 @@ Gem::Specification.new do |s|
50
50
  ]
51
51
 
52
52
  if s.respond_to? :specification_version then
53
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
54
53
  s.specification_version = 3
55
54
 
56
55
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
@@ -1,6 +1,9 @@
1
1
  module Issuu
2
2
  class Bookmark
3
+ attr_reader :attributes
4
+
3
5
  def initialize(hash)
6
+ @attributes = hash
4
7
  hash.each do |key, value|
5
8
  metaclass.send :attr_accessor, key
6
9
  instance_variable_set("@#{key}", value)
@@ -38,10 +41,10 @@ module Issuu
38
41
  Bookmark.new(response["rsp"]["_content"]["bookmark"])
39
42
  end
40
43
 
41
- def delete(bookmark_ids)
44
+ def delete(bookmark_ids, params={})
42
45
  Cli.http_post(
43
46
  Issuu::API_URL,
44
- ParameterSet.new("issuu.bookmark.delete", {:bookmarkIds => bookmark_ids.join(',')}).output
47
+ ParameterSet.new("issuu.bookmark.delete", params.merge({:bookmarkIds => bookmark_ids.join(',')})).output
45
48
  )
46
49
  return true
47
50
  end
@@ -1,6 +1,9 @@
1
1
  module Issuu
2
- class Document
2
+ class Document
3
+ attr_reader :attributes
4
+
3
5
  def initialize(hash)
6
+ @attributes = hash
4
7
  hash.each do |key, value|
5
8
  metaclass.send :attr_accessor, key
6
9
  instance_variable_set("@#{key}", value)
@@ -49,10 +52,10 @@ module Issuu
49
52
  response["rsp"]["_content"]["result"]["_content"].map{|document_hash| Document.new(document_hash["document"]) }
50
53
  end
51
54
 
52
- def delete(filenames)
55
+ def delete(filenames, params={})
53
56
  Cli.http_post(
54
57
  Issuu::API_URL,
55
- ParameterSet.new("issuu.document.delete", {:names => filenames.join(',')}).output
58
+ ParameterSet.new("issuu.document.delete", params.merge({:names => filenames.join(',')})).output
56
59
  )
57
60
  return true
58
61
  end
data/lib/issuu/folder.rb CHANGED
@@ -1,6 +1,9 @@
1
1
  module Issuu
2
2
  class Folder
3
+ attr_reader :attributes
4
+
3
5
  def initialize(hash)
6
+ @attributes = hash
4
7
  hash.each do |key, value|
5
8
  metaclass.send :attr_accessor, key
6
9
  instance_variable_set("@#{key}", value)
@@ -38,10 +41,10 @@ module Issuu
38
41
  Folder.new(response["rsp"]["_content"]["folder"])
39
42
  end
40
43
 
41
- def delete(folder_ids)
44
+ def delete(folder_ids, params={})
42
45
  Cli.http_post(
43
46
  Issuu::API_URL,
44
- ParameterSet.new("issuu.folder.delete", {:folderIds => folder_ids.join(',')}).output
47
+ ParameterSet.new("issuu.folder.delete", params.merge({:folderIds => folder_ids.join(',')})).output
45
48
  )
46
49
  return true
47
50
  end
@@ -29,6 +29,7 @@ describe Issuu::Bookmark do
29
29
  it "should assign all the params given in the hash and make them accessible" do
30
30
  subject.name.should == "Magma"
31
31
  subject.description.should == "Rocks!"
32
+ subject.attributes.should == {:name => "Magma", :description => "Rocks!"}
32
33
  end
33
34
  end
34
35
 
@@ -116,6 +117,12 @@ describe Issuu::Bookmark do
116
117
  it "should return an instance of the uploaded document" do
117
118
  subject == true
118
119
  end
120
+
121
+ subject { Issuu::Bookmark.delete(["bookmark_id"], {:api_key => "secret", :secret => "secret"}) }
122
+
123
+ it "should return an instance of the uploaded document" do
124
+ subject == true
125
+ end
119
126
  end
120
127
 
121
128
  describe "update a bookmark" do
@@ -31,6 +31,7 @@ describe Issuu::Document do
31
31
  it "should assign all the params given in the hash and make them accessible" do
32
32
  subject.name.should == "Magma"
33
33
  subject.description.should == "Rocks!"
34
+ subject.attributes.should == {:name => "Magma", :description => "Rocks!"}
34
35
  end
35
36
  end
36
37
 
@@ -151,6 +152,12 @@ describe Issuu::Document do
151
152
  it "should return an instance of the uploaded document" do
152
153
  subject == true
153
154
  end
155
+
156
+ subject { Issuu::Document.delete(["bookmark_id"], {:api_key => "secret", :secret => "secret"}) }
157
+
158
+ it "should return an instance of the uploaded document" do
159
+ subject == true
160
+ end
154
161
  end
155
162
 
156
163
  describe "update a document" do
@@ -23,6 +23,7 @@ describe Issuu::Folder do
23
23
  it "should assign all the params given in the hash and make them accessible" do
24
24
  subject.name.should == "Magma"
25
25
  subject.description.should == "Rocks!"
26
+ subject.attributes.should == {:name => "Magma", :description => "Rocks!"}
26
27
  end
27
28
  end
28
29
 
@@ -110,6 +111,12 @@ describe Issuu::Folder do
110
111
  it "should return an instance of the uploaded document" do
111
112
  subject == true
112
113
  end
114
+
115
+ subject { Issuu::Folder.delete(["bookmark_id"], {:api_key => "secret", :secret => "secret"}) }
116
+
117
+ it "should return an instance of the uploaded document" do
118
+ subject == true
119
+ end
113
120
  end
114
121
 
115
122
  describe "update a folder" do
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: issuu
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
5
- prerelease: false
4
+ hash: 31
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 1
10
- version: 0.1.1
9
+ - 2
10
+ version: 0.1.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Bastien Vaucher - MagmaHQ
@@ -15,14 +15,12 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-01-28 00:00:00 +01:00
18
+ date: 2011-03-17 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  type: :runtime
23
- prerelease: false
24
- name: activesupport
25
- version_requirements: &id001 !ruby/object:Gem::Requirement
23
+ requirement: &id001 !ruby/object:Gem::Requirement
26
24
  none: false
27
25
  requirements:
28
26
  - - ">="
@@ -33,12 +31,12 @@ dependencies:
33
31
  - 0
34
32
  - 3
35
33
  version: 3.0.3
36
- requirement: *id001
34
+ name: activesupport
35
+ version_requirements: *id001
36
+ prerelease: false
37
37
  - !ruby/object:Gem::Dependency
38
38
  type: :runtime
39
- prerelease: false
40
- name: multipart-post
41
- version_requirements: &id002 !ruby/object:Gem::Requirement
39
+ requirement: &id002 !ruby/object:Gem::Requirement
42
40
  none: false
43
41
  requirements:
44
42
  - - ">="
@@ -47,12 +45,12 @@ dependencies:
47
45
  segments:
48
46
  - 0
49
47
  version: "0"
50
- requirement: *id002
48
+ name: multipart-post
49
+ version_requirements: *id002
50
+ prerelease: false
51
51
  - !ruby/object:Gem::Dependency
52
52
  type: :development
53
- prerelease: false
54
- name: shoulda
55
- version_requirements: &id003 !ruby/object:Gem::Requirement
53
+ requirement: &id003 !ruby/object:Gem::Requirement
56
54
  none: false
57
55
  requirements:
58
56
  - - ">="
@@ -61,12 +59,12 @@ dependencies:
61
59
  segments:
62
60
  - 0
63
61
  version: "0"
64
- requirement: *id003
62
+ name: shoulda
63
+ version_requirements: *id003
64
+ prerelease: false
65
65
  - !ruby/object:Gem::Dependency
66
66
  type: :development
67
- prerelease: false
68
- name: bundler
69
- version_requirements: &id004 !ruby/object:Gem::Requirement
67
+ requirement: &id004 !ruby/object:Gem::Requirement
70
68
  none: false
71
69
  requirements:
72
70
  - - ~>
@@ -77,12 +75,12 @@ dependencies:
77
75
  - 0
78
76
  - 0
79
77
  version: 1.0.0
80
- requirement: *id004
78
+ name: bundler
79
+ version_requirements: *id004
80
+ prerelease: false
81
81
  - !ruby/object:Gem::Dependency
82
82
  type: :development
83
- prerelease: false
84
- name: jeweler
85
- version_requirements: &id005 !ruby/object:Gem::Requirement
83
+ requirement: &id005 !ruby/object:Gem::Requirement
86
84
  none: false
87
85
  requirements:
88
86
  - - ~>
@@ -93,12 +91,12 @@ dependencies:
93
91
  - 5
94
92
  - 2
95
93
  version: 1.5.2
96
- requirement: *id005
94
+ name: jeweler
95
+ version_requirements: *id005
96
+ prerelease: false
97
97
  - !ruby/object:Gem::Dependency
98
98
  type: :development
99
- prerelease: false
100
- name: rcov
101
- version_requirements: &id006 !ruby/object:Gem::Requirement
99
+ requirement: &id006 !ruby/object:Gem::Requirement
102
100
  none: false
103
101
  requirements:
104
102
  - - ">="
@@ -107,12 +105,12 @@ dependencies:
107
105
  segments:
108
106
  - 0
109
107
  version: "0"
110
- requirement: *id006
108
+ name: rcov
109
+ version_requirements: *id006
110
+ prerelease: false
111
111
  - !ruby/object:Gem::Dependency
112
112
  type: :development
113
- prerelease: false
114
- name: rspec
115
- version_requirements: &id007 !ruby/object:Gem::Requirement
113
+ requirement: &id007 !ruby/object:Gem::Requirement
116
114
  none: false
117
115
  requirements:
118
116
  - - ">="
@@ -123,12 +121,12 @@ dependencies:
123
121
  - 4
124
122
  - 0
125
123
  version: 2.4.0
126
- requirement: *id007
124
+ name: rspec
125
+ version_requirements: *id007
126
+ prerelease: false
127
127
  - !ruby/object:Gem::Dependency
128
128
  type: :development
129
- prerelease: false
130
- name: rspec
131
- version_requirements: &id008 !ruby/object:Gem::Requirement
129
+ requirement: &id008 !ruby/object:Gem::Requirement
132
130
  none: false
133
131
  requirements:
134
132
  - - ">="
@@ -139,12 +137,12 @@ dependencies:
139
137
  - 4
140
138
  - 0
141
139
  version: 2.4.0
142
- requirement: *id008
140
+ name: rspec
141
+ version_requirements: *id008
142
+ prerelease: false
143
143
  - !ruby/object:Gem::Dependency
144
144
  type: :runtime
145
- prerelease: false
146
- name: activesupport
147
- version_requirements: &id009 !ruby/object:Gem::Requirement
145
+ requirement: &id009 !ruby/object:Gem::Requirement
148
146
  none: false
149
147
  requirements:
150
148
  - - ">="
@@ -155,12 +153,12 @@ dependencies:
155
153
  - 0
156
154
  - 3
157
155
  version: 3.0.3
158
- requirement: *id009
156
+ name: activesupport
157
+ version_requirements: *id009
158
+ prerelease: false
159
159
  - !ruby/object:Gem::Dependency
160
160
  type: :runtime
161
- prerelease: false
162
- name: multipart-post
163
- version_requirements: &id010 !ruby/object:Gem::Requirement
161
+ requirement: &id010 !ruby/object:Gem::Requirement
164
162
  none: false
165
163
  requirements:
166
164
  - - ">="
@@ -169,7 +167,9 @@ dependencies:
169
167
  segments:
170
168
  - 0
171
169
  version: "0"
172
- requirement: *id010
170
+ name: multipart-post
171
+ version_requirements: *id010
172
+ prerelease: false
173
173
  description: Provides basic methods to access the Issuu API
174
174
  email: bastien.vaucher@gmail.com
175
175
  executables: []
@@ -229,7 +229,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
229
229
  requirements: []
230
230
 
231
231
  rubyforge_project:
232
- rubygems_version: 1.3.7
232
+ rubygems_version: 1.5.3
233
233
  signing_key:
234
234
  specification_version: 3
235
235
  summary: Issuu API