moesif_api 1.2.11 → 1.2.12

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
  SHA256:
3
- metadata.gz: 3ce68e57d6812c89850b82ebd6b115679e360493ae504f5180bce46fa403a038
4
- data.tar.gz: ccc4ed699c94fb6f3a47afe0b6d3e7446aeca388aa1ea60856ee6b9fbc54c8ac
3
+ metadata.gz: 82c4bec20fc7684eae49a376e77b8c9aa699363a796c2549ffa119558c01512e
4
+ data.tar.gz: 53695bc904b48135f366a475aafec75925e0921f41d5229f92396f9338bac0f4
5
5
  SHA512:
6
- metadata.gz: 1eaddf7d9b14d08b417af266b0d003613d5b0e0ecfc747a174d059afca40e8149577160e23e220044d7121ccc49149b73b4f4eea9fbb6998a2c451272971fe1e
7
- data.tar.gz: 7ed4e54c8aa2ef5e06593326d1c5f0bd14db43eb30fb9443862dd6c1073dc9c66e23db99d28926900673f69bed1972cb209214b707e500a5c695bd57c1832b99
6
+ metadata.gz: 23a9bd0ec5b266e5be9fec3cbe65e539a7a550622224f526bc2605b6c008573a7e074b0b7750480b6f6262405de4fc185e16cac3876e43627c0dcf7996f94985
7
+ data.tar.gz: 6787c773e4d18391b3924e8bcde1b615b7653c0b07b6839f2043b8bbf926077d7961913afd844940161ad4c8873cd672ae58ecdeab4accc830bf88ae1448337a
data/README.md CHANGED
@@ -114,62 +114,177 @@ event_model.metadata = metadata
114
114
  response = api_controller.create_event(event_model)
115
115
  ```
116
116
 
117
- ### Update User
117
+ ## Update a Single User
118
118
 
119
- You can also update the metadata for each user. The only required field is user_id
119
+ Create or update a user profile in Moesif.
120
+ The metadata field can be any customer demographic or other info you want to store.
121
+ Only the `userId` field is required.
122
+ For details, visit the [Ruby API Reference](https://www.moesif.com/docs/api?ruby#update-a-user).
120
123
 
121
124
  ```ruby
122
- api_client = MoesifApi::MoesifAPIClient.new(my_application_id)
123
- api_controller = api_client.api
124
-
125
- metadata = JSON.parse('{'\
126
- '"email": "testrubyapi@user.com",'\
127
- '"name": "ruby api user",'\
128
- '"custom": "testdata"'\
129
- '}')
130
-
131
- campaign_model = CampaignModel.new()
132
- campaign_model.utm_source = "Newsletter"
133
- campaign_model.utm_medium = "Email"
125
+ api_client = MoesifApi::MoesifAPIClient.new('YOUR_COLLECTOR_APPLICATION_ID').api
126
+
127
+ metadata = {
128
+ :email => 'john@acmeinc.com',
129
+ :first_name => 'John',
130
+ :last_name => 'Doe',
131
+ :title => 'Software Engineer',
132
+ :salesInfo => {
133
+ :stage => 'Customer',
134
+ :lifetime_value => 24000,
135
+ :accountOwner => 'mary@contoso.com',
136
+ }
137
+ }
138
+
139
+ # Campaign object is optional, but useful if you want to track ROI of acquisition channels
140
+ # See https://www.moesif.com/docs/api#users for campaign schema
141
+ campaign = MoesifApi::CampaignModel.new()
142
+ campaign.utm_source = "google"
143
+ campaign.utm_medium = "cpc"
144
+ campaign.utm_campaign = "adwords"
145
+ campaign.utm_term = "api+tooling"
146
+ campaign.utm_content = "landing"
147
+
148
+ # Only user_id is required.
149
+ # metadata can be any custom object
150
+ user = MoesifApi::UserModel.new()
151
+ user.user_id = "12345"
152
+ user.company_id = "67890" # If set, associate user with a company object
153
+ user.campaign = campaign
154
+ user.metadata = metadata
155
+
156
+ update_user = api_client.update_user(user)
157
+ ```
134
158
 
135
- user_model = UserModel.new()
136
- user_model.modified_time = Time.now.utc.iso8601 # option, default now.
137
- user_model.user_id = "12345" #only required field.
138
- user_model.company_id = "67890"
139
- user_model.metadata = metadata
140
- user_model.campaign = campaign_model
159
+ ## Update Users in Batch
141
160
 
142
- # Perform the API call through the SDK function
143
- response = api_controller.update_user(user_model)
161
+ Similar to UpdateUser, but used to update a list of users in one batch.
162
+ Only the `userId` field is required.
163
+ For details, visit the [Ruby API Reference](https://www.moesif.com/docs/api?ruby#update-users-in-batch).
144
164
 
165
+ ```ruby
166
+ api_client = MoesifApi::MoesifAPIClient.new('YOUR_COLLECTOR_APPLICATION_ID').api
167
+
168
+ users = []
169
+
170
+ metadata = {
171
+ :email => 'john@acmeinc.com',
172
+ :first_name => 'John',
173
+ :last_name => 'Doe',
174
+ :title => 'Software Engineer',
175
+ :salesInfo => {
176
+ :stage => 'Customer',
177
+ :lifetime_value => 24000,
178
+ :accountOwner => 'mary@contoso.com',
179
+ }
180
+ }
181
+
182
+ # Campaign object is optional, but useful if you want to track ROI of acquisition channels
183
+ # See https://www.moesif.com/docs/api#users for campaign schema
184
+ campaign = MoesifApi::CampaignModel.new()
185
+ campaign.utm_source = "google"
186
+ campaign.utm_medium = "cpc"
187
+ campaign.utm_campaign = "adwords"
188
+ campaign.utm_term = "api+tooling"
189
+ campaign.utm_content = "landing"
190
+
191
+ # Only user_id is required.
192
+ # metadata can be any custom object
193
+ user = MoesifApi::UserModel.new()
194
+ user.user_id = "12345"
195
+ user.company_id = "67890" # If set, associate user with a company object
196
+ user.campaign = campaign
197
+ user.metadata = metadata
198
+
199
+ users << user
200
+
201
+ api_client = api_controller.update_users_batch(user_model)
145
202
  ```
146
203
 
147
- ### Update Company
204
+ ## Update a Single Company
148
205
 
149
- You can also update the metadata for each company. The only required field is company_id
206
+ Create or update a company profile in Moesif.
207
+ The metadata field can be any company demographic or other info you want to store.
208
+ Only the `companyId` field is required.
209
+ For details, visit the [Ruby API Reference](https://www.moesif.com/docs/api?ruby#update-a-company).
150
210
 
151
211
  ```ruby
152
- api_client = MoesifApi::MoesifAPIClient.new(my_application_id)
153
- api_controller = api_client.api
212
+ api_client = MoesifApi::MoesifAPIClient.new('YOUR_COLLECTOR_APPLICATION_ID').api
213
+
214
+ metadata = {
215
+ :org_name => 'Acme, Inc',
216
+ :plan_name => 'Free',
217
+ :deal_stage => 'Lead',
218
+ :mrr => 24000,
219
+ :demographics => {
220
+ :alexa_ranking => 500000,
221
+ :employee_count => 47
222
+ }
223
+ }
224
+
225
+ # Campaign object is optional, but useful if you want to track ROI of acquisition channels
226
+ # See https://www.moesif.com/docs/api#update-a-company for campaign schema
227
+ campaign = MoesifApi::CampaignModel.new()
228
+ campaign.utm_source = "google"
229
+ campaign.utm_medium = "cpc"
230
+ campaign.utm_campaign = "adwords"
231
+ campaign.utm_term = "api+tooling"
232
+ campaign.utm_content = "landing"
233
+
234
+ # Only company_id is required.
235
+ # metadata can be any custom object
236
+ company = MoesifApi::CompanyModel.new()
237
+ company.company_id = "67890"
238
+ company.company_domain = "acmeinc.com" # If domain is set, Moesif will enrich your profiles with publicly available info
239
+ company.campaign = campaign
240
+ company.metadata = metadata
241
+
242
+ update_company = api_client.update_company(company)
243
+ ```
154
244
 
155
- metadata = JSON.parse('{'\
156
- '"email": "testrubyapi@user.com",'\
157
- '"name": "ruby api user",'\
158
- '"location": "United States"'\
159
- '}')
160
245
 
161
- campaign_model = CampaignModel.new()
162
- campaign_model.utm_source = "Adwords"
163
- campaign_model.utm_medium = "Twitter"
246
+ ## Update Companies in Batch
164
247
 
165
- company_model = CompanyModel.new()
166
- company_model.modified_time = Time.now.utc.iso8601 # option, default now.
167
- company_model.company_id = "12345" #only required field.
168
- company_model.metadata = metadata
169
- company_model.campaign = campaign_model
248
+ Similar to updateCompany, but used to update a list of companies in one batch.
249
+ Only the `companyId` field is required.
250
+ For details, visit the [Ruby API Reference](https://www.moesif.com/docs/api?ruby#update-companies-in-batch).
170
251
 
171
- # Perform the API call through the SDK function
172
- response = api_controller.update_company(company_model)
252
+ ```ruby
253
+ api_client = MoesifApi::MoesifAPIClient.new('YOUR_COLLECTOR_APPLICATION_ID').api
254
+
255
+ companies = []
256
+
257
+ metadata = {
258
+ :org_name => 'Acme, Inc',
259
+ :plan_name => 'Free',
260
+ :deal_stage => 'Lead',
261
+ :mrr => 24000,
262
+ :demographics => {
263
+ :alexa_ranking => 500000,
264
+ :employee_count => 47
265
+ }
266
+ }
267
+
268
+ # Campaign object is optional, but useful if you want to track ROI of acquisition channels
269
+ # See https://www.moesif.com/docs/api#update-a-company for campaign schema
270
+ campaign = MoesifApi::CampaignModel.new()
271
+ campaign.utm_source = "google"
272
+ campaign.utm_medium = "cpc"
273
+ campaign.utm_campaign = "adwords"
274
+ campaign.utm_term = "api+tooling"
275
+ campaign.utm_content = "landing"
276
+
277
+ # Only company_id is required.
278
+ # metadata can be any custom object
279
+ company = MoesifApi::CompanyModel.new()
280
+ company.company_id = "67890"
281
+ company.company_domain = "acmeinc.com" # If domain is set, Moesif will enrich your profiles with publicly available info
282
+ company.campaign = campaign
283
+ company.metadata = metadata
284
+
285
+ companies << company
286
+
287
+ update_company = api_client.update_companies(companies)
173
288
  ```
174
289
 
175
290
  ## How to build and install manually:
@@ -8,7 +8,7 @@ module MoesifApi
8
8
  # Your Application Id for authentication/authorization
9
9
  @application_id = 'SET_ME'
10
10
 
11
- @version = '1.2.11'
11
+ @version = '1.2.12'
12
12
 
13
13
  # create the getters and setters
14
14
  class << self
@@ -1,4 +1,5 @@
1
-
1
+ require 'zlib'
2
+ require 'net/http'
2
3
 
3
4
  module MoesifApi
4
5
  class ApiController < BaseController
@@ -8,6 +9,43 @@ module MoesifApi
8
9
  @@instance
9
10
  end
10
11
 
12
+ # API Call to send data to Moesif
13
+ # @param [EventModel] body Required [Hash] headers Required [String] url Required
14
+ # @return response and context from the API call
15
+ def send_moesif(url, headers, body)
16
+ begin
17
+ # Gzip the body
18
+ gzip = Zlib::GzipWriter.new(StringIO.new)
19
+ gzip << body.to_json
20
+ gzip_body = gzip.close.string
21
+
22
+ # Add Content-Encoding header
23
+ headers['Content-Encoding'] = 'gzip'
24
+ # Gzip payload
25
+ _request_body = gzip_body
26
+ rescue => e
27
+ # Json payload
28
+ _request_body = body.to_json
29
+ end
30
+
31
+ # Create the HttpRequest object for the call
32
+ _request = @http_client.post url, headers: headers, parameters: _request_body
33
+
34
+ # Call the on_before_request callback
35
+ @http_call_back.on_before_request(_request) if @http_call_back
36
+
37
+ # Invoke the API call and get the response
38
+ _response = @http_client.execute_as_string(_request)
39
+
40
+ # Wrap the request and response in an HttpContext object
41
+ _context = HttpContext.new(_request, _response)
42
+
43
+ # Call the on_after_response callback
44
+ @http_call_back.on_after_response(_context) if @http_call_back
45
+
46
+ return _response, _context
47
+ end
48
+
11
49
  # Add Single API Event Call
12
50
  # @param [EventModel] body Required parameter: Example:
13
51
  # @return void response from the API call
@@ -28,20 +66,8 @@ module MoesifApi
28
66
  'User-Agent' => 'moesifapi-ruby/' + Configuration.version
29
67
  }
30
68
 
31
- # Create the HttpRequest object for the call
32
- _request = @http_client.post _query_url, headers: _headers, parameters: body.to_json
33
-
34
- # Call the on_before_request callback
35
- @http_call_back.on_before_request(_request) if @http_call_back
36
-
37
- # Invoke the API call and get the response
38
- _response = @http_client.execute_as_string(_request)
39
-
40
- # Wrap the request and response in an HttpContext object
41
- _context = HttpContext.new(_request, _response)
42
-
43
- # Call the on_after_response callback
44
- @http_call_back.on_after_response(_context) if @http_call_back
69
+ # Create the HttpRequest object for the call, fetch and wrap the respone in a HttpContext object
70
+ _response, _context = send_moesif(_query_url, _headers, body)
45
71
 
46
72
  # Global error handling using HTTP status codes.
47
73
  validate_response(_context)
@@ -70,20 +96,8 @@ module MoesifApi
70
96
  'User-Agent' => 'moesifapi-ruby/' + Configuration.version
71
97
  }
72
98
 
73
- # Create the HttpRequest object for the call
74
- _request = @http_client.post _query_url, headers: _headers, parameters: body.to_json
75
-
76
- # Call the on_before_request callback
77
- @http_call_back.on_before_request(_request) if @http_call_back
78
-
79
- # Invoke the API call and get the response
80
- _response = @http_client.execute_as_string(_request)
81
-
82
- # Wrap the request and response in an HttpContext object
83
- _context = HttpContext.new(_request, _response)
84
-
85
- # Call the on_after_response callback
86
- @http_call_back.on_after_response(_context) if @http_call_back
99
+ # Create the HttpRequest object for the call, fetch and wrap the respone in a HttpContext object
100
+ _response, _context = send_moesif(_query_url, _headers, body)
87
101
 
88
102
  # Global error handling using HTTP status codes.
89
103
  validate_response(_context)
@@ -112,20 +126,8 @@ module MoesifApi
112
126
  'User-Agent' => 'moesifapi-ruby/' + Configuration.version
113
127
  }
114
128
 
115
- # Create the HttpRequest object for the call
116
- _request = @http_client.post _query_url, headers: _headers, parameters: body.to_json
117
-
118
- # Call the on_before_request callback
119
- @http_call_back.on_before_request(_request) if @http_call_back
120
-
121
- # Invoke the API call and get the response
122
- _response = @http_client.execute_as_string(_request)
123
-
124
- # Wrap the request and response in an HttpContext object
125
- _context = HttpContext.new(_request, _response)
126
-
127
- # Call the on_after_response callback
128
- @http_call_back.on_after_response(_context) if @http_call_back
129
+ # Create the HttpRequest object for the call, fetch and wrap the respone in a HttpContext object
130
+ _response, _context = send_moesif(_query_url, _headers, body)
129
131
 
130
132
  # Global error handling using HTTP status codes.
131
133
  validate_response(_context)
@@ -152,20 +154,8 @@ module MoesifApi
152
154
  'User-Agent' => 'moesifapi-ruby/' + Configuration.version
153
155
  }
154
156
 
155
- # Create the HttpRequest object for the call
156
- _request = @http_client.post _query_url, headers: _headers, parameters: body.to_json
157
-
158
- # Call the on_before_request callback
159
- @http_call_back.on_before_request(_request) if @http_call_back
160
-
161
- # Invoke the API call and get the response
162
- _response = @http_client.execute_as_string(_request)
163
-
164
- # Wrap the request and response in an HttpContext object
165
- _context = HttpContext.new(_request, _response)
166
-
167
- # Call the on_after_response callback
168
- @http_call_back.on_after_response(_context) if @http_call_back
157
+ # Create the HttpRequest object for the call, fetch and wrap the respone in a HttpContext object
158
+ _response, _context = send_moesif(_query_url, _headers, body)
169
159
 
170
160
  # Global error handling using HTTP status codes.
171
161
  validate_response(_context)
@@ -232,20 +222,8 @@ module MoesifApi
232
222
  'User-Agent' => 'moesifapi-ruby/' + Configuration.version
233
223
  }
234
224
 
235
- # Create the HttpRequest object for the call
236
- _request = @http_client.post _query_url, headers: _headers, parameters: body.to_json
237
-
238
- # Call the on_before_request callback
239
- @http_call_back.on_before_request(_request) if @http_call_back
240
-
241
- # Invoke the API call and get the response
242
- _response = @http_client.execute_as_string(_request)
243
-
244
- # Wrap the request and response in an HttpContext object
245
- _context = HttpContext.new(_request, _response)
246
-
247
- # Call the on_after_response callback
248
- @http_call_back.on_after_response(_context) if @http_call_back
225
+ # Create the HttpRequest object for the call, fetch and wrap the respone in a HttpContext object
226
+ _response, _context = send_moesif(_query_url, _headers, body)
249
227
 
250
228
  # Global error handling using HTTP status codes.
251
229
  validate_response(_context)
@@ -271,20 +249,8 @@ module MoesifApi
271
249
  'User-Agent' => 'moesifapi-ruby/' + Configuration.version
272
250
  }
273
251
 
274
- # Create the HttpRequest object for the call
275
- _request = @http_client.post _query_url, headers: _headers, parameters: body.to_json
276
-
277
- # Call the on_before_request callback
278
- @http_call_back.on_before_request(_request) if @http_call_back
279
-
280
- # Invoke the API call and get the response
281
- _response = @http_client.execute_as_string(_request)
282
-
283
- # Wrap the request and response in an HttpContext object
284
- _context = HttpContext.new(_request, _response)
285
-
286
- # Call the on_after_response callback
287
- @http_call_back.on_after_response(_context) if @http_call_back
252
+ # Create the HttpRequest object for the call, fetch and wrap the respone in a HttpContext object
253
+ _response, _context = send_moesif(_query_url, _headers, body)
288
254
 
289
255
  # Global error handling using HTTP status codes.
290
256
  validate_response(_context)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moesif_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.11
4
+ version: 1.2.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Moesif, Inc
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-12-18 00:00:00.000000000 Z
12
+ date: 2020-05-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: test-unit
@@ -60,12 +60,10 @@ extensions: []
60
60
  extra_rdoc_files: []
61
61
  files:
62
62
  - LICENSE
63
- - LICENSE~
64
63
  - README.md
65
64
  - lib/moesif_api.rb
66
65
  - lib/moesif_api/api_helper.rb
67
66
  - lib/moesif_api/configuration.rb
68
- - lib/moesif_api/configuration.rb~
69
67
  - lib/moesif_api/controllers/api_controller.rb
70
68
  - lib/moesif_api/controllers/base_controller.rb
71
69
  - lib/moesif_api/controllers/health_controller.rb
@@ -109,8 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
109
107
  - !ruby/object:Gem::Version
110
108
  version: '0'
111
109
  requirements: []
112
- rubyforge_project:
113
- rubygems_version: 2.7.7
110
+ rubygems_version: 3.0.4
114
111
  signing_key:
115
112
  specification_version: 4
116
113
  summary: moesif_api
data/LICENSE~ DELETED
@@ -1,216 +0,0 @@
1
- Copyright (c) 2018 Moesif, Inc
2
-
3
- Licensed under the Apache License, Version 2.0 (the "License");
4
- you may not use this file except in compliance with the License.
5
- You may obtain a copy of the License at
6
-
7
- http://www.apache.org/licenses/LICENSE-2.0
8
-
9
- Unless required by applicable law or agreed to in writing, software
10
- distributed under the License is distributed on an "AS IS" BASIS,
11
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- See the License for the specific language governing permissions and
13
- limitations under the License.
14
-
15
-
16
- Apache License
17
- Version 2.0, January 2004
18
- http://www.apache.org/licenses/
19
-
20
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
21
-
22
- 1. Definitions.
23
-
24
- "License" shall mean the terms and conditions for use, reproduction,
25
- and distribution as defined by Sections 1 through 9 of this document.
26
-
27
- "Licensor" shall mean the copyright owner or entity authorized by
28
- the copyright owner that is granting the License.
29
-
30
- "Legal Entity" shall mean the union of the acting entity and all
31
- other entities that control, are controlled by, or are under common
32
- control with that entity. For the purposes of this definition,
33
- "control" means (i) the power, direct or indirect, to cause the
34
- direction or management of such entity, whether by contract or
35
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
36
- outstanding shares, or (iii) beneficial ownership of such entity.
37
-
38
- "You" (or "Your") shall mean an individual or Legal Entity
39
- exercising permissions granted by this License.
40
-
41
- "Source" form shall mean the preferred form for making modifications,
42
- including but not limited to software source code, documentation
43
- source, and configuration files.
44
-
45
- "Object" form shall mean any form resulting from mechanical
46
- transformation or translation of a Source form, including but
47
- not limited to compiled object code, generated documentation,
48
- and conversions to other media types.
49
-
50
- "Work" shall mean the work of authorship, whether in Source or
51
- Object form, made available under the License, as indicated by a
52
- copyright notice that is included in or attached to the work
53
- (an example is provided in the Appendix below).
54
-
55
- "Derivative Works" shall mean any work, whether in Source or Object
56
- form, that is based on (or derived from) the Work and for which the
57
- editorial revisions, annotations, elaborations, or other modifications
58
- represent, as a whole, an original work of authorship. For the purposes
59
- of this License, Derivative Works shall not include works that remain
60
- separable from, or merely link (or bind by name) to the interfaces of,
61
- the Work and Derivative Works thereof.
62
-
63
- "Contribution" shall mean any work of authorship, including
64
- the original version of the Work and any modifications or additions
65
- to that Work or Derivative Works thereof, that is intentionally
66
- submitted to Licensor for inclusion in the Work by the copyright owner
67
- or by an individual or Legal Entity authorized to submit on behalf of
68
- the copyright owner. For the purposes of this definition, "submitted"
69
- means any form of electronic, verbal, or written communication sent
70
- to the Licensor or its representatives, including but not limited to
71
- communication on electronic mailing lists, source code control systems,
72
- and issue tracking systems that are managed by, or on behalf of, the
73
- Licensor for the purpose of discussing and improving the Work, but
74
- excluding communication that is conspicuously marked or otherwise
75
- designated in writing by the copyright owner as "Not a Contribution."
76
-
77
- "Contributor" shall mean Licensor and any individual or Legal Entity
78
- on behalf of whom a Contribution has been received by Licensor and
79
- subsequently incorporated within the Work.
80
-
81
- 2. Grant of Copyright License. Subject to the terms and conditions of
82
- this License, each Contributor hereby grants to You a perpetual,
83
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
84
- copyright license to reproduce, prepare Derivative Works of,
85
- publicly display, publicly perform, sublicense, and distribute the
86
- Work and such Derivative Works in Source or Object form.
87
-
88
- 3. Grant of Patent License. Subject to the terms and conditions of
89
- this License, each Contributor hereby grants to You a perpetual,
90
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
91
- (except as stated in this section) patent license to make, have made,
92
- use, offer to sell, sell, import, and otherwise transfer the Work,
93
- where such license applies only to those patent claims licensable
94
- by such Contributor that are necessarily infringed by their
95
- Contribution(s) alone or by combination of their Contribution(s)
96
- with the Work to which such Contribution(s) was submitted. If You
97
- institute patent litigation against any entity (including a
98
- cross-claim or counterclaim in a lawsuit) alleging that the Work
99
- or a Contribution incorporated within the Work constitutes direct
100
- or contributory patent infringement, then any patent licenses
101
- granted to You under this License for that Work shall terminate
102
- as of the date such litigation is filed.
103
-
104
- 4. Redistribution. You may reproduce and distribute copies of the
105
- Work or Derivative Works thereof in any medium, with or without
106
- modifications, and in Source or Object form, provided that You
107
- meet the following conditions:
108
-
109
- (a) You must give any other recipients of the Work or
110
- Derivative Works a copy of this License; and
111
-
112
- (b) You must cause any modified files to carry prominent notices
113
- stating that You changed the files; and
114
-
115
- (c) You must retain, in the Source form of any Derivative Works
116
- that You distribute, all copyright, patent, trademark, and
117
- attribution notices from the Source form of the Work,
118
- excluding those notices that do not pertain to any part of
119
- the Derivative Works; and
120
-
121
- (d) If the Work includes a "NOTICE" text file as part of its
122
- distribution, then any Derivative Works that You distribute must
123
- include a readable copy of the attribution notices contained
124
- within such NOTICE file, excluding those notices that do not
125
- pertain to any part of the Derivative Works, in at least one
126
- of the following places: within a NOTICE text file distributed
127
- as part of the Derivative Works; within the Source form or
128
- documentation, if provided along with the Derivative Works; or,
129
- within a display generated by the Derivative Works, if and
130
- wherever such third-party notices normally appear. The contents
131
- of the NOTICE file are for informational purposes only and
132
- do not modify the License. You may add Your own attribution
133
- notices within Derivative Works that You distribute, alongside
134
- or as an addendum to the NOTICE text from the Work, provided
135
- that such additional attribution notices cannot be construed
136
- as modifying the License.
137
-
138
- You may add Your own copyright statement to Your modifications and
139
- may provide additional or different license terms and conditions
140
- for use, reproduction, or distribution of Your modifications, or
141
- for any such Derivative Works as a whole, provided Your use,
142
- reproduction, and distribution of the Work otherwise complies with
143
- the conditions stated in this License.
144
-
145
- 5. Submission of Contributions. Unless You explicitly state otherwise,
146
- any Contribution intentionally submitted for inclusion in the Work
147
- by You to the Licensor shall be under the terms and conditions of
148
- this License, without any additional terms or conditions.
149
- Notwithstanding the above, nothing herein shall supersede or modify
150
- the terms of any separate license agreement you may have executed
151
- with Licensor regarding such Contributions.
152
-
153
- 6. Trademarks. This License does not grant permission to use the trade
154
- names, trademarks, service marks, or product names of the Licensor,
155
- except as required for reasonable and customary use in describing the
156
- origin of the Work and reproducing the content of the NOTICE file.
157
-
158
- 7. Disclaimer of Warranty. Unless required by applicable law or
159
- agreed to in writing, Licensor provides the Work (and each
160
- Contributor provides its Contributions) on an "AS IS" BASIS,
161
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
162
- implied, including, without limitation, any warranties or conditions
163
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
164
- PARTICULAR PURPOSE. You are solely responsible for determining the
165
- appropriateness of using or redistributing the Work and assume any
166
- risks associated with Your exercise of permissions under this License.
167
-
168
- 8. Limitation of Liability. In no event and under no legal theory,
169
- whether in tort (including negligence), contract, or otherwise,
170
- unless required by applicable law (such as deliberate and grossly
171
- negligent acts) or agreed to in writing, shall any Contributor be
172
- liable to You for damages, including any direct, indirect, special,
173
- incidental, or consequential damages of any character arising as a
174
- result of this License or out of the use or inability to use the
175
- Work (including but not limited to damages for loss of goodwill,
176
- work stoppage, computer failure or malfunction, or any and all
177
- other commercial damages or losses), even if such Contributor
178
- has been advised of the possibility of such damages.
179
-
180
- 9. Accepting Warranty or Additional Liability. While redistributing
181
- the Work or Derivative Works thereof, You may choose to offer,
182
- and charge a fee for, acceptance of support, warranty, indemnity,
183
- or other liability obligations and/or rights consistent with this
184
- License. However, in accepting such obligations, You may act only
185
- on Your own behalf and on Your sole responsibility, not on behalf
186
- of any other Contributor, and only if You agree to indemnify,
187
- defend, and hold each Contributor harmless for any liability
188
- incurred by, or claims asserted against, such Contributor by reason
189
- of your accepting any such warranty or additional liability.
190
-
191
- END OF TERMS AND CONDITIONS
192
-
193
- APPENDIX: How to apply the Apache License to your work.
194
-
195
- To apply the Apache License to your work, attach the following
196
- boilerplate notice, with the fields enclosed by brackets "[]"
197
- replaced with your own identifying information. (Don't include
198
- the brackets!) The text should be enclosed in the appropriate
199
- comment syntax for the file format. We also recommend that a
200
- file or class name and description of purpose be included on the
201
- same "printed page" as the copyright notice for easier
202
- identification within third-party archives.
203
-
204
- Copyright [yyyy] [name of copyright owner]
205
-
206
- Licensed under the Apache License, Version 2.0 (the "License");
207
- you may not use this file except in compliance with the License.
208
- You may obtain a copy of the License at
209
-
210
- http://www.apache.org/licenses/LICENSE-2.0
211
-
212
- Unless required by applicable law or agreed to in writing, software
213
- distributed under the License is distributed on an "AS IS" BASIS,
214
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
215
- See the License for the specific language governing permissions and
216
- limitations under the License.
@@ -1,20 +0,0 @@
1
-
2
-
3
- module MoesifApi
4
- class Configuration
5
- # The base Uri for API calls
6
- @base_uri = 'https://api.moesif.net'
7
-
8
- # Your Application Id for authentication/authorization
9
- @application_id = 'SET_ME'
10
-
11
- @version = '1.2.2'
12
-
13
- # create the getters and setters
14
- class << self
15
- attr_accessor :base_uri
16
- attr_accessor :application_id
17
- attr_accessor :version
18
- end
19
- end
20
- end