resty 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/bin/resty CHANGED
@@ -18,7 +18,11 @@ href = ARGV.shift
18
18
  object = Resty.href(href)
19
19
 
20
20
  until ARGV.empty?
21
- object = object.send(ARGV.first)
21
+ command = ARGV.shift
22
+ puts "*** #{object._href} <- #{command}"
23
+ # json_puts object
24
+ object = object.send(command)
22
25
  end
23
26
 
27
+ puts "*** #{object._href}"
24
28
  json_puts object
@@ -31,6 +31,8 @@ class Resty
31
31
  else
32
32
  super
33
33
  end
34
+ elsif name =~ /^(.+)\?$/
35
+ !!@attributes[$1]
34
36
  elsif @attributes.key?(name.to_s)
35
37
  @attributes[name.to_s]
36
38
  else
@@ -10,12 +10,12 @@ class Resty::Attributes
10
10
 
11
11
  def key?(name)
12
12
  populate! unless populated?
13
- @data.key?(name)
13
+ @data.key?(name) || @data.key?(camelize_key(name))
14
14
  end
15
15
 
16
16
  def [](name)
17
17
  populate! unless populated?
18
- Resty.wrap(@data[name])
18
+ Resty.wrap(@data[name] || @data[camelize_key(name)])
19
19
  end
20
20
 
21
21
  def populated?
@@ -40,5 +40,11 @@ class Resty::Attributes
40
40
 
41
41
  @actions
42
42
  end
43
+
44
+ private
45
+
46
+ def camelize_key(key)
47
+ key.gsub(/_([a-z])/) { $1.upcase }
48
+ end
43
49
 
44
50
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-06-07 00:00:00.000000000 +10:00
12
+ date: 2011-06-08 00:00:00.000000000 +10:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rest-client
17
- requirement: &18825360 !ruby/object:Gem::Requirement
17
+ requirement: &15296280 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 1.6.3
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *18825360
25
+ version_requirements: *15296280
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: json
28
- requirement: &18824880 !ruby/object:Gem::Requirement
28
+ requirement: &15295800 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: 1.5.1
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *18824880
36
+ version_requirements: *15295800
37
37
  description:
38
38
  email:
39
39
  executables: