lib/buttercms-ruby.rb in buttercms-ruby-1.1.3 vs lib/buttercms-ruby.rb in buttercms-ruby-1.2.0
- old
+ new
@@ -1,11 +1,9 @@
require 'json'
require 'httparty'
require 'ostruct'
-require "redis"
require 'logger'
-require 'yaml/store'
require_relative 'buttercms/version'
require_relative 'buttercms/hash_to_object'
require_relative 'buttercms/butter_collection'
@@ -15,13 +13,10 @@
require_relative 'buttercms/tag'
require_relative 'buttercms/post'
require_relative 'buttercms/feed'
require_relative 'buttercms/content'
-require_relative 'buttercms/data_store_adapters/yaml'
-require_relative 'buttercms/data_store_adapters/redis'
-
# See https://github.com/jruby/jruby/issues/3113
if RUBY_VERSION < '2.0.0'
require_relative 'core_ext/ostruct'
end
@@ -34,29 +29,31 @@
attr_reader :data_store
attr_writer :logger
end
def self.logger
- @logger ||= Logger.new($stdout).tap do |log|
+ @logger ||= Logger.new($stdout).tap do |log|
log.progname = "ButterCMS"
end
end
def self.data_store=(*args)
args.flatten!
if args.count < 2
raise ArgumentError.new "Wrong number of arguments"
end
-
+
strategy = args.first
options = args.drop(1)
case strategy
when :yaml
+ require_relative 'buttercms/data_store_adapters/yaml'
@data_store = ButterCMS::DataStoreAdapters::Yaml.new(options)
when :redis
+ require_relative 'buttercms/data_store_adapters/redis'
@data_store = ButterCMS::DataStoreAdapters::Redis.new(options)
else
raise ArgumentError.new "Invalid ButterCMS data store #{strategy}"
end
end
@@ -69,11 +66,11 @@
if test_mode
base_options[:test] = 1
end
response = HTTParty.get(
- @api_url + path,
+ @api_url + path,
headers: {"User-Agent" => "ButterCMS/#{ButterCMS::VERSION}"},
query: options.merge(base_options),
verify: false
)
@@ -87,10 +84,10 @@
begin
result = api_request(path, options)
if data_store
- data_store.set(key, result)
+ data_store.set(key, result)
logger.info "Set key #{key}"
end
# TODO - more selective exception handling (RestClient::Exception, SocketError)
rescue Exception => e