adp-connection 0.1.1 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 62d6b14f250856716594127ba787ee41043ae6d7
4
- data.tar.gz: 068cf3fa0ee5516d21f5b1aeaa965629444d8006
3
+ metadata.gz: 70b9a829d790ef8eac502c22efd4f8f2e0feca03
4
+ data.tar.gz: ee67817acde214d485687e092bc1f940db5b167b
5
5
  SHA512:
6
- metadata.gz: 991e1b128591037e20e91f65fc073095b329d0f8adb43bba28972db6e9069d753203803365199914c31bd14ae21d899012d96db40106a721188217794a669bad
7
- data.tar.gz: 0dcb0a81a5d390d238c1b5ce733b8fd438e0bdb610d6b0503098cb2b9811d1d9a1836d1b3eae60d930a23f086b1dcee0ee6268b31757d10e47dda34a923e86b9
6
+ metadata.gz: 67c7ce5885e96a2cc401002723229fd0b02c0fe4736fb150b7be415994a766108f1b7f7e848c6e622e029225163af917695a17a870d6d7f5634a29fd4e7ab1bd
7
+ data.tar.gz: 17412f83d61a86699ad3567c03b2c7a03ea7ea7b2361093773f60f4751dee4c1aee8df8fb8049d6b1a78e495f24202086f0fc54ff81326186ced9bbf41587f7b
@@ -1,4 +1,3 @@
1
-
2
1
  Apache License
3
2
  Version 2.0, January 2004
4
3
  http://www.apache.org/licenses/
@@ -187,7 +186,7 @@
187
186
  same "printed page" as the copyright notice for easier
188
187
  identification within third-party archives.
189
188
 
190
- Copyright (c) 2016 ADP Marketplace, ADP Inc.
189
+ Copyright {yyyy} {name of copyright owner}
191
190
 
192
191
  Licensed under the Apache License, Version 2.0 (the "License");
193
192
  you may not use this file except in compliance with the License.
data/README.md CHANGED
@@ -1,10 +1,58 @@
1
1
  # ADP Connection Client Library for Ruby
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/adp/connection`. To experiment with that code, run `bin/console` for an interactive prompt.
3
+ The ADP Client Connection Library is intended to simplify and aid the process of authenticating, authorizing and connecting to the ADP Marketplace API Gateway. The Library includes a sample application that can be run out-of-the-box to connect to the ADP Marketplace API **test** gateway.
4
+
5
+ ### Version
6
+ 0.1.4 (Beta)
4
7
 
5
8
 
6
9
  ## Installation
7
10
 
11
+ There are two ways of installing and using this library:
12
+
13
+ - Clone the repo from Github: This allows you to access the raw source code of the library as well as provide the ability to run the sample demo client application and view the Library documentation
14
+ - Install & use gem from RubyGems.org(https://rubygems.org/gems/adp-connection): When you are ready to use the library in your own application use this method to install it using gem/bundle
15
+
16
+
17
+ **Clone from Github**
18
+
19
+ You can either use the links on Github or the command line git instructions below to clone the repo.
20
+
21
+ ```sh
22
+
23
+ $ git clone https://github.com/adplabs/adp-connection-ruby.git adp-connection-ruby
24
+
25
+ ```
26
+
27
+ followed by
28
+
29
+ ```sh
30
+
31
+ $ cd adp-connection-ruby
32
+ $ gem install bundler
33
+ $ bundle install
34
+ $ rake -T
35
+ $ rake install:local
36
+
37
+ ```
38
+
39
+ *Run the sample demo client app*
40
+
41
+ ```sh
42
+
43
+ $ cd ./democlient
44
+ $ bundle install
45
+ $ rackup
46
+
47
+ ```
48
+
49
+ This starts an HTTP server on port 8889 (this port must be unused to run the sample application). You can point your browser to http://localhost:8889. The sample app allows you to connect to the ADP test API Gateway using the **client_credentials** and **authorization_code** grant types. For the **authorization_code** connection, you will be asked to provide an ADP username (MKPLDEMO) and password (marketplace1).
50
+
51
+ ***
52
+
53
+
54
+ **Install & use gem from package manager (RubyGems.org)**
55
+
8
56
  Add this line to your application's Gemfile:
9
57
 
10
58
  ```ruby
@@ -14,13 +62,15 @@ gem 'adp-connection'
14
62
  ```
15
63
 
16
64
  And then execute:
17
- ```sh
18
65
 
19
- $ bundle
66
+ ```sh
67
+
68
+ $ bundle install
20
69
 
21
70
  ```
22
71
 
23
72
  Or install it yourself as:
73
+
24
74
  ```sh
25
75
 
26
76
  $ gem install adp-connection
@@ -29,7 +79,7 @@ Or install it yourself as:
29
79
 
30
80
  ## Usage
31
81
 
32
- Start using the library by requireing the gem in your ruby files
82
+ Start using the library by requiring the gem in your ruby files
33
83
 
34
84
  ```ruby
35
85
 
@@ -46,11 +96,130 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
46
96
  A demo client is included that uses the adp-connection gem. Check it out.
47
97
 
48
98
 
49
- ## Contributing
50
- Bug reports and pull requests are welcome on GitHub at https://github.com/adplabs/adp-connection-ruby. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the ADP Marketplace, ADP Inc. code of conduct.
99
+ ## Examples
100
+ ### Create Client Credentials ADP Connection
101
+
102
+ Here is a Sinatra (http://www.sinatrarb.com/) example
103
+
104
+ ```ruby
105
+
106
+ require 'yaml'
107
+ require 'tilt/erb'
108
+ require 'logger'
109
+ require 'adp/connection'
110
+
111
+ clientcredential_config = YAML.load(ERB.new(File.read('config/clientcredential_config.yml')).result)
112
+ authorizationcode_config = YAML.load(ERB.new(File.read('config/authorizationcode_config.yml')).result)
113
+
114
+ configure do
115
+ Log = Logger.new(STDOUT);
116
+ #Logger.new("sinatra.log")
117
+ Log.level = Logger::DEBUG
118
+ end
119
+
120
+ class AdpConnectionRuby < Sinatra::Base
121
+
122
+ enable :sessions
123
+ set :public_folder => "public", :static => true
124
+
125
+ #set :protection, :session => true
126
+ set :port, 8889
127
+
128
+ results = {
129
+ :message => "Welcome",
130
+ :auth_type => nil
131
+ }
132
+
133
+ get '/client_credentials/login' do
134
+ results[:auth_type] = :client_credentials
135
+ results[:message] = nil
136
+ connection = session["ClientCredential"]
137
+ results[:userinfo] = nil
138
+
139
+ if (connection.nil?)
140
+
141
+ # get new connection configuration
142
+ # YAML config object placed in yaml configuration files
143
+ config = YAML.load_file('config/clientcredential_config.yml');
144
+
145
+ if (!config || config.nil?)
146
+ results[:message] = "Unable to load configuration settings from file (config/clientcredential_config.yml)"
147
+ else
148
+ begin
149
+ clientcredential_config = Adp::Connection::ClientCredentialConfiguration.new(config);
150
+
151
+ connection = Adp::Connection::ApiConnectionFactory::createConnection(clientcredential_config)
152
+
153
+ connection.connect();
154
+
155
+ if (!connection.is_connected_indicator?)
156
+ results[:message] = "Error attempting to establish a connection"
157
+ Log.error "Not connected"
158
+ else
159
+ Log.debug("Connected and ready for getting data");
160
+ session["ClientCredential"] = connection;
161
+ end
162
+ end
163
+ end
164
+ end
165
+ erb :client_credentials, :locals => { :view_bag => results }
166
+ end
167
+
168
+ end
169
+
170
+
171
+ ```
172
+
173
+
174
+ ## API Documentation ##
175
+
176
+ Documentation on the individual API calls provided by the library is automatically generated from the library code. To generate the documentation, please complete the following steps:
177
+
178
+ ```
179
+ # not applicable
180
+ ```
181
+
182
+
183
+ ## Tests ##
184
+
185
+ Automated unit tests are available in tests folder. To run the tests, please complete the following steps.
186
+
187
+ ```
188
+ rake spec
189
+ ```
190
+
191
+ The above will also display test results.
192
+
193
+ ## Code Coverage ##
194
+
195
+ ```
196
+ # not applicable
197
+ ```
198
+
199
+ ## Dependencies ##
200
+
201
+ This library has the following **install** dependencies. These are installed automatically as part of the 'bundle install' or 'gem install adp-connection' if they don't exist.
202
+
203
+ * json
204
+
205
+ This library has the following **development/test** dependencies. These are installed automatically as part of the 'bundle install' if they don't exist.
206
+
207
+ * bundler
208
+ * rake
209
+ * rspec
210
+
211
+ ## Contributing ##
212
+
213
+ To contribute to the library, please generate a pull request. Before generating the pull request, please insure the following:
214
+
215
+ 1. Appropriate unit tests have been updated or created.
216
+ 2. Code coverage on the unit tests must be no less than 95%.
217
+ 3. Your code updates have been fully tested.
218
+ 4. Update README.md and API documentation as appropriate.
51
219
 
52
220
  Author: Junior Napier
53
221
 
54
- ## License
222
+ ## License ##
223
+
55
224
  The gem is available as open source under the terms of the Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0).
56
225
 
@@ -8,6 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.version = Adp::Connection::VERSION
9
9
  spec.authors = ["Napier, Junior (CORP)"]
10
10
  spec.email = ["JuniorNapier@GMail.com"]
11
+ # spec.owners = ["ADP Marketplace, ADP Inc."]
11
12
 
12
13
  spec.summary = %q{A library for Ruby that help applications connect to the ADP API Gateway.}
13
14
  spec.description = %q{The ADP Client Connection Library is intended to simplify and aid the process of authenticating, authorizing and connecting to the ADP Marketplace API Gateway. The Library includes a sample application that can be run out-of-the-box to connect to the ADP Marketplace API **test** gateway.}
@@ -0,0 +1,142 @@
1
+ subject=/DC=com/DC=ADP/DC=AD/DC=ES/CN=ADP Internal Issuing CA 01
2
+ issuer=/CN=ADP Internal Policy CA 01
3
+ -----BEGIN CERTIFICATE-----
4
+ MIII4jCCBsqgAwIBAgIKFsJ29gAAAAAAAzANBgkqhkiG9w0BAQwFADAkMSIwIAYD
5
+ VQQDExlBRFAgSW50ZXJuYWwgUG9saWN5IENBIDAxMB4XDTE0MDcxODA1MDkxM1oX
6
+ DTE5MDcxODA1MTkxM1owdzETMBEGCgmSJomT8ixkARkWA2NvbTETMBEGCgmSJomT
7
+ 8ixkARkWA0FEUDESMBAGCgmSJomT8ixkARkWAkFEMRIwEAYKCZImiZPyLGQBGRYC
8
+ RVMxIzAhBgNVBAMTGkFEUCBJbnRlcm5hbCBJc3N1aW5nIENBIDAxMIICIjANBgkq
9
+ hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA7dhzYHoxgb5+Epo6pBNpgFGkHVqF/Vl+
10
+ iALJOIAh4GbAxx2WvLNYV5VHshj9riNFNLoy6XnL7/lkPB5aGallwCUqJH9EkxkY
11
+ a/5ccql8PWQVQEbJTcJ4rCQZzeeIMChFT6FLkxFPbUXG6lktmycDuzS1EmSYM3dW
12
+ paAGMkzs3XAr/d/50iao053fWvrJEJl6fKOud12ICmOt4PQbfAaRLvBBFL0b3v3E
13
+ WhYedPZSkwJtjwJN69QJmrkNMHpUHS4zw+JUOSOXuHhqY9hSd9zIwM9L/3cOArIh
14
+ +bINyVzFs40pPON4lNfK3bvolwzZrzeIkGtlydDFhqzMkeAL2Iz5e62w5MxsZ+o/
15
+ 1jbUkFCJZU0a78paW0BoIL60tDME4Qw9QORHBgro2rOvGSYq2b6vaM/0mc0OWPf4
16
+ 9Ri61gY93607YhrOW76pa7sCFhEziNJ9G0N9R3fzpo+SEG3GC54EZl7LAag/la8e
17
+ SRTj0/uKiXYvwwHvkKixEn1ok9io8c5kN8VxGNc+hZBgRoewL9q96ftpiJlq18E5
18
+ /wnY0nEB/0SQLL7Tpt9JXYIVUrKwVvF9JZFBOq2nSJy0/o3UBrYXGblT82ZQhMhO
19
+ vdOwpAHFruoCJxl2DB/qSULJ6CYWi7Rq7blBvXNKhx90g9zplQ6/R9//fBvPrlB7
20
+ eOdMHPQGX1sCAwEAAaOCA8EwggO9MBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQW
21
+ BBQqCSRfiwi+a3Yo4qkvugtqSgHyQTCBzQYDVR0gBIHFMIHCMIG/BgkrBgEEATIN
22
+ AQIwgbEwgYAGCCsGAQUFBwICMHQeciAdAFUAcwBlACAAbwBmACAAdABoAGkAcwAg
23
+ AFAASwBJACAAaQBzACAAcgBlAHMAZQByAHYAZQBkACAAZgBvAHIAIABhAHUAdABo
24
+ AG8AcgBpAHoAZQBkACAAQQBEAFAAIABVAHMAZQAgAE8ATgBMAFkgHTAsBggrBgEF
25
+ BQcCARYgaHR0cDovL3BraS5lcy5hZC5hZHAuY29tL0NQUy50eHQwGQYJKwYBBAGC
26
+ NxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8C
27
+ AQAwHwYDVR0jBBgwFoAUMTn+ScjaIJTXG1UQqt7tu6FwDagwggEwBgNVHR8EggEn
28
+ MIIBIzCCAR+gggEboIIBF4aB0GxkYXA6Ly8vQ049QURQJTIwSW50ZXJuYWwlMjBQ
29
+ b2xpY3klMjBDQSUyMDAxLENOPVJPU0VQUlBLSVBPTDEsQ049Q0RQLENOPVB1Ymxp
30
+ YyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24s
31
+ ZGM9YWQsZGM9YWRwLGRjPWNvbT9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0P2Jh
32
+ c2U/b2JqZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnSGQmh0dHA6Ly9wa2ku
33
+ ZXMuYWQuYWRwLmNvbS9DRFAvQURQJTIwSW50ZXJuYWwlMjBQb2xpY3klMjBDQSUy
34
+ MDAxLmNybDCCAScGCCsGAQUFBwEBBIIBGTCCARUwgcIGCCsGAQUFBzAChoG1bGRh
35
+ cDovLy9DTj1BRFAlMjBJbnRlcm5hbCUyMFBvbGljeSUyMENBJTIwMDEsQ049QUlB
36
+ LENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZp
37
+ Z3VyYXRpb24sZGM9YWQsZGM9YWRwLGRjPWNvbT9jQUNlcnRpZmljYXRlP2Jhc2U/
38
+ b2JqZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTBOBggrBgEFBQcwAoZC
39
+ aHR0cDovL3BraS5lcy5hZC5hZHAuY29tL0FJQS9BRFAlMjBJbnRlcm5hbCUyMFBv
40
+ bGljeSUyMENBJTIwMDEuY3J0MA0GCSqGSIb3DQEBDAUAA4ICAQCeHTqs9kB5r3Gp
41
+ pa/AfynneZz9vJ60GFE4TgKDaCYeyOgIfn6xwJkLdEXJtHLsAPLATjtaV2nNQvc7
42
+ y4PEa/TipUx7jPK1Sg2EKuE41yQNYH7IqwM2hkKWE4sdDDSnA5JKOGLgidTHE53F
43
+ pjU5k0KY9mLnP3w1iev25M9TFNxBxkVw7LnPLGVPb9Tz9v8BCMfnu7Au4qdrRmaD
44
+ lD7TOjx3nMJrJ8n0nY9RL+FkJjYhE5LENnIT6GFQNmqMJYAisRPessz5XLeRO0hW
45
+ KIMSTxd+zX9Fus2EoNQHP6A4duwVHfHU3497rOjuzfRE0W1vkkErTyS80kQkcmWX
46
+ sPdaNEOOaRbF8bDepHL6sCxzv2DzhT2GE+FssBjMTuDPeYO2o6MUU0c3Qqsn6mCZ
47
+ mM4qTTtpks+bUAQGh4nzvGHlXW0RCo2TjUSUDx9V88x1OLXFG4aCphaZRKnG0b34
48
+ FeJPaW83PPy3qtOuFXsyuHHFVu0dKnr9lat1YAsL4EqJ1a70m3krpuJ+G/fdTsCM
49
+ LzC0m1PagaqBFG/kkGCCKpXJCFqleBpXDOMtDlTEtsB0ym1gMnW71QPgI94iEjwf
50
+ GZyqSdDgz/icw16SbfPQDuf5ArkfcHtgsie8AeBa+oLjMonexzbwylTAC8dCi/09
51
+ EIatLFEeSMbOytAwLUlp7yJPOYig6w==
52
+ -----END CERTIFICATE-----
53
+
54
+ subject=/CN=ADP Internal Policy CA 01
55
+ issuer=/CN=ADP Internal Root CA 01
56
+ -----BEGIN CERTIFICATE-----
57
+ MIIIjjCCBnagAwIBAgIKYc58NQAAAAAAAjANBgkqhkiG9w0BAQwFADAiMSAwHgYD
58
+ VQQDExdBRFAgSW50ZXJuYWwgUm9vdCBDQSAwMTAeFw0xNDA3MTgwNDU0MDhaFw0y
59
+ NDA3MTgwNTA0MDhaMCQxIjAgBgNVBAMTGUFEUCBJbnRlcm5hbCBQb2xpY3kgQ0Eg
60
+ MDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCgcpPaMatAFItY6Xo4
61
+ xcV16BK7nu4oFbwNhOlHpK34cQTYul/afhcrET4M/QlfOLz59sKb78pex3w6ZVV2
62
+ rA5A5qHm4QFys/VxVX7Qefk8g11X9wkjJmzbLy3Q8Ljdc6wBjz0doNJCImotmQnP
63
+ adHP2nArF1sPWNZLSJm3yHsrsbD5ssSf3cJs12SRRP+S16VHe+gwLxAysK+NWgrU
64
+ Cl/V3k8+7BGhRxabmu3ViYmAVBHddK2ah/zsCXPBazjEhIzNVGjcdZfNhhCkVo5D
65
+ 8RY9yLblRAQ8BeVe7iGua0htI4DNmexpNiEy8LGbmwRKFTOe1i8tunYek/w8rwlo
66
+ fDs949zHK7VU1jle3ap/o+rAORf4FvzZj3E6FmiXUcfVQVmiKxtu+WcW//dL5KuM
67
+ EDU8rB8y+AzAxWbLYSemUymYcsEAQwzHyqY2Fn1TIyvEdwd5tJr8Nap16vxLCddk
68
+ 244XPtE+b/2TF2humKrJk7LLzsY9P02SuBSJmMlRxgqD4aRDHCcR+DX1ViPLRRHd
69
+ n6I6IHs+x4vK/X5X5YEwJmtC1A7hDEbyqFFxG5tjjFUHdX6BzBBZUtSVXbtFgH7A
70
+ eJS7al9F0/niCuFq2hLD0V7gAZSR1FpxYVrFR4sJODRuQg0PntblsWHHGSM1hNpt
71
+ 85MsXo0yS89FKQqBJ+VG99xMcQIDAQABo4IDwjCCA74wEAYJKwYBBAGCNxUBBAMC
72
+ AQAwHQYDVR0OBBYEFDE5/knI2iCU1xtVEKre7buhcA2oMIHXBgNVHSAEgc8wgcww
73
+ gckGCSsGAQQBMg0BAjCBuzAsBggrBgEFBQcCARYgaHR0cDovL3BraS5lcy5hZC5h
74
+ ZHAuY29tL0NQUy50eHQwgYoGCCsGAQUFBwICMH4efCAdAFUAcwBlACAAbwBmACAA
75
+ dABoAGkAcwAgAFAASwBJACAAaQBzACAAcgBlAHMAZQByAHYAZQBkACAAZgBvAHIA
76
+ IABhAHUAdABoAG8AcgBpAHoAZQBkACAAQQBEAFAAIABwAHUAcgBwAG8AcwBlAHMA
77
+ IABPAE4ATABZIB0wGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQD
78
+ AgGGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUkaUop0yyS7G+FL9V
79
+ tLaghHrNDBcwggErBgNVHR8EggEiMIIBHjCCARqgggEWoIIBEoaBzWxkYXA6Ly8v
80
+ Q049QURQJTIwSW50ZXJuYWwlMjBSb290JTIwQ0ElMjAwMSxDTj1ST1NFUFJQS0lD
81
+ QTEsQ049Q0RQLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2Vz
82
+ LENOPUNvbmZpZ3VyYXRpb24sZGM9YWQsZGM9YWRwLGRjPWNvbT9jZXJ0aWZpY2F0
83
+ ZVJldm9jYXRpb25MaXN0P2Jhc2U/b2JqZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9u
84
+ UG9pbnSGQGh0dHA6Ly9wa2kuZXMuYWQuYWRwLmNvbS9DRFAvQURQJTIwSW50ZXJu
85
+ YWwlMjBSb290JTIwQ0ElMjAwMS5jcmwwggEjBggrBgEFBQcBAQSCARUwggERMIHA
86
+ BggrBgEFBQcwAoaBs2xkYXA6Ly8vQ049QURQJTIwSW50ZXJuYWwlMjBSb290JTIw
87
+ Q0ElMjAwMSxDTj1BSUEsQ049UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2Vy
88
+ dmljZXMsQ049Q29uZmlndXJhdGlvbixkYz1hZCxkYz1hZHAsZGM9Y29tP2NBQ2Vy
89
+ dGlmaWNhdGU/YmFzZT9vYmplY3RDbGFzcz1jZXJ0aWZpY2F0aW9uQXV0aG9yaXR5
90
+ MEwGCCsGAQUFBzAChkBodHRwOi8vcGtpLmVzLmFkLmFkcC5jb20vQUlBL0FEUCUy
91
+ MEludGVybmFsJTIwUm9vdCUyMENBJTIwMDEuY3J0MA0GCSqGSIb3DQEBDAUAA4IC
92
+ AQBQyclrE2Axmg13/vO3Xo/p8jAlZuWE6w61dwCEFfrR9e4WimMYpacfYkH4BjdS
93
+ zZfi6hpEo0qbdIxIOlTL+jFdeU9cNWC0k7VgEC90BCVgDHwIVHULsvL5LNgEwHjI
94
+ gZQCJWrso+dt4OS5HAOtr7GN5yvUxdgFarqYURi9IvkHYGnrs72J58C2197cbD3g
95
+ y/gLEap2YBFzlqNkmEGdNfKipUrzXfxZuik/fb9BI4spqZybATY9yEgBcODgApjD
96
+ YHJW1NcR6J1Fw24ZHeMJZm3kVxAkIiCgEY6LsW7/QcFYkQY3E+LbtiEwHckKXkCs
97
+ mKnS67nueNjg7Xk+7p/mWyAd0SRYkDJj/UYbVfhKvT2BrbMlnPa86WjTDv7v+JV8
98
+ zci1SwJn363r+pK1hpzykb3oHgbH0pXa46S6AaVA4B7lqPitp3poYtSjpTl2vZiV
99
+ QSgCnqF08BZ23s1n3d0ET+r4ujAV9Muw5waR48ynzsOBXMQ7C/d/xSFTAbAs0UTI
100
+ Ikg0Tmda232s2mPjQWAW+Rnr0lanDhMnn8i0nCRHvfFNp3T4vrrpyKZJfyhYnfOB
101
+ zCL1WP7zIKkrupQchrPPrIF2lK6qgz7HL/ew1c6udZsCjIfUbkFAfUxEyAn92SdC
102
+ 1OsGKQvc/1wZsyrCrEViKj9KxrWTjyGwqssaDdRwaSaTBw==
103
+ -----END CERTIFICATE-----
104
+
105
+ subject=/CN=ADP Internal Root CA 01
106
+ issuer=/CN=ADP Internal Root CA 01
107
+ -----BEGIN CERTIFICATE-----
108
+ MIIGADCCA+igAwIBAgIQQ/qBCPhSl7VL1hxvdZoLajANBgkqhkiG9w0BAQwFADAi
109
+ MSAwHgYDVQQDExdBRFAgSW50ZXJuYWwgUm9vdCBDQSAwMTAeFw0xNDA3MTgwNDQy
110
+ MzVaFw0zNDA3MTgwNDQ5NTRaMCIxIDAeBgNVBAMTF0FEUCBJbnRlcm5hbCBSb290
111
+ IENBIDAxMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvH7AEnfW9+aX
112
+ w5UicLCTXZzdqwEI7cmlG2r51uHNIDpaLVdvwX7k25ALQ0SrivNtCN5LYEQGmRb4
113
+ 1c1cd6DQDcKdHlZtaol7zn0D/aPMoP6cORZR571M1D3sz0bh0kZldh97BXfLXz+0
114
+ iIcJMEN40+8Uqlf146OtV0OS0MZ2GRXgBeDI++09WsZr3B7X+lUm4dD1sokCwNDx
115
+ ID+oP7L65ymfQgB7e69iSAMM6ZV0dCkwlRUwSQ5xSQuZniyVrTOUjUvl+d0luslx
116
+ SKmoln2LYivT2B39hDCXEWDnuWM+VeIs00G04MpEo1/60vQD+i1Nde7igwxVe8i4
117
+ /M5bVT28hWoqoNqLTcH9ssHIRFR56n4g/CgdUbwkeFMV90o9r4hnC/xIefp3UDcO
118
+ Kw/egOVC5idfhs+bqZEyN+aQuZyigIWGwK04a9uWh/VUJVLI52uprptaRG+Vt/6k
119
+ RyOIVlNc8UUjoup4LujaERcVvoda9vxKNRxibMBr4Ow0iOjMYLOLuWWSjLWzco5H
120
+ AzQDou0js1rKyE2e8VXbCT49ScjVUBNiwb4EqyQs+jUVLc2tkbemh9iQ+LWVmkdi
121
+ jCJvMBj07Tj0eJZQCQI2MpktVHi9Pa/GeDH5WfjR1A4KZ4miHK2Ysvke4LGo/Hni
122
+ f2ETVG24hCVQnbI6lAqXRsYv1w/0QFUCAwEAAaOCATAwggEsMAsGA1UdDwQEAwIB
123
+ hjASBgNVHRMBAf8ECDAGAQH/AgECMB0GA1UdDgQWBBSRpSinTLJLsb4Uv1W0tqCE
124
+ es0MFzAQBgkrBgEEAYI3FQEEAwIBADCB1wYDVR0gBIHPMIHMMIHJBgkrBgEEATIN
125
+ AQIwgbswLAYIKwYBBQUHAgEWIGh0dHA6Ly9wa2kuZXMuYWQuYWRwLmNvbS9DUFMu
126
+ dHh0MIGKBggrBgEFBQcCAjB+HnwgHQBVAHMAZQAgAG8AZgAgAHQAaABpAHMAIABQ
127
+ AEsASQAgAGkAcwAgAHIAZQBzAGUAcgB2AGUAZAAgAGYAbwByACAAYQB1AHQAaABv
128
+ AHIAaQB6AGUAZAAgAEEARABQACAAcAB1AHIAcABvAHMAZQBzACAATwBOAEwAWSAd
129
+ MA0GCSqGSIb3DQEBDAUAA4ICAQBnYas0hI4jlYtRyKkwwxIQsdi3dEyMpxsjyvFi
130
+ RfjnolfKQcTeRzObCugZ0CpuGPUsGCoQZb2MP5cp1FgtpF6eX7fl/qy1AhJCuhdW
131
+ zli61iv7CuJDhNziLUPeSBo0ySrTuhJxnCbtLa0+tWpx4yN5HtkCe9qekh3hiiRC
132
+ bfRujgJbar1WtGTwNTKPS3IKw0lcIajy3ieaMHOnFQyPR5nl3so8pUEW3Xi4wIQU
133
+ HSjoOeg45v0mp2XT1zI1ZWWMCkS3ZazX5LIYl8NwcbbD1GrKVvc8MZIoxrjhzxhM
134
+ 6ur5V6RKMgE3/GdjcygpI7dWDau+FFvrydfflQfpNsiBR9rAKRYu40pF6Nc9/vIy
135
+ OwDstVT8+03AVHW53jwB4qcUWnkZnWdN4HmYROWBM8TXJxxU29NL+s5JSMel2yJ+
136
+ RcztGjnVRFgSJ1TtbA95NWUVadkoAKr0TKfT6+y2j4RPjCI5ACWv9gV6cFKgS/Mp
137
+ VmgTo7FrDUJGTCcUe3W5Thr14a4dG0xVxL8we664iELB1xsr4mEQ+oT/avusveWU
138
+ 4jdPc62HPElvBtlQFhbABYxmULRQudYqz6Ut7Ui2gAnHlvuIBHYN1C05bCKWuO3B
139
+ 2Ndph5oVXEFqZGT264vkWyAmETbMapDjLL7hP13dTBQyduhxn3RIC9cT/j7ggrFt
140
+ xjCABQ==
141
+ -----END CERTIFICATE-----
142
+
@@ -2,7 +2,7 @@
2
2
  <p>
3
3
  <strong>Authorization </strong><br/>
4
4
  <a href="/client_credentials" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Client Credential</a> &nbsp; &nbsp;
5
- <span href="authorization_code" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Authentication Code</span>
5
+ <span href="authorization_code" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Authorization Code</span>
6
6
  </p>
7
7
  </div>
8
8
 
@@ -87,4 +87,4 @@ connection.connect()
87
87
  <div class="results_footer" style="">
88
88
  <a href="https://github.com/adplabs/adp-connection-ruby"><img class="sidebar_logo" src="/images/ADP_logo_tagline.png" alt="Marketplace/Ruby/Library" /></a>
89
89
  </div>
90
- </div>
90
+ </div>
@@ -2,7 +2,7 @@
2
2
  <p>
3
3
  <strong>Authorization </strong><br/>
4
4
  <span href="client_credentials" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Client Credential</span> &nbsp; &nbsp;
5
- <a href="/authorization_code" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Authentication Code</a>
5
+ <a href="/authorization_code" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Authorization Code</a>
6
6
  </p>
7
7
  </div>
8
8
 
@@ -2,7 +2,7 @@
2
2
  <p>
3
3
  <strong>Authorization </strong><br/>
4
4
  <a href="/client_credentials" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Client Credential</a> &nbsp; &nbsp;
5
- <a href="/authorization_code" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Authentication Code</a>
5
+ <a href="/authorization_code" style="width:185px;height:32px;display:inline-block;background-color:#ccc;padding:10px 10px 10px 5px;text-align: center;vertical-align: middle;">Authorization Code</a>
6
6
  </p>
7
7
  </div>
8
8
 
@@ -9,6 +9,7 @@ require_relative "connection_exception"
9
9
  require_relative "api_connection"
10
10
  require_relative "client_credential_configuration"
11
11
  require_relative "authorization_code_configuration"
12
+ require_relative "connection/version"
12
13
 
13
14
  module Adp
14
15
  module Connection
@@ -118,15 +119,21 @@ module Adp
118
119
  content_type ||= "application/x-www-form-urlencoded"
119
120
  method ||= 'POST'
120
121
 
121
- Log.debug("URL: #{url}")
122
- Log.debug("Client ID: #{data["client_id"]}")
123
- Log.debug("Client Secret: #{data["client_secret"]}")
124
- Log.debug("Grant Type: #{data["grant_type"]}")
122
+ log = Logger.new(STDOUT)
123
+ log.level = Logger::DEBUG
124
+ log.debug("URL: #{url}")
125
+ log.debug("Client ID: #{data["client_id"]}")
126
+ log.debug("Client Secret: #{data["client_secret"]}")
127
+ log.debug("Grant Type: #{data["grant_type"]}")
125
128
 
129
+ useragent = "adp-connection-ruby/#{Adp::Connection::VERSION}"
126
130
  uri = URI.parse( url );
127
131
  pem = File.read("#{self.connection_configuration.sslCertPath}");
128
132
  key = File.read(self.connection_configuration.sslKeyPath);
129
133
  http = Net::HTTP.new(uri.host, uri.port);
134
+
135
+ log.debug("User agent: #{useragent}")
136
+
130
137
  if (!self.connection_configuration.sslCertPath.nil?)
131
138
  http.use_ssl = true
132
139
  http.cert = OpenSSL::X509::Certificate.new( pem );
@@ -141,6 +148,8 @@ module Adp
141
148
  request = Net::HTTP::Get.new(uri.request_uri)
142
149
  end
143
150
 
151
+ request.initialize_http_header({"User-Agent" => useragent })
152
+
144
153
  request["Content-Type"] = content_type
145
154
 
146
155
  # add credentials if available
@@ -1,5 +1,5 @@
1
1
  module Adp
2
2
  module Connection
3
- VERSION = "0.1.1"
3
+ VERSION = "0.1.4"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adp-connection
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Napier, Junior (CORP)
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-03-08 00:00:00.000000000 Z
11
+ date: 2016-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -81,7 +81,7 @@ files:
81
81
  - ".travis.yml"
82
82
  - CODE_OF_CONDUCT.md
83
83
  - Gemfile
84
- - LICENSE.txt
84
+ - LICENSE
85
85
  - README.md
86
86
  - Rakefile
87
87
  - adp-connection.gemspec
@@ -97,6 +97,8 @@ files:
97
97
  - democlient/config/certs/apiclient_iat.key
98
98
  - democlient/config/certs/apiclient_iat.pem
99
99
  - democlient/config/certs/apiclient_iat.pfx
100
+ - democlient/config/certs/apiclient_iat_chain.der
101
+ - democlient/config/certs/apiclient_iat_chain.pem
100
102
  - democlient/config/clientcredential_config.yml
101
103
  - democlient/public/favicon.ico
102
104
  - democlient/public/images/.gitkeep