preposterous 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/VERSION.yml +1 -1
- data/lib/preposterous.rb +42 -2
- data/preposterous.gemspec +2 -2
- metadata +3 -3
data/VERSION.yml
CHANGED
data/lib/preposterous.rb
CHANGED
@@ -4,13 +4,53 @@ require 'cgi'
|
|
4
4
|
require 'mime/types'
|
5
5
|
|
6
6
|
module Preposterous
|
7
|
-
|
8
|
-
|
7
|
+
|
8
|
+
class InvalidEmailOrPassword < StandardError; end
|
9
|
+
class InvalidSiteId < StandardError; end
|
10
|
+
class UserDoesNotHaveAccess < StandardError; end
|
11
|
+
class UnableToSave < StandardError; end
|
12
|
+
class UnableToFindObject < StandardError; end
|
13
|
+
class InvalidDate < StandardError; end
|
14
|
+
class InvalidPostId < StandardError; end
|
15
|
+
class CommentsDisabled < StandardError; end
|
16
|
+
class UnableToSaveComment < StandardError; end
|
17
|
+
class ApiRateLimitReached < StandardError; end
|
9
18
|
|
10
19
|
def self.make_friendly(response)
|
20
|
+
raise_errors(response)
|
11
21
|
Crack::XML.parse(response.body)["rsp"] if not response.nil?
|
12
22
|
end
|
13
23
|
|
24
|
+
def self.raise_errors(response)
|
25
|
+
response.body =~ /code="(\d+)" msg="(.*)"/
|
26
|
+
code = $1.to_i
|
27
|
+
# going to pass this to the exception at some point... maybe
|
28
|
+
msg = $2
|
29
|
+
|
30
|
+
case code
|
31
|
+
when 3001
|
32
|
+
raise InvalidEmailOrPassword, msg
|
33
|
+
when 3002
|
34
|
+
raise InvalidSiteId, msg
|
35
|
+
when 3003
|
36
|
+
raise UserDoesNotHaveAccess, msg
|
37
|
+
when 3004
|
38
|
+
raise UnableToSave, msg
|
39
|
+
when 3005
|
40
|
+
raise UnableToFindObject, msg
|
41
|
+
when 3006
|
42
|
+
raise InvalidDate, msg
|
43
|
+
when 3007
|
44
|
+
raise InvalidPostId, msg
|
45
|
+
when 3008
|
46
|
+
raise CommentsDisabled, msg
|
47
|
+
when 3009
|
48
|
+
raise UnableToSaveComment, msg
|
49
|
+
when 3010
|
50
|
+
raise ApiRateLimitReached, msg
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
14
54
|
end
|
15
55
|
|
16
56
|
# bring in all of the files in the lib dir
|
data/preposterous.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{preposterous}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.4"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ray Hernandez"]
|
12
|
-
s.date = %q{2010-05-
|
12
|
+
s.date = %q{2010-05-08}
|
13
13
|
s.description = %q{This gem supports posting and listing sites on Posterous}
|
14
14
|
s.email = %q{hernan43@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
8
|
+
- 4
|
9
|
+
version: 0.0.4
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Ray Hernandez
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-05-
|
17
|
+
date: 2010-05-08 00:00:00 -04:00
|
18
18
|
default_executable:
|
19
19
|
dependencies: []
|
20
20
|
|