def find(name, version)
provider_map = platforms[:default].clone
name_sym = name
if name.kind_of?(String)
name.downcase!
name.gsub!(/\s/, "_")
name_sym = name.to_sym
end
if platforms.has_key?(name_sym)
if platforms[name_sym].has_key?(version)
Chef::Log.debug("Platform #{name.to_s} version #{version} found")
if platforms[name_sym].has_key?(:default)
provider_map.merge!(platforms[name_sym][:default])
end
provider_map.merge!(platforms[name_sym][version])
elsif platforms[name_sym].has_key?(:default)
provider_map.merge!(platforms[name_sym][:default])
end
else
Chef::Log.debug("Platform #{name} not found, using all defaults. (Unsupported platform?)")
end
provider_map
end