pagoda-client 0.1.8 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  module Pagoda
2
- module Api
2
+ module Apis
3
3
  module App
4
4
 
5
5
  #############
@@ -40,7 +40,7 @@ module Pagoda
40
40
  #############
41
41
  def app_create(name)
42
42
  user_id = user_info[:id]
43
- json post("/apps", {:app => {:name => name, :owner_id => user_id }})
43
+ json post("/apps", {:app => {:name => name, :owner_id => user_id, :git_repo_attributes => { :fork_url=>"" }}})
44
44
  end
45
45
 
46
46
  def app_deploy_latest(app)
@@ -1,4 +1,4 @@
1
- module Pagoda::Api
1
+ module Pagoda::Apis
2
2
  module Billing
3
3
 
4
4
 
@@ -1,4 +1,4 @@
1
- module Pagoda::Api
1
+ module Pagoda::Apis
2
2
  module Collaborator
3
3
 
4
4
 
@@ -1,4 +1,4 @@
1
- module Pagoda::Api
1
+ module Pagoda::Apis
2
2
  module Componant
3
3
 
4
4
  def component_info(app, component_name)
@@ -1,5 +1,5 @@
1
1
  module Pagoda
2
- module Api
2
+ module Apis
3
3
  module Database
4
4
 
5
5
  def database_list(app)
@@ -1,4 +1,4 @@
1
- module Pagoda::Api
1
+ module Pagoda::Apis
2
2
  module Email
3
3
 
4
4
 
@@ -1,5 +1,5 @@
1
1
  module Pagoda
2
- module Api
2
+ module Apis
3
3
  module Transaction
4
4
 
5
5
  def transaction_info(app, transaction)
@@ -1,4 +1,4 @@
1
- module Pagoda::Api
1
+ module Pagoda::Apis
2
2
  module User
3
3
 
4
4
  def user_info
@@ -13,17 +13,17 @@ require 'pagoda-client/apis/database'
13
13
 
14
14
  module Pagoda
15
15
  class Client
16
- VERSION = "0.1.7"
16
+ VERSION = "0.1.5"
17
17
 
18
18
  # Mix ins (cleaner)
19
- include Api::App
20
- include Api::User
21
- include Api::Componant
22
- include Api::Billing
23
- include Api::Email
24
- include Api::Collaborator
25
- include Api::Transaction
26
- include Api::Database
19
+ include Apis::App
20
+ include Apis::User
21
+ include Apis::Componant
22
+ include Apis::Billing
23
+ include Apis::Email
24
+ include Apis::Collaborator
25
+ include Apis::Transaction
26
+ include Apis::Database
27
27
 
28
28
  attr_reader :user, :password
29
29
 
@@ -98,7 +98,35 @@ module Pagoda
98
98
  end
99
99
 
100
100
  def json(content)
101
- JSON.parse(content, :symbolize_names => true)
101
+ puts "API response:" if ENV["VERBOSE"]
102
+ puts content if ENV["VERBOSE"]
103
+ guy = symbolize(JSON.parse(content))
104
+ puts "" if ENV["VERBOSE"]
105
+ puts "PARSE RESULT:" if ENV["VERBOSE"]
106
+ puts guy if ENV["VERBOSE"]
107
+ guy
108
+ end
109
+
110
+ def symbolize(hash)
111
+ new_hash = {}
112
+ hash.each do |key,value|
113
+ if value.is_a?(Hash)
114
+ new_hash[key.to_sym] = symbolize(value)
115
+ elsif value.is_a?(Array)
116
+ arr = []
117
+ value.each do |ele|
118
+ if ele.is_a?(Hash)
119
+ arr << symbolize(ele)
120
+ else
121
+ arr << ele
122
+ end
123
+ end
124
+ new_hash[key.to_sym] = arr
125
+ else
126
+ new_hash[key.to_sym] = value
127
+ end
128
+ end
129
+ new_hash
102
130
  end
103
131
 
104
132
  end
@@ -3,7 +3,7 @@ $:.push File.expand_path("../lib", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "pagoda-client"
6
- s.version = "0.1.8"
6
+ s.version = "0.2.0"
7
7
  s.authors = ["Lyon"]
8
8
  s.email = ["lyon@pagodabox.com"]
9
9
  s.homepage = "http://www.pagodabox.com"
@@ -25,7 +25,9 @@ Gem::Specification.new do |s|
25
25
 
26
26
  # real dependencies
27
27
  s.add_dependency "rest-client"
28
- s.add_dependency "json_pure"
28
+ s.add_dependency 'oj'
29
+ s.add_dependency 'multi_json'
30
+ # s.add_dependency "json_pure"
29
31
 
30
32
 
31
33
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pagoda-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.2.0
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: 2012-02-15 00:00:00.000000000 Z
12
+ date: 2012-10-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70241926490100 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70241926490100
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: webmock
27
- requirement: &70241926489600 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *70241926489600
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rest-client
38
- requirement: &70241926489040 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :runtime
45
55
  prerelease: false
46
- version_requirements: *70241926489040
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
- name: json_pure
49
- requirement: &70241926488280 !ruby/object:Gem::Requirement
63
+ name: oj
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,7 +69,28 @@ dependencies:
54
69
  version: '0'
55
70
  type: :runtime
56
71
  prerelease: false
57
- version_requirements: *70241926488280
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: multi_json
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
58
94
  description: Api client used to talk to pagodabox.
59
95
  email:
60
96
  - lyon@pagodabox.com
@@ -98,10 +134,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
134
  version: '0'
99
135
  requirements: []
100
136
  rubyforge_project: pagoda-client
101
- rubygems_version: 1.8.15
137
+ rubygems_version: 1.8.24
102
138
  signing_key:
103
139
  specification_version: 3
104
140
  summary: Pagodabox API client
105
141
  test_files:
106
142
  - spec/client_spec.rb
107
- has_rdoc: