aries 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +3 -0
- data/Gemfile +4 -0
- data/README.md +102 -0
- data/Rakefile +1 -0
- data/aries.gemspec +31 -0
- data/bin/aries +7 -0
- data/examples/clients/RackJsonSchemaApi.swift +277 -0
- data/examples/schemas/rack-json_schema.json +148 -0
- data/examples/schemas/schema-heroku.json +7095 -0
- data/lib/aries.rb +28 -0
- data/lib/aries/cli.rb +19 -0
- data/lib/aries/error.rb +3 -0
- data/lib/aries/generator.rb +94 -0
- data/lib/aries/link.rb +105 -0
- data/lib/aries/param.rb +75 -0
- data/lib/aries/param_type.rb +18 -0
- data/lib/aries/presenters/link_swift.rb +55 -0
- data/lib/aries/presenters/param_swift.rb +41 -0
- data/lib/aries/presenters/param_type_swift.rb +33 -0
- data/lib/aries/presenters/resource_swift.rb +32 -0
- data/lib/aries/presenters/schema_swift.rb +30 -0
- data/lib/aries/resource.rb +35 -0
- data/lib/aries/schema.rb +56 -0
- data/lib/aries/templates/client.swift.erb +217 -0
- data/lib/aries/version.rb +3 -0
- metadata +201 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
module Aries
|
2
|
+
|
3
|
+
module Presenters
|
4
|
+
|
5
|
+
class ParamTypeSwift
|
6
|
+
|
7
|
+
# @param param_type [Aries::ParamType]
|
8
|
+
def initialize param_type
|
9
|
+
@param_type = param_type
|
10
|
+
end
|
11
|
+
|
12
|
+
def param_class
|
13
|
+
case original.type
|
14
|
+
when "any" then "AnyObject"
|
15
|
+
when "array" then "[AnyObject]"
|
16
|
+
when "boolean" then "Bool"
|
17
|
+
when "integer" then "Int"
|
18
|
+
when "number" then "Double"
|
19
|
+
when "object" then "[String:AnyObject]"
|
20
|
+
when "string" then "String"
|
21
|
+
else "AnyObject"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def original
|
26
|
+
@param_type
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module Aries
|
2
|
+
|
3
|
+
module Presenters
|
4
|
+
|
5
|
+
class ResourceSwift
|
6
|
+
|
7
|
+
# @param resource [Aries::Resource]
|
8
|
+
def initialize resource
|
9
|
+
@resource = resource
|
10
|
+
end
|
11
|
+
|
12
|
+
def name
|
13
|
+
original.name.camelcase
|
14
|
+
end
|
15
|
+
|
16
|
+
# @return [Array<Aries::Presenters::LinkSwift>]
|
17
|
+
def links
|
18
|
+
original.links.map{|li| LinkSwift.new li }
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
# @return [Aries::Resource]
|
24
|
+
def original
|
25
|
+
@resource
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Aries
|
2
|
+
|
3
|
+
module Presenters
|
4
|
+
|
5
|
+
class SchemaSwift
|
6
|
+
|
7
|
+
delegate :base_url, to: :original
|
8
|
+
|
9
|
+
# @param schema [Aries::Schema]
|
10
|
+
def initialize schema
|
11
|
+
@schema = schema
|
12
|
+
end
|
13
|
+
|
14
|
+
# @return [Array<Aries::Presenters::ResourceSwift>]
|
15
|
+
def resources
|
16
|
+
original.resources.map{|r| ResourceSwift.new r }
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
# @return [Aries::Schema]
|
22
|
+
def original
|
23
|
+
@schema
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Aries
|
2
|
+
|
3
|
+
class Resource
|
4
|
+
|
5
|
+
attr_reader :parent
|
6
|
+
|
7
|
+
#
|
8
|
+
# @param [String] name of schema
|
9
|
+
# @param [JsonSchema::Schema] json schema object
|
10
|
+
def initialize name, schema, parent = nil
|
11
|
+
@name = name
|
12
|
+
@schema = schema
|
13
|
+
@parent = parent
|
14
|
+
end
|
15
|
+
|
16
|
+
# @return String name of resource
|
17
|
+
def name
|
18
|
+
@name.split('-').join("_")
|
19
|
+
end
|
20
|
+
|
21
|
+
# @return [Array<Aries::Link>] links owned by resource
|
22
|
+
def links
|
23
|
+
@links ||= @schema.links.map do |link|
|
24
|
+
Link.new(link, self)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
# @return [Aries::Schema] Root schema of resource
|
29
|
+
def root_schema
|
30
|
+
@parent.respond_to?(:parent) ? @parent.root_schema : @parent
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
data/lib/aries/schema.rb
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
module Aries
|
2
|
+
|
3
|
+
class Schema
|
4
|
+
|
5
|
+
#
|
6
|
+
# @param Hash [JSON] Json Schema Object
|
7
|
+
# @raise [JsonSchema::SchemaError]
|
8
|
+
#
|
9
|
+
def initialize schema
|
10
|
+
@schema = ::JsonSchema.parse!(schema).tap(&:expand_references!)
|
11
|
+
end
|
12
|
+
|
13
|
+
# Resources of json schema
|
14
|
+
# @param [Array<Aries::Resource>]
|
15
|
+
def resources
|
16
|
+
@resources ||= @schema.properties.map do |name, schema|
|
17
|
+
Resource.new name, schema, self
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
# Find base url of api
|
22
|
+
# @return [String] url
|
23
|
+
# @raise [Aries::BaseUrlNotFound]
|
24
|
+
def base_url
|
25
|
+
root_link.try(:href) or raise BaseUrlNotFound
|
26
|
+
end
|
27
|
+
|
28
|
+
# Finds link that has "self" rel to resolve API base URL
|
29
|
+
# @return [JsonSchema::Schema::Link, nil]
|
30
|
+
def root_link
|
31
|
+
@schema.links.find do |link|
|
32
|
+
link.rel == "self"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
# @param href [String]
|
37
|
+
# @return [JsonSchema::Schema]
|
38
|
+
# @example
|
39
|
+
# property_by "#/definitions/apps/definitions/identiry" #=> JsonSchema::Schema
|
40
|
+
def property_by href
|
41
|
+
accessor = href.gsub(/([a-zA-Z0-9\-\_]+)/).to_a
|
42
|
+
result = @schema
|
43
|
+
accessor.each_with_index do |a, i|
|
44
|
+
result = (i % 2) == 0 ? result.send(a.to_sym) : result[a]
|
45
|
+
end
|
46
|
+
result
|
47
|
+
end
|
48
|
+
|
49
|
+
def inspect
|
50
|
+
"#<Aries::Schema base_url=#{base_url}>"
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
class BaseUrlNotFound < Error
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,217 @@
|
|
1
|
+
//
|
2
|
+
// <%= file_name %>
|
3
|
+
//
|
4
|
+
// Auto generated by Aries on <%= timestamp %>.
|
5
|
+
// Do not modify this file directory
|
6
|
+
//
|
7
|
+
|
8
|
+
import Alamofire
|
9
|
+
import SwiftTask
|
10
|
+
import URITemplate
|
11
|
+
|
12
|
+
typealias <%= class_name %>Response = Task<Int,AnyObject,NSError>
|
13
|
+
|
14
|
+
protocol <%= class_name %>Delegate {
|
15
|
+
func customReqeust(request: NSMutableURLRequest) -> NSMutableURLRequest
|
16
|
+
func onDefaultSuccess(response: AnyObject) -> AnyObject
|
17
|
+
func onDefaultFailure(err: NSError) -> NSError
|
18
|
+
}
|
19
|
+
|
20
|
+
class <%= class_name %> {
|
21
|
+
|
22
|
+
private struct BaseUrlStringStruct{ static var url = "<%= base_url %>" }
|
23
|
+
class var BaseUrlString: String {
|
24
|
+
get{ return BaseUrlStringStruct.url }
|
25
|
+
set{ BaseUrlStringStruct.url = newValue }
|
26
|
+
}
|
27
|
+
|
28
|
+
// workaround tips
|
29
|
+
// After updated swift 1.2, use ( static var someVariable: Int = 0 ) instead
|
30
|
+
private struct delegateStruct{ static var detegator: <%= class_name %>Delegate? }
|
31
|
+
class var delegate: <%= class_name %>Delegate? {
|
32
|
+
get{ return delegateStruct.detegator }
|
33
|
+
set{ delegateStruct.detegator = newValue }
|
34
|
+
}
|
35
|
+
|
36
|
+
private class func defaultURLRequest(let path: String, let method: Alamofire.Method) -> NSMutableURLRequest {
|
37
|
+
let URL = NSURL(string: <%= class_name %>.BaseUrlString)!
|
38
|
+
let mutableURLRequest = NSMutableURLRequest(URL: URL.URLByAppendingPathComponent(path))
|
39
|
+
|
40
|
+
mutableURLRequest.HTTPMethod = method.rawValue
|
41
|
+
mutableURLRequest.setValue("application/json", forHTTPHeaderField: "Content-Type")
|
42
|
+
mutableURLRequest.setValue("application/json", forHTTPHeaderField: "Accept")
|
43
|
+
|
44
|
+
if let delegate = self.delegate?{
|
45
|
+
return delegate.customReqeust(mutableURLRequest)
|
46
|
+
}
|
47
|
+
|
48
|
+
return mutableURLRequest
|
49
|
+
}
|
50
|
+
|
51
|
+
private class func generateURI(template: String, params: [String: AnyObject]?) -> String {
|
52
|
+
if let params = params {
|
53
|
+
return URITemplate(template: template).expand(params)
|
54
|
+
}
|
55
|
+
return template
|
56
|
+
}
|
57
|
+
|
58
|
+
class Base {
|
59
|
+
|
60
|
+
private class func request(URLRequest: URLRequestConvertible) -> <%= class_name %>Response {
|
61
|
+
return <%= class_name %>Response {(progress, fulfill, reject, configure) in
|
62
|
+
let alam = Alamofire.request(URLRequest)
|
63
|
+
.validate()
|
64
|
+
.responseJSON({ (req, res, data, err) -> Void in
|
65
|
+
|
66
|
+
if let err = err {
|
67
|
+
reject(self.buildErr(res, data: data, err: err))
|
68
|
+
return
|
69
|
+
}
|
70
|
+
fulfill(data!)
|
71
|
+
})
|
72
|
+
debugPrintln(alam)
|
73
|
+
configure.pause = { [weak alam] in if let alam = alam { alam.suspend() } }
|
74
|
+
configure.resume = { [weak alam] in if let alam = alam { alam.resume() } }
|
75
|
+
configure.cancel = { [weak alam] in if let alam = alam { alam.cancel() } }
|
76
|
+
}.then({ (data, errorInfo) -> <%= class_name %>Response in
|
77
|
+
return <%= class_name %>Response { (progress, fulfill, reject, configure) in
|
78
|
+
if(errorInfo == nil){
|
79
|
+
if let delegate = <%= class_name %>.delegate {
|
80
|
+
let newData: AnyObject = delegate.onDefaultSuccess(data!)
|
81
|
+
fulfill(newData)
|
82
|
+
return
|
83
|
+
}
|
84
|
+
fulfill(data!)
|
85
|
+
return
|
86
|
+
}else{
|
87
|
+
let (err, isCancelled) = errorInfo!
|
88
|
+
if let err = err {
|
89
|
+
if let delegate = <%= class_name %>.delegate{
|
90
|
+
let newErr = delegate.onDefaultFailure(err)
|
91
|
+
reject(newErr)
|
92
|
+
return
|
93
|
+
}
|
94
|
+
reject(err)
|
95
|
+
return
|
96
|
+
}
|
97
|
+
}
|
98
|
+
}
|
99
|
+
|
100
|
+
})
|
101
|
+
}
|
102
|
+
|
103
|
+
private class func buildErr(res: NSHTTPURLResponse?, data: AnyObject?, err: NSError?) -> NSError {
|
104
|
+
var userInfo = [String: AnyObject]()
|
105
|
+
if let res = res {
|
106
|
+
userInfo["statusCode"] = res.statusCode
|
107
|
+
}else{
|
108
|
+
userInfo["statusCode"] = 502
|
109
|
+
}
|
110
|
+
if let data: AnyObject = data {
|
111
|
+
userInfo["response"] = data
|
112
|
+
}
|
113
|
+
if let err = err {
|
114
|
+
userInfo["originalError"] = err
|
115
|
+
}
|
116
|
+
var error = NSError(domain: "com.aries.error", code: -1, userInfo: userInfo)
|
117
|
+
return error
|
118
|
+
}
|
119
|
+
|
120
|
+
}
|
121
|
+
|
122
|
+
<% resources.each do |resource| %>
|
123
|
+
|
124
|
+
class <%= resource.name %>: Base {
|
125
|
+
|
126
|
+
<% resource.links.each do |li| %>
|
127
|
+
|
128
|
+
class func <%= li.method_name %>(<%= li.params_for_method %>) -> <%= class_name %>Response {
|
129
|
+
<% if li.has_params? %>
|
130
|
+
var params = [String: AnyObject]()
|
131
|
+
<% else %>
|
132
|
+
var params: [String: AnyObject]? = nil
|
133
|
+
<% end %>
|
134
|
+
|
135
|
+
<% li.required_params.each do |param| %>
|
136
|
+
<% if param.has_children? %>
|
137
|
+
var items_<%= param.name %> = [String: AnyObject]()
|
138
|
+
<% param.params.each do |ch| %>
|
139
|
+
if let item_<%= ch.name %> = <%= param.name %>["<%= ch.name %>"] as? <%= ch.param_class %> {
|
140
|
+
items_<%= param.name %>["<%= ch.name %>"] = item_<%= ch.name %>
|
141
|
+
}
|
142
|
+
<% end %>
|
143
|
+
params["<%= param.name %>"] = items_<%= param.name %>
|
144
|
+
<% else %>
|
145
|
+
params["<%= param.name %>"] = <%= param.name %>
|
146
|
+
<% end %>
|
147
|
+
<% end %>
|
148
|
+
|
149
|
+
<% li.optional_params.each do |param| %>
|
150
|
+
if let <%= param.name %> = <%= param.name %> {
|
151
|
+
<% if param.has_children? %>
|
152
|
+
var items_<%= param.name %> = [String: AnyObject]()
|
153
|
+
<% param.params.each do |ch| %>
|
154
|
+
if let item_<%= ch.name %> = <%= param.name %>["<%= ch.name %>"] as? <%= ch.param_class %> {
|
155
|
+
items_<%= param.name %>["<%= ch.name %>"] = item_<%= ch.name %>
|
156
|
+
}
|
157
|
+
<% end %>
|
158
|
+
params["<%= param.name %>"] = items_<%= param.name %>
|
159
|
+
<% else %>
|
160
|
+
params["<%= param.name %>"] = <%= param.name %>
|
161
|
+
<% end %>
|
162
|
+
}
|
163
|
+
<% end %>
|
164
|
+
|
165
|
+
return request(Router.<%= li.method_name %>(params))
|
166
|
+
}
|
167
|
+
|
168
|
+
<% end %>
|
169
|
+
|
170
|
+
private enum Router: URLRequestConvertible {
|
171
|
+
|
172
|
+
<% resource.links.each do |li| %>
|
173
|
+
case <%= li.method_name %>([String: AnyObject]?)
|
174
|
+
<% end %>
|
175
|
+
<% if resource.links.size > 0 %>
|
176
|
+
var method: Alamofire.Method {
|
177
|
+
switch self {
|
178
|
+
<% resource.links.each do |li| %>
|
179
|
+
case .<%= li.method_name %>:
|
180
|
+
return .<%= li.http_method %>
|
181
|
+
<% end %>
|
182
|
+
}
|
183
|
+
}
|
184
|
+
<% end %>
|
185
|
+
|
186
|
+
<% if resource.links.size > 0 %>
|
187
|
+
var path: String {
|
188
|
+
switch self {
|
189
|
+
<% resource.links.each do |li| %>
|
190
|
+
case .<%= li.method_name %>(let params):
|
191
|
+
return <%= class_name %>.generateURI("<%= li.pretty_href %>", params: params)
|
192
|
+
<% end %>
|
193
|
+
}
|
194
|
+
}
|
195
|
+
<% end %>
|
196
|
+
|
197
|
+
// MARK: URLRequestConvertible
|
198
|
+
|
199
|
+
<% if resource.links.size > 0 %>
|
200
|
+
var URLRequest: NSURLRequest {
|
201
|
+
switch self{
|
202
|
+
<% resource.links.each do |li| %>
|
203
|
+
case .<%= li.method_name %>(let parameters):
|
204
|
+
return Alamofire.ParameterEncoding.<%= li.encode %>.encode(<%= class_name %>.defaultURLRequest(path, method: method), parameters: parameters).0
|
205
|
+
<% end %>
|
206
|
+
}
|
207
|
+
}
|
208
|
+
<% end %>
|
209
|
+
|
210
|
+
}
|
211
|
+
|
212
|
+
|
213
|
+
}
|
214
|
+
|
215
|
+
<% end %>
|
216
|
+
|
217
|
+
}
|
metadata
ADDED
@@ -0,0 +1,201 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: aries
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- yss44
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-04-10 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: addressable
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: thor
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: activesupport
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: json_schema
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: erubis
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: bundler
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '1.8'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '1.8'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rake
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '10.0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '10.0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: pry
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rack-json_schema
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
description: Aries is a iOS(Swift), Andorid(not yet, but future) HTTP client generator
|
140
|
+
for APIs represented with JSON Schema
|
141
|
+
email:
|
142
|
+
- nya060@gmail.com
|
143
|
+
executables:
|
144
|
+
- aries
|
145
|
+
extensions: []
|
146
|
+
extra_rdoc_files: []
|
147
|
+
files:
|
148
|
+
- ".gitignore"
|
149
|
+
- ".rspec"
|
150
|
+
- ".travis.yml"
|
151
|
+
- Gemfile
|
152
|
+
- README.md
|
153
|
+
- Rakefile
|
154
|
+
- aries.gemspec
|
155
|
+
- bin/aries
|
156
|
+
- examples/clients/RackJsonSchemaApi.swift
|
157
|
+
- examples/schemas/rack-json_schema.json
|
158
|
+
- examples/schemas/schema-heroku.json
|
159
|
+
- lib/aries.rb
|
160
|
+
- lib/aries/cli.rb
|
161
|
+
- lib/aries/error.rb
|
162
|
+
- lib/aries/generator.rb
|
163
|
+
- lib/aries/link.rb
|
164
|
+
- lib/aries/param.rb
|
165
|
+
- lib/aries/param_type.rb
|
166
|
+
- lib/aries/presenters/link_swift.rb
|
167
|
+
- lib/aries/presenters/param_swift.rb
|
168
|
+
- lib/aries/presenters/param_type_swift.rb
|
169
|
+
- lib/aries/presenters/resource_swift.rb
|
170
|
+
- lib/aries/presenters/schema_swift.rb
|
171
|
+
- lib/aries/resource.rb
|
172
|
+
- lib/aries/schema.rb
|
173
|
+
- lib/aries/templates/client.swift.erb
|
174
|
+
- lib/aries/version.rb
|
175
|
+
homepage: https://github.com/yss44/aries
|
176
|
+
licenses:
|
177
|
+
- MIT
|
178
|
+
metadata: {}
|
179
|
+
post_install_message:
|
180
|
+
rdoc_options: []
|
181
|
+
require_paths:
|
182
|
+
- lib
|
183
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - ">="
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '0'
|
188
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
189
|
+
requirements:
|
190
|
+
- - ">="
|
191
|
+
- !ruby/object:Gem::Version
|
192
|
+
version: '0'
|
193
|
+
requirements: []
|
194
|
+
rubyforge_project:
|
195
|
+
rubygems_version: 2.2.2
|
196
|
+
signing_key:
|
197
|
+
specification_version: 4
|
198
|
+
summary: Aries is a iOS(Swift), Android(java,not yet) API Client generator represented
|
199
|
+
with JSON Schema
|
200
|
+
test_files: []
|
201
|
+
has_rdoc:
|