class Innate::URLMap

Public Class Methods

new(map = {}) click to toggle source
Calls superclass method
# File lib/innate/dynamap.rb, line 3
def initialize(map = {})
  @originals = map
  super
end

Public Instance Methods

at(location) click to toggle source
# File lib/innate/dynamap.rb, line 26
def at(location)
  @originals[location]
end
call(env) click to toggle source
Calls superclass method
# File lib/innate/dynamap.rb, line 38
def call(env)
  raise "Nothing mapped yet" if @originals.empty?
  super
end
delete(location) click to toggle source
# File lib/innate/dynamap.rb, line 21
def delete(location)
  @originals.delete(location)
  remap(@originals)
end
map(location, object) click to toggle source
# File lib/innate/dynamap.rb, line 16
def map(location, object)
  return unless location and object
  remap(@originals.merge(location.to_s => object))
end
remap(map) click to toggle source

super may raise when given invalid locations, so we only replace the `@originals` if we are sure the new map is valid

Calls superclass method
# File lib/innate/dynamap.rb, line 10
def remap(map)
  value = super
  @originals = map
  value
end
to(object) click to toggle source
# File lib/innate/dynamap.rb, line 30
def to(object)
  @originals.invert[object]
end
to_hash() click to toggle source
# File lib/innate/dynamap.rb, line 34
def to_hash
  @originals.dup
end