gerencianet 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: db0dc12a8bb152c33bb1386d2ead264880cf56c0
4
+ data.tar.gz: 5e72412e908a0369f4cded139d779bea0159601b
5
+ SHA512:
6
+ metadata.gz: 076b82eac8e238d2115de2c38254b899fa47d2a15dd8d9cf0bc1b8484189a44b70ca5e73974960f3a130b3e99a19c7be43d5a706845ee111d5f10a5ec40afe76
7
+ data.tar.gz: 518f72c4a4e0a794bd3c0e7b203dde35d6c1865f45ec0eefa3e7b94affb1906f96b9dd9ba205be9410d5b3e847835e0a354139ed925c11fdff1587b7804ce0ce
@@ -0,0 +1,21 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
18
+ .ruby-gemset
19
+ .ruby-version
20
+ .rspec
21
+ turbulence
@@ -0,0 +1,9 @@
1
+ Style/SpaceInsideHashLiteralBraces:
2
+ EnforcedStyle: no_space
3
+
4
+ Style/Encoding:
5
+ Enabled: true
6
+ EnforcedStyle: when_needed
7
+
8
+ Style/StringLiterals:
9
+ EnforcedStyle: double_quotes
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.1.0
4
+ before_install: gem install bundler -v 1.10.6
File without changes
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "coveralls", require: false
4
+
5
+ # require "pry"
6
+ # Pry.start
7
+
8
+ # Specify your gem's dependencies in gerencianet.gemspec
9
+ gemspec
@@ -0,0 +1,5 @@
1
+ guard :rspec, cmd: "rspec" do
2
+ watch(%r{^spec/.+_spec\.rb$})
3
+ watch(%r{^lib/(.+)\.rb$}) { "spec" }
4
+ watch("spec/spec_helper.rb") { "spec" }
5
+ end
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2015 Gerencianet Pagamentos do Brasil
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,118 @@
1
+ # gn-api-sdk-ruby
2
+
3
+ > A ruby gem for integration of your backend with the payment services
4
+ provided by [Gerencianet](http://gerencianet.com.br).
5
+
6
+ [![Build Status](https://travis-ci.org/gerencianet/gn-api-sdk-ruby.svg)](https://travis-ci.org/gerencianet/gn-api-sdk-ruby)
7
+ [![Coverage Status](https://coveralls.io/repos/gerencianet/gn-api-sdk-ruby/badge.svg?branch=master&service=github)](https://coveralls.io/github/gerencianet/gn-api-sdk-ruby?branch=master)
8
+ [![Code Climate](https://codeclimate.com/github/gerencianet/gn-api-sdk-ruby/badges/gpa.svg)](https://codeclimate.com/github/gerencianet/gn-api-sdk-ruby)
9
+
10
+ :warning: **Gerencianet API is under BETA version, meaning that it's not available for all users right now. If you're interested, you can always send an email to
11
+ desenvolvedores@gerencianet.com.br and we'll enable it for your account**
12
+
13
+ ## Installation
14
+
15
+ Add this line to your application's Gemfile:
16
+
17
+ ```ruby
18
+ gem 'gerencianet'
19
+ ```
20
+
21
+ And then execute:
22
+
23
+ ```bash
24
+ $ bundle
25
+ ```
26
+ Or install it yourself as:
27
+
28
+ ```bash
29
+ $ gem install gerencianet
30
+ ```
31
+
32
+ ## Basic usage
33
+
34
+ ```ruby
35
+ require "gerencianet"
36
+
37
+ options = {
38
+ client_id: "client_id",
39
+ client_secret: "client_secret",
40
+ sandbox: true
41
+ }
42
+
43
+ gerencianet = Gerencianet.new(@options)
44
+
45
+ input = {
46
+ items: [{
47
+ name: "Product A",
48
+ value: 1000,
49
+ amount: 2
50
+ }]
51
+ }
52
+
53
+ response = gerencianet.create_charge(input)
54
+ ```
55
+
56
+ ## Tests
57
+
58
+ To run the tests, just run *rspec*:
59
+
60
+ ```bash
61
+ $ rspec
62
+ ```
63
+
64
+ Or use *guard* to watch files and automatically run *rspec*
65
+
66
+ ```bash
67
+ $ guard -n false -c
68
+ ```
69
+
70
+ ## Additional documentation
71
+
72
+ ### Charges
73
+
74
+ - [Creating charges](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/charges.md)
75
+ - [Paying a charge](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/charge-payment.md)
76
+ - [Detailing charges](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/charge-detailing.md)
77
+ - [Updating informations](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/charge-update.md)
78
+
79
+ ### Carnets
80
+
81
+ - [Creating carnets](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/carnets.md)
82
+ - [Detailing carnets](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/carnet-detailing.md)
83
+ - [Updating informations](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/carnet-update.md)
84
+
85
+ ### Subscriptions
86
+
87
+ - [Creating subscriptions](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/subscriptions.md)
88
+ - [Paying a subscription](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/subscription-payment.md)
89
+ - [Detailing subscriptions](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/subscription-detailing.md)
90
+ - [Updating informations](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/subscription-update.md)
91
+
92
+ ### Marketplace
93
+
94
+ - [Creating a marketplace](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/charge-with-marketplace.md)
95
+
96
+ ### Notifications
97
+
98
+ - [Getting notifications](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/notifications.md)
99
+
100
+ ### Payments
101
+
102
+ - [Getting installments](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/installments.md)
103
+
104
+ ### All in one
105
+
106
+ - [Usage](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/docs/all-in-one.md)
107
+
108
+ ## Changelog
109
+
110
+ [CHANGELOG](https://github.com/gerencianet/gn-api-sdk-ruby/tree/master/CHANGELOG.md)
111
+
112
+ ## Contributing
113
+
114
+ Bug reports and pull requests are welcome on GitHub at https://github.com/gerencianet/gn-api-sdk-ruby. This project is intended to be a safe, welcoming space for collaboration.
115
+
116
+ ## License
117
+
118
+ The gem is available as open source under the terms of the [MIT License](LICENSE).
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :spec
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "gerencianet"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+
5
+ bundle install
6
+
7
+ # Do any other automated setup that you need to do here
@@ -0,0 +1,36 @@
1
+ lib = File.expand_path("../lib", __FILE__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+ require "gerencianet/version"
4
+
5
+ files = `git ls-files -z`.split("\x0").reject do |f|
6
+ f.match(%r{^(test|spec|features)/})
7
+ end
8
+
9
+ Gem::Specification.new do |spec|
10
+ spec.name = "gerencianet"
11
+ spec.version = Gerencianet::VERSION
12
+ spec.authors = ["Francisco Carvalho"]
13
+ spec.email = ["desenvolvedores@gerencianet.com.br"]
14
+
15
+ spec.summary = "Gerencianet API Ruby Gem"
16
+ spec.description = "A ruby gem for integration of your backend with the
17
+ payment services provided by Gerencianet"
18
+
19
+ spec.homepage = "https://github.com/gerencianet/gn-api-sdk-ruby"
20
+ spec.license = "MIT"
21
+
22
+ spec.files = files
23
+
24
+ spec.bindir = "exe"
25
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
26
+ spec.require_paths = ["lib"]
27
+
28
+ spec.add_development_dependency "bundler", "~> 1.10", ">= 1.10"
29
+ spec.add_development_dependency "rake", "~> 10.0", ">= 10.0"
30
+ spec.add_development_dependency "rspec", "~> 3.4.0", ">= 3.4.0"
31
+ spec.add_development_dependency "guard-rspec", "~> 4.6.4", ">= 4.6.4"
32
+ spec.add_development_dependency "webmock", "~> 1.22.3", ">= 1.22.3"
33
+ spec.add_development_dependency "rubocop", "~> 0.35.1", ">= 0.35.1"
34
+
35
+ spec.add_runtime_dependency "http", "~> 0.9", ">= 0.9.8"
36
+ end
@@ -0,0 +1,9 @@
1
+ require "gerencianet/version"
2
+ require "gerencianet/endpoints"
3
+
4
+ # Module that just returns an Endpoints instance
5
+ module Gerencianet
6
+ def self.new(options)
7
+ Endpoints.new(options)
8
+ end
9
+ end
@@ -0,0 +1,100 @@
1
+ module Gerencianet
2
+ # Endpoints signatures
3
+ module Constants
4
+ URL = {
5
+ production: "https://api.gerencianet.com.br/v1",
6
+ sandbox: "https://sandbox.gerencianet.com.br/v1"
7
+ }
8
+
9
+ ENDPOINTS = {
10
+ authorize: {
11
+ route: "/authorize",
12
+ method: "post"
13
+ },
14
+ create_charge: {
15
+ route: "/charge",
16
+ method: "post"
17
+ },
18
+ detail_charge: {
19
+ route: "/charge/:id",
20
+ method: "get"
21
+ },
22
+ update_charge_metadata: {
23
+ route: "/charge/:id/metadata",
24
+ method: "put"
25
+ },
26
+ update_billet: {
27
+ route: "/charge/:id/billet",
28
+ method: "put"
29
+ },
30
+ pay_charge: {
31
+ route: "/charge/:id/pay",
32
+ method: "post"
33
+ },
34
+ cancel_charge: {
35
+ route: "/charge/:id/cancel",
36
+ method: "put"
37
+ },
38
+ create_carnet: {
39
+ route: "/carnet",
40
+ method: "post"
41
+ },
42
+ detail_carnet: {
43
+ route: "/carnet/:id",
44
+ method: "get"
45
+ },
46
+ update_parcel: {
47
+ route: "/carnet/:id/parcel/:parcel",
48
+ method: "put"
49
+ },
50
+ update_carnet_metadata: {
51
+ route: "/carnet/:id/metadata",
52
+ method: "put"
53
+ },
54
+ get_notification: {
55
+ route: "/notification/:token",
56
+ method: "get"
57
+ },
58
+ get_plans: {
59
+ route: "/plans",
60
+ method: "get"
61
+ },
62
+ create_plan: {
63
+ route: "/plan",
64
+ method: "post"
65
+ },
66
+ delete_plan: {
67
+ route: "/plan/:id",
68
+ method: "del"
69
+ },
70
+ create_subscription: {
71
+ route: "/plan/:id/subscription",
72
+ method: "post"
73
+ },
74
+ detail_subscription: {
75
+ route: "/subscription/:id",
76
+ method: "get"
77
+ },
78
+ pay_subscription: {
79
+ route: "/subscription/:id/pay",
80
+ method: "post"
81
+ },
82
+ cancel_subscription: {
83
+ route: "/subscription/:id/cancel",
84
+ method: "put"
85
+ },
86
+ update_subscription_metadata: {
87
+ route: "/subscription/:id/metadata",
88
+ method: "put"
89
+ },
90
+ get_installments: {
91
+ route: "/installments",
92
+ method: "get"
93
+ },
94
+ resend_billet: {
95
+ route: "/charge/:id/billet/resend",
96
+ method: "post"
97
+ }
98
+ }
99
+ end
100
+ end
@@ -0,0 +1,133 @@
1
+ require "http"
2
+ require "gerencianet/constants"
3
+ require "gerencianet/status"
4
+
5
+ module Gerencianet
6
+ # Given the constants file, with the endpoints signatures,
7
+ # this class maps each one of them to a concerning function
8
+ class Endpoints
9
+ attr_accessor :token
10
+ attr_reader :endpoints
11
+ attr_reader :urls
12
+ attr_reader :base_url
13
+ attr_reader :options
14
+
15
+ def initialize(options)
16
+ @token = nil
17
+ @options = options
18
+ @endpoints = Constants::ENDPOINTS
19
+ @urls = Constants::URL
20
+ @base_url = current_base_url
21
+
22
+ create_methods
23
+ end
24
+
25
+ private
26
+
27
+ def create_methods
28
+ @endpoints.each do |key, settings|
29
+ self.class.send(:define_method, key) do |params = nil, body = nil|
30
+ create(params, body, settings)
31
+ end
32
+ end
33
+ end
34
+
35
+ def create(params, body, settings)
36
+ authenticate unless @token
37
+
38
+ response = make_request(params, body, settings)
39
+
40
+ if response.status.to_s == STATUS::UNAUTHORIZED
41
+ authenticate
42
+ response = make_request(params, body, settings)
43
+ end
44
+
45
+ response
46
+ end
47
+
48
+ def make_request(params, body, settings)
49
+ url = get_url(params, settings[:route])
50
+
51
+ HTTP
52
+ .headers(accept: "application/json")
53
+ .auth("Bearer #{@token['access_token']}")
54
+ .method(settings[:method])
55
+ .call(url, json: body)
56
+ end
57
+
58
+ def authenticate
59
+ url = get_url({}, @endpoints[:authorize][:route])
60
+
61
+ response =
62
+ HTTP.basic_auth(auth_headers)
63
+ .post(url, json: auth_body)
64
+
65
+ respond(response)
66
+ end
67
+
68
+ def auth_headers
69
+ {
70
+ user: @options[:client_id],
71
+ pass: @options[:client_secret]
72
+ }
73
+ end
74
+
75
+ def auth_body
76
+ {grant_type: :client_credentials}
77
+ end
78
+
79
+ def respond(response)
80
+ if response.status.to_s == STATUS::OK
81
+ begin
82
+ @token = JSON.parse(response)
83
+ rescue JSON::ParserError
84
+ raise "unable to parse server response, not a valid json"
85
+ end
86
+ else
87
+ fail "unable to authenticate"
88
+ end
89
+ end
90
+
91
+ def get_url(params, route)
92
+ params = {} if params.nil?
93
+ route = remove_placeholders(params, route)
94
+ full_url(params, route)
95
+ end
96
+
97
+ def remove_placeholders(params, route)
98
+ regex = /\:(\w+)/
99
+ route.scan(regex).each do |key|
100
+ key = key[0]
101
+ value = params[key.to_sym].to_s
102
+ route = route.gsub(":#{key}", value)
103
+ params.delete(key.to_sym)
104
+ end
105
+
106
+ route
107
+ end
108
+
109
+ def full_url(params, route)
110
+ mapped = map_params(params)
111
+
112
+ if !mapped.empty?
113
+ "#{@base_url}#{route}?#{mapped}"
114
+ else
115
+ "#{@base_url}#{route}"
116
+ end
117
+ end
118
+
119
+ def map_params(params)
120
+ params.map do |key|
121
+ "#{key[0]}=#{key[1]}"
122
+ end.join("&")
123
+ end
124
+
125
+ def current_base_url
126
+ if @options[:sandbox]
127
+ @urls[:sandbox]
128
+ else
129
+ @urls[:production]
130
+ end
131
+ end
132
+ end
133
+ end
@@ -0,0 +1,7 @@
1
+ module Gerencianet
2
+ # HTTP response statuses
3
+ module STATUS
4
+ OK = "200 OK"
5
+ UNAUTHORIZED = "401 Unauthorized"
6
+ end
7
+ end
@@ -0,0 +1,4 @@
1
+ # :nodoc:
2
+ module Gerencianet
3
+ VERSION = "0.0.1"
4
+ end
metadata ADDED
@@ -0,0 +1,203 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: gerencianet
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Francisco Carvalho
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2015-11-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.10'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: '1.10'
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '1.10'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '1.10'
33
+ - !ruby/object:Gem::Dependency
34
+ name: rake
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '10.0'
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: '10.0'
43
+ type: :development
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '10.0'
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: '10.0'
53
+ - !ruby/object:Gem::Dependency
54
+ name: rspec
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: 3.4.0
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: 3.4.0
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: 3.4.0
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: 3.4.0
73
+ - !ruby/object:Gem::Dependency
74
+ name: guard-rspec
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: 4.6.4
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 4.6.4
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 4.6.4
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 4.6.4
93
+ - !ruby/object:Gem::Dependency
94
+ name: webmock
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: 1.22.3
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: 1.22.3
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: 1.22.3
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: 1.22.3
113
+ - !ruby/object:Gem::Dependency
114
+ name: rubocop
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: 0.35.1
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: 0.35.1
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: 0.35.1
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: 0.35.1
133
+ - !ruby/object:Gem::Dependency
134
+ name: http
135
+ requirement: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - "~>"
138
+ - !ruby/object:Gem::Version
139
+ version: '0.9'
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ version: 0.9.8
143
+ type: :runtime
144
+ prerelease: false
145
+ version_requirements: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - "~>"
148
+ - !ruby/object:Gem::Version
149
+ version: '0.9'
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: 0.9.8
153
+ description: |-
154
+ A ruby gem for integration of your backend with the
155
+ payment services provided by Gerencianet
156
+ email:
157
+ - desenvolvedores@gerencianet.com.br
158
+ executables: []
159
+ extensions: []
160
+ extra_rdoc_files: []
161
+ files:
162
+ - ".gitignore"
163
+ - ".rubocop.yml"
164
+ - ".travis.yml"
165
+ - CHANGELOG.md
166
+ - Gemfile
167
+ - Guardfile
168
+ - LICENSE
169
+ - README.md
170
+ - Rakefile
171
+ - bin/console
172
+ - bin/setup
173
+ - gerencianet.gemspec
174
+ - lib/gerencianet.rb
175
+ - lib/gerencianet/constants.rb
176
+ - lib/gerencianet/endpoints.rb
177
+ - lib/gerencianet/status.rb
178
+ - lib/gerencianet/version.rb
179
+ homepage: https://github.com/gerencianet/gn-api-sdk-ruby
180
+ licenses:
181
+ - MIT
182
+ metadata: {}
183
+ post_install_message:
184
+ rdoc_options: []
185
+ require_paths:
186
+ - lib
187
+ required_ruby_version: !ruby/object:Gem::Requirement
188
+ requirements:
189
+ - - ">="
190
+ - !ruby/object:Gem::Version
191
+ version: '0'
192
+ required_rubygems_version: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ version: '0'
197
+ requirements: []
198
+ rubyforge_project:
199
+ rubygems_version: 2.2.2
200
+ signing_key:
201
+ specification_version: 4
202
+ summary: Gerencianet API Ruby Gem
203
+ test_files: []