Sha256: 0cb4e3ae308326a0247e1dc68e8d84bcca40b0fb4cb3398c444e9afdc9dd46e6
Contents?: true
Size: 1.26 KB
Versions: 1
Compression:
Stored size: 1.26 KB
Contents
module ApiTaster class Mapper cattr_accessor :last_desc class << self def get(path, params = {}, metadata = {}) map_method(:get, path, params, metadata) end def post(path, params = {}, metadata = {}) map_method(:post, path, params, metadata) end def put(path, params = {}, metadata = {}) map_method(:put, path, params, metadata) end def delete(path, params = {}, metadata = {}) map_method(:delete, path, params, metadata) end def desc(text) self.last_desc = text end private def map_method(method, path, params, metadata) route = Route.find_by_verb_and_path(method, path) if route.nil? Route.obsolete_definitions << { :verb => method, :path => path, :params => params } else Route.supplied_params[route[:id]] ||= [] Route.supplied_params[route[:id]] << ApiTaster.global_params.merge(params) unless last_desc.nil? Route.comments[route[:id]] = last_desc self.last_desc = nil end if metadata.any? Route.metadata[route[:id]] = metadata end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
api_taster-0.5.0 | lib/api_taster/mapper.rb |