113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
# File 'lib/finix/resources/resource.rb', line 113
def fetch(*arguments)
if arguments.nil? or arguments.empty? or arguments[0].nil? or arguments[0].to_s.empty?
href = Finix.hypermedia_registry.key(self)
return Finix::.new href
end
options = arguments.slice!(0) or {}
if options.is_a? String and options =~ URI::regexp
href = options
else
href = Finix.hypermedia_registry.key(self) or Finix.hypermedia_registry.key(self.class)
id = options if options.is_a? String
id = options.delete(:id) if options.is_a? Hash
href = "#{href}/#{id}" unless id.nil?
end
response = Finix.get href
construct_from_response response.body
end
|