Sha256: 7a8af91a31ed2f13de0f261a11f7d2b5209674a615be460f11e50f99a574cd9a
Contents?: true
Size: 763 Bytes
Versions: 20
Compression:
Stored size: 763 Bytes
Contents
# encoding: utf-8 require 'nimbu-api/utils/all' module Nimbu class Builder # Instantiates a new Nimbu api object # def self.new(klass, options={}, &block) return create_instance(klass, options, &block) if klass raise ArgumentError, 'must provide Endpoint class to be instantiated' end # Passes configuration options to instantiated class # def self.create_instance(klass, options, &block) options.symbolize_keys! convert_to_constant(klass.to_s).new options, &block end # Convert name to constant # def self.convert_to_constant(classes) classes.split('::').inject(Nimbu::Endpoints) do |constant, klass| constant.const_get klass end end end # Builder end # Nimbu
Version data entries
20 entries across 20 versions & 1 rubygems