Class: Lurch::URIBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/lurch/uri_builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(inflector) ⇒ URIBuilder

Returns a new instance of URIBuilder.



3
4
5
# File 'lib/lurch/uri_builder.rb', line 3

def initialize(inflector)
  @inflector = inflector
end

Instance Method Details

#relationship_uri(type, id, relationship_key) ⇒ Object



21
22
23
24
25
26
# File 'lib/lurch/uri_builder.rb', line 21

def relationship_uri(type, id, relationship_key)
  resource = inflector.encode_type(type)
  relationship = inflector.encode_key(relationship_key)
  uri = ::URI.parse("#{resource}/#{id}/relationships/#{relationship}")
  uri.to_s
end

#resource_uri(type, id, query = "") ⇒ Object



14
15
16
17
18
19
# File 'lib/lurch/uri_builder.rb', line 14

def resource_uri(type, id, query = "")
  resource = inflector.encode_type(type)
  uri = ::URI.parse("#{resource}/#{id}")
  uri.query = query unless query.empty?
  uri.to_s
end

#resources_uri(type, query = "") ⇒ Object



7
8
9
10
11
12
# File 'lib/lurch/uri_builder.rb', line 7

def resources_uri(type, query = "")
  resource = inflector.encode_type(type)
  uri = ::URI.parse(resource)
  uri.query = query unless query.empty?
  uri.to_s
end