From 01109dc00357b758c5809708f510bcef6442350b Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Sun, 9 Jul 2017 14:42:46 +0200 Subject: Use class methods scope now that we have multiple --- lib/active_storage/service.rb | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/lib/active_storage/service.rb b/lib/active_storage/service.rb index 021c695a07..86f867c293 100644 --- a/lib/active_storage/service.rb +++ b/lib/active_storage/service.rb @@ -35,21 +35,23 @@ class ActiveStorage::Service extend ActiveSupport::Autoload autoload :Configurator - # Configure an Active Storage service by name from a set of configurations, - # typically loaded from a YAML file. The Active Storage engine uses this - # to set the global Active Storage service when the app boots. - def self.configure(service_name, configurations) - Configurator.build(service_name, configurations) - end + class << self + # Configure an Active Storage service by name from a set of configurations, + # typically loaded from a YAML file. The Active Storage engine uses this + # to set the global Active Storage service when the app boots. + def configure(service_name, configurations) + Configurator.build(service_name, configurations) + end - # Override in subclasses that stitch together multiple services and hence - # need to build additional services using the configurator. - # - # Passes the configurator and all of the service's config as keyword args. - # - # See MirrorService for an example. - def self.build(configurator:, service: nil, **service_config) #:nodoc: - new(**service_config) + # Override in subclasses that stitch together multiple services and hence + # need to build additional services using the configurator. + # + # Passes the configurator and all of the service's config as keyword args. + # + # See MirrorService for an example. + def build(configurator:, service: nil, **service_config) #:nodoc: + new(**service_config) + end end def upload(key, io, checksum: nil) -- cgit v1.2.3