Module: Chef::Mixin::ConvertToClassName

Included in:
Cookbook, RecipeDefinitionDSLCore, Provider, Resource, Resource
Defined in:
lib/chef/mixin/convert_to_class_name.rb

Instance Method Summary collapse

Instance Method Details

#convert_to_class_name(str) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/chef/mixin/convert_to_class_name.rb', line 24

def convert_to_class_name(str)
  rname = nil
  regexp = %r{^(.+?)(_(.+))?$}
  
  mn = str.match(regexp)
  if mn
    rname = mn[1].capitalize

    while mn && mn[3]
      mn = mn[3].match(regexp)          
      rname << mn[1].capitalize if mn
    end
  end

  rname
end

#filename_to_qualified_string(base, filename) ⇒ Object



41
42
43
44
# File 'lib/chef/mixin/convert_to_class_name.rb', line 41

def filename_to_qualified_string(base, filename)
  file_base = File.basename(filename, ".rb")
  base.to_s + (file_base == 'default' ? '' : "_#{file_base}")
end