lib/sitehub/builder.rb in sitehub-0.5.0.alpha7 vs lib/sitehub/builder.rb in sitehub-0.5.0.alpha8
- old
+ new
@@ -5,13 +5,20 @@
class SiteHub
class Builder
include Middleware
extend GetterSetterMethods
- attr_reader :core
- getter_setters :access_logger, :error_logger, :config_server
+ DEFAULT_CACHING_OPTIONS = { expires_in: 30 }.freeze
+ attr_reader :core, :config_server_url, :config_server_caching_options
+ getter_setters :access_logger, :error_logger
+
+ def config_server(url, caching_options: DEFAULT_CACHING_OPTIONS)
+ @config_server_url = url
+ @config_server_caching_options = caching_options
+ end
+
def force_ssl(except: [])
@force_ssl = true
@ssl_exclusions = except
end
@@ -20,10 +27,10 @@
instance_eval(&block) if block
end
def build
add_default_middleware
- use ConfigLoader, config_server if config_server
+ use ConfigLoader, config_server_url, caching_options: config_server_caching_options if config_server_url
apply_middleware(core.build)
end
def add_default_middleware
use Rack::SslEnforcer, except: @ssl_exclusions if @force_ssl