monkeylearn 3.1.0 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -3
- data/lib/monkeylearn/classifiers.rb +10 -1
- data/lib/monkeylearn/extractors.rb +10 -1
- data/lib/monkeylearn/param_validation.rb +37 -0
- data/monkeylearn.gemspec +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 50b2d5b17e20cfa4c508355318a6cf08dcf2f3e0
|
4
|
+
data.tar.gz: 310360fa275dea689d86a46b8ddb1f88f4fdc9dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4dc4c7abf0d7d07315af6586d963f65c551f2c26eb9c6e101c4dfad2f5bd004517cee94fc5761ef014f3eaa6a7ce766b6f14d26e23e778230cff561d4ce4b2fe
|
7
|
+
data.tar.gz: 6783eb1b622f2b4ad8e4f32b767519e7443d6bc69d19701a8bb045438193c700a96fe377ddb93e95c6df5441b84958fbbf989d9d60ca56b35a271854ad732f37
|
data/README.md
CHANGED
@@ -353,7 +353,7 @@ Monkeylearn.classifiers.delete('[MODEL_ID]')
|
|
353
353
|
|
354
354
|
|
355
355
|
```ruby
|
356
|
-
Monkeylearn.classifiers.list(page: 1, per_page: 20)
|
356
|
+
Monkeylearn.classifiers.list(page: 1, per_page: 20, order_by: '-created')
|
357
357
|
```
|
358
358
|
|
359
359
|
Optional parameters:
|
@@ -362,11 +362,12 @@ Optional parameters:
|
|
362
362
|
|--------------------|-------------------|-------------------|-------------|
|
363
363
|
|*page* |`Integer` | `1` | Specifies which page to get.|
|
364
364
|
|*per_page* |`Integer` | `20` | Specifies how many items per page will be returned. |
|
365
|
+
|*order_by* |`String or Array` |`'-created'` | Specifies the ordering criteria. It must be a `String` with a valid field name, if you want inverse/descending order of the field prepend a `-` (dash) character. If you want to specify more than one field send an array of such `Strings`. Some valid examples: `is_public`, `'-name'` or `['-is_public', 'name']`. |
|
365
366
|
|
366
367
|
Example:
|
367
368
|
|
368
369
|
```ruby
|
369
|
-
response = Monkeylearn.classifiers.list(page: 1, per_page: 5)
|
370
|
+
response = Monkeylearn.classifiers.list(page: 1, per_page: 5, order_by: '-name')
|
370
371
|
```
|
371
372
|
|
372
373
|
<br>
|
@@ -626,9 +627,10 @@ Parameters:
|
|
626
627
|
|--------------------|-------------------|-------------------|-------------|
|
627
628
|
|*page* |`Integer` | `1` | Specifies which page to get.|
|
628
629
|
|*per_page* |`Integer` | `20` | Specifies how many items per page will be returned. |
|
630
|
+
|*order_by* |`String or Array` |`'-created'` | Specifies the ordering criteria. It must be a `String` with a valid field name, if you want inverse/descending order of the field prepend a `-` (dash) character. If you want to specify more than one field send an array of such `Strings`. Some valid examples: `is_public`, `'-name'` or `['-is_public', 'name']`. |
|
629
631
|
|
630
632
|
Example:
|
631
633
|
|
632
634
|
```ruby
|
633
|
-
response = Monkeylearn.extractors.list(page: 1)
|
635
|
+
response = Monkeylearn.extractors.list(page: 1, order_by: '-name')
|
634
636
|
```
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'monkeylearn/requests'
|
2
|
+
require 'monkeylearn/param_validation'
|
2
3
|
|
3
4
|
module Monkeylearn
|
4
5
|
class << self
|
@@ -54,7 +55,15 @@ module Monkeylearn
|
|
54
55
|
end
|
55
56
|
|
56
57
|
def list(options = {})
|
57
|
-
|
58
|
+
if options.key?(:order_by)
|
59
|
+
options[:order_by] = validate_order_by_param(options[:order_by])
|
60
|
+
end
|
61
|
+
query_params = {
|
62
|
+
page: options[:page],
|
63
|
+
per_page: options[:per_page],
|
64
|
+
order_by: options[:order_by]
|
65
|
+
}.delete_if { |k,v| v.nil? }
|
66
|
+
request(:get, build_endpoint, nil, query_params)
|
58
67
|
end
|
59
68
|
|
60
69
|
def create(name, options = {})
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'monkeylearn/requests'
|
2
|
+
require 'monkeylearn/param_validation'
|
2
3
|
|
3
4
|
module Monkeylearn
|
4
5
|
class << self
|
@@ -50,7 +51,15 @@ module Monkeylearn
|
|
50
51
|
end
|
51
52
|
|
52
53
|
def list(options = {})
|
53
|
-
|
54
|
+
if options.key?(:order_by)
|
55
|
+
options[:order_by] = validate_order_by_param(options[:order_by])
|
56
|
+
end
|
57
|
+
query_params = {
|
58
|
+
page: options[:page],
|
59
|
+
per_page: options[:per_page],
|
60
|
+
order_by: options[:order_by]
|
61
|
+
}.delete_if { |k,v| v.nil? }
|
62
|
+
request(:get, build_endpoint, nil, query_params)
|
54
63
|
end
|
55
64
|
|
56
65
|
def detail(module_id)
|
@@ -0,0 +1,37 @@
|
|
1
|
+
def validate_order_by_param(order_by_param)
|
2
|
+
def validate_order_by_param_field(field_string)
|
3
|
+
if field_string .include? ','
|
4
|
+
raise MonkeylearnError, "Invalid ',' (comma) character found in 'order_by' fieldname '#{field_string}', try sending a list of strings if you need to specify multiple fields"
|
5
|
+
elsif field_string !~ /^-?[a-z_]+$/
|
6
|
+
raise MonkeylearnError, "Invalid characters found in 'order_by fieldname '#{field_string}'"
|
7
|
+
end
|
8
|
+
field_string
|
9
|
+
end
|
10
|
+
|
11
|
+
order_by = []
|
12
|
+
if order_by_param.is_a? String
|
13
|
+
order_by.push(validate_order_by_param_field(order_by_param))
|
14
|
+
elsif order_by_param.respond_to? 'each'
|
15
|
+
if order_by_param.length < 1
|
16
|
+
raise MonkeylearnError, "'order_by' parameter must be a non empty list of strings, an empty list was found"
|
17
|
+
end
|
18
|
+
seen_fields = {}
|
19
|
+
order_by_param.each do |order_by_field|
|
20
|
+
field_name = order_by_field
|
21
|
+
if field_name[0] == '-'
|
22
|
+
field_name = field_name[1..-1]
|
23
|
+
end
|
24
|
+
if seen_fields.key? field_name
|
25
|
+
raise MonkeylearnError, "'order_by' parameter must be a list unique field names, duplicated fields where found: '#{field_name}'."
|
26
|
+
end
|
27
|
+
seen_fields[field_name] = true
|
28
|
+
|
29
|
+
order_by.push(validate_order_by_param_field(order_by_field))
|
30
|
+
end
|
31
|
+
order_by
|
32
|
+
else
|
33
|
+
raise MonkeylearnError, "'order_by' param must be a string or a list of strings"
|
34
|
+
end
|
35
|
+
|
36
|
+
return order_by.join(',')
|
37
|
+
end
|
data/monkeylearn.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ['hello@monkeylearn.com']
|
11
11
|
spec.homepage = 'https://github.com/monkeylearn/monkeylearn-ruby'
|
12
12
|
|
13
|
-
spec.version = '3.
|
13
|
+
spec.version = '3.2.0'
|
14
14
|
|
15
15
|
spec.add_dependency 'faraday', '>= 0.9.2', '<= 0.15.0'
|
16
16
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: monkeylearn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Monkeylearn
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-07-
|
11
|
+
date: 2018-07-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -44,6 +44,7 @@ files:
|
|
44
44
|
- lib/monkeylearn/defaults.rb
|
45
45
|
- lib/monkeylearn/exceptions.rb
|
46
46
|
- lib/monkeylearn/extractors.rb
|
47
|
+
- lib/monkeylearn/param_validation.rb
|
47
48
|
- lib/monkeylearn/requests.rb
|
48
49
|
- lib/monkeylearn/response.rb
|
49
50
|
- monkeylearn.gemspec
|