lib/avm/registry.rb in avm-0.21.0 vs lib/avm/registry.rb in avm-0.22.0

- old
+ new

@@ -7,10 +7,12 @@ module Registry require_sub __FILE__ enable_listable lists.add_symbol :category, :instance_stereotypes, :runners, :scms, :sources + WITH_PATH = [CATEGORY_SCMS, CATEGORY_SOURCES].freeze + class << self enable_simple_cache # @return [Array<Avm::Registry::Base>] def registries @@ -19,10 +21,18 @@ private ::Avm::Registry.lists.category.each_value do |category| define_method "#{category}_uncached" do - ::Avm::Registry::Base.new(category.to_s.camelize) + registry_class(category).new(category.to_s.camelize) + end + end + + def registry_class(category) + if WITH_PATH.include?(category) + ::Avm::Registry::WithPath + else + ::Avm::Registry::Base end end end end end