Sha256: 83a377800ba322420054aef50bc0c40709988a62a2f66709ab8c86de9bcf28cf
Contents?: true
Size: 1.3 KB
Versions: 1
Compression:
Stored size: 1.3 KB
Contents
require "active_support" require "active_support/inflector" require "active_support/core_ext/hash" require "active_support/core_ext/object" require 'quandl/cassinatra/base/model' require 'quandl/cassinatra/base/attributes' require 'quandl/cassinatra/base/validation' require 'quandl/cassinatra/base/search' class Quandl::Cassinatra::Base class << self attr_accessor :url def use(url) self.url = url models_use_her_api! end def her_api Her::API.new.setup url: url do |c| c.use Faraday::Request::UrlEncoded c.use Quandl::Cassinatra::Middleware::ParseJSON c.use Faraday::Adapter::NetHttp end end def url @url ||= 'http://localhost:9292/' end def inherited(subclass) # remember models that inherit from base models << subclass unless models.include?(subclass) # include model behaviour subclass.class_eval do include Quandl::Cassinatra::Base::Model include Quandl::Cassinatra::Base::Attributes include Quandl::Cassinatra::Base::Validation include Quandl::Cassinatra::Base::Search end end def models @@models ||= [] end protected def models_use_her_api! models.each{|m| m.use_api( her_api ) } end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
quandl_cassinatra-0.2.3 | lib/quandl/cassinatra/base.rb |