Sha256: 62ea0d32075a79732ef4aef424d4258a13c37eede1b566b7485316364333b4c0

Contents?: true

Size: 985 Bytes

Versions: 2

Compression:

Stored size: 985 Bytes

Contents

require 'active_support/core_ext/module/delegation'
require 'active_support/core_ext/module/attribute_accessors'

module Ecm
  module Core
    module Backend
      module Configuration
        def configure
          yield self
        end

        mattr_accessor :registered_controllers do
          lambda do
            [
              # Ecm::Contact::Backend::FoosController
            ]
          end
        end

        mattr_accessor :registered_services do
          lambda do
            []
          end
        end

        mattr_accessor(:enable_active_storage_backend) { false }
        mattr_accessor(:enable_delayed_job_backend) { false }

        def self.registered_controllers
          rc = @@registered_controllers.call
          rc.reject! { |c| c.name =~ /.*ActiveStorage.*/ } unless enable_active_storage_backend
          rc.reject! { |c| c.name =~ /.*Delayed.*/ } unless enable_delayed_job_backend
          -> { rc }
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ecm_core-0.4.0 lib/ecm/core/backend/configuration.rb
ecm_core-0.3.0 lib/ecm/core/backend/configuration.rb