resty 0.2.0 → 0.2.1

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.
Files changed (3) hide show
  1. data/bin/resty +7 -2
  2. data/lib/resty/attributes.rb +10 -2
  3. metadata +5 -5
data/bin/resty CHANGED
@@ -21,8 +21,13 @@ until ARGV.empty?
21
21
  command = ARGV.shift
22
22
  puts "*** #{object._href} <- #{command}"
23
23
  # json_puts object
24
- object = object.send(command)
24
+
25
+ if command =~ /^\d+$/
26
+ object = object[command.to_i]
27
+ else
28
+ object = object.send(command)
29
+ end
25
30
  end
26
31
 
27
- puts "*** #{object._href}"
32
+ puts "*** #{object._href if object.respond_to?(:_href)}"
28
33
  json_puts object
@@ -39,12 +39,20 @@ class Resty::Attributes
39
39
  end
40
40
 
41
41
  def populate!
42
- @data = Resty::Transport.request_json(@href)
42
+ new_data = Resty::Transport.request_json(@href)
43
+
44
+ @data = case new_data
45
+ when Array
46
+ { ':href' => @href, ':items' => new_data }
47
+ else
48
+ new_data
49
+ end
50
+
43
51
  @populated = true
44
52
  end
45
53
 
46
54
  def populated_data
47
- populate!
55
+ populate! unless populated?
48
56
  @data
49
57
  end
50
58
 
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.2.0
4
+ version: 0.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rest-client
17
- requirement: &16275520 !ruby/object:Gem::Requirement
17
+ requirement: &15484860 !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: *16275520
25
+ version_requirements: *15484860
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: json
28
- requirement: &16275040 !ruby/object:Gem::Requirement
28
+ requirement: &15484380 !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: *16275040
36
+ version_requirements: *15484380
37
37
  description:
38
38
  email:
39
39
  executables: