ocean-rails 1.25.4 → 1.26.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ocean/api_resource.rb +24 -8
- data/lib/ocean/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ed17df413aa988bc3f8fb0657bb64a0badd3e867
|
4
|
+
data.tar.gz: 8d343d76ebad720f9f6848a7dcc8e7ab5ce1df37
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6908a52cc7d59b1925efe758f886625c24061fb0d72b7ffd7731e1e2f6020681380aba8bdc7935aa66b58a726a588d77fa6f42fcbd3aca222b09c43f3b532785
|
7
|
+
data.tar.gz: cfe17eb55a1e0d8b03defc0017c5d61edc69e08243e8cd8044ea05420784ce8a04d155eb1c90de0d1f3b4d27ad0ac331722112dc879c9be905df1d4cda65b064
|
data/lib/ocean/api_resource.rb
CHANGED
@@ -50,15 +50,10 @@ module ApiResource
|
|
50
50
|
index_only.each do |key|
|
51
51
|
val = conds[key]
|
52
52
|
next unless val
|
53
|
-
if ranged_matchers.include?(key)
|
54
|
-
|
55
|
-
from, to = val.split(",")
|
56
|
-
new_conds[key] = Range.new(DateTime.parse(from), DateTime.parse(to))
|
57
|
-
else
|
58
|
-
new_conds[key] = DateTime.parse(val)
|
59
|
-
end
|
53
|
+
if ranged_matchers.include?(key) && val.include?(",")
|
54
|
+
new_conds[key] = parse_range(val)
|
60
55
|
else
|
61
|
-
new_conds[key] = val
|
56
|
+
new_conds[key] = parse_scalar(val)
|
62
57
|
end
|
63
58
|
end
|
64
59
|
conds = new_conds
|
@@ -84,6 +79,27 @@ module ApiResource
|
|
84
79
|
end
|
85
80
|
|
86
81
|
|
82
|
+
def parse_range(val)
|
83
|
+
from, to = val.split(",")
|
84
|
+
Range.new(parse_scalar(from), parse_scalar(to))
|
85
|
+
end
|
86
|
+
|
87
|
+
def parse_scalar(val)
|
88
|
+
case val
|
89
|
+
when ""
|
90
|
+
""
|
91
|
+
when val.to_i.to_s == val
|
92
|
+
val.to_i
|
93
|
+
when val.to_f.to_s == val
|
94
|
+
val.to_f
|
95
|
+
when /[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z/
|
96
|
+
DateTime.parse(val)
|
97
|
+
else
|
98
|
+
val
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
|
87
103
|
#
|
88
104
|
# Returns the latest version for the resource class. E.g.:
|
89
105
|
#
|
data/lib/ocean/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ocean-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.26.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Bengtson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -323,7 +323,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
323
323
|
version: '0'
|
324
324
|
requirements: []
|
325
325
|
rubyforge_project:
|
326
|
-
rubygems_version: 2.
|
326
|
+
rubygems_version: 2.0.7
|
327
327
|
signing_key:
|
328
328
|
specification_version: 4
|
329
329
|
summary: This gem implements common Ocean behaviour for Ruby and Ruby on Rails.
|