Sha256: 6ed7847e3f9b514285f70abc4f1b67ca9e9b3818bd7d92fc9363843497c7b46e

Contents?: true

Size: 1.04 KB

Versions: 25

Compression:

Stored size: 1.04 KB

Contents

module Katello
  class RepositoryTypeManager
    @repository_types = {}
    class << self
      private :new
      attr_reader :repository_types

      # Plugin constructor
      def register(id, &block)
        configured = SETTINGS[:katello][:content_types].nil? || SETTINGS[:katello][:content_types].with_indifferent_access[id]
        if find(id).blank? && configured
          repository_type = ::Katello::RepositoryType.new(id)
          repository_type.instance_eval(&block) if block_given?
          repository_types[id.to_s] = repository_type
        end
      end

      def creatable_repository_types
        repository_types.select do |repo_type, _|
          creatable_by_user?(repo_type)
        end
      end

      def creatable_by_user?(repository_type)
        return false unless (type = find(repository_type))
        type.allow_creation_by_user
      end

      def find(repository_type)
        repository_types[repository_type.to_s]
      end

      def enabled?(repository_type)
        find(repository_type).present?
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
katello-3.11.2 app/services/katello/repository_type_manager.rb
katello-3.10.2 app/services/katello/repository_type_manager.rb
katello-3.10.1.1 app/services/katello/repository_type_manager.rb
katello-3.10.1 app/services/katello/repository_type_manager.rb
katello-3.11.1 app/services/katello/repository_type_manager.rb
katello-3.11.0 app/services/katello/repository_type_manager.rb
katello-3.11.0.rc2 app/services/katello/repository_type_manager.rb
katello-3.11.0.rc1 app/services/katello/repository_type_manager.rb
katello-3.10.0 app/services/katello/repository_type_manager.rb
katello-3.10.0.rc1.1 app/services/katello/repository_type_manager.rb
katello-3.9.1 app/services/katello/repository_type_manager.rb
katello-3.10.0.rc1 app/services/katello/repository_type_manager.rb
katello-3.9.0 app/services/katello/repository_type_manager.rb
katello-3.8.1 app/services/katello/repository_type_manager.rb
katello-3.9.0.rc2 app/services/katello/repository_type_manager.rb
katello-3.9.0.rc1 app/services/katello/repository_type_manager.rb
katello-3.7.1.1 app/services/katello/repository_type_manager.rb
katello-3.7.1 app/services/katello/repository_type_manager.rb
katello-3.8.0 app/services/katello/repository_type_manager.rb
katello-3.8.0.rc3 app/services/katello/repository_type_manager.rb