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