Class: Bark
- Inherits:
-
Object
- Object
- Bark
- Defined in:
- lib/bark.rb,
lib/bark/request.rb,
lib/bark/version.rb,
lib/bark/response.rb
Defined Under Namespace
Classes: Error, Request, Response
Constant Summary collapse
- VERSION =
"0.0.2"
Class Method Summary collapse
-
.method_missing(meth, *args, &block) ⇒ Object
TODO: this needs more stress testing.
- .request_class(method) ⇒ Object
Class Method Details
.method_missing(meth, *args, &block) ⇒ Object
TODO: this needs more stress testing
33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/bark.rb', line 33 def self.method_missing(meth, *args, &block) if klass = self.request_class(meth) if args[0].nil? params = {} else params = args[0][:params] end params = {} if params.nil? request = klass.new(method: meth, params: params, &block) Bark::Response.new(request: request).result else super end end |
.request_class(method) ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/bark.rb', line 22 def self.request_class(method) method = method.to_s return Bark::Request::TreeOfLife if method =~ /^tol_/ return Bark::Request::Tnrs if method =~ /^tnrs_/ return Bark::Request::GraphOfLife if method =~ /^gol_/ return Bark::Request::Taxonomy if method =~ /^taxonomy_/ return Bark::Request::Studies if method =~ /^studies_|^get_study/ return false end |