find_or_create_resource_in_modules(resource_name, module_names)
private
Tries to find a
resource in a non empty list of nested modules if it fails, then the
resource is created
# File activeresource/lib/active_resource/base.rb, line 1410
def find_or_create_resource_in_modules(resource_name, module_names)
receiver = Object
namespaces = module_names[0, module_names.size-1].map do |module_name|
receiver = receiver.const_get(module_name)
end
const_args = RUBY_VERSION < "1.9" ? [resource_name] : [resource_name, false]
if namespace = namespaces.reverse.detect { |ns| ns.const_defined?(*const_args) }
namespace.const_get(*const_args)
else
create_resource_for(resource_name)
end
end