droptheplot/adminable

View on GitHub
lib/adminable/resource_collector.rb

Summary

Maintainability
A
0 mins
Test Coverage
module Adminable
  class ResourceCollector
    def initialize(paths)
      @paths = paths
    end

    # Finds all controllers from `app/controllers/adminable` directory
    # @return [Array] of {Adminable::Resource} objects
    def resources
      @paths.map do |resource_path|
        Adminable::Resource.new(
          resource_path.to_s.split('adminable/').last.sub(
            /_controller\.rb$/, ''
          )
        )
      end
    end
  end
end