Files

Class/Module Index [+]

Quicksearch

Chef::ChefFS::FileSystem::ChefRepositoryFileSystemRootDir

Attributes

child_paths[R]
write_pretty_json[RW]

Public Class Methods

new(child_paths) click to toggle source
# File lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb, line 37
def initialize(child_paths)
  super("", nil)
  @child_paths = child_paths
end

Public Instance Methods

can_have_child?(name, is_dir) click to toggle source
# File lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb, line 50
def can_have_child?(name, is_dir)
  child_paths.has_key?(name) && is_dir
end
children() click to toggle source
# File lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb, line 46
def children
  @children ||= child_paths.keys.sort.map { |name| make_child_entry(name) }.select { |child| !child.nil? }
end
create_child(name, file_contents = nil) click to toggle source
# File lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb, line 54
def create_child(name, file_contents = nil)
  child_paths[name].each do |path|
    begin
      Dir.mkdir(path)
    rescue Errno::EEXIST
    end
  end
  child = make_child_entry(name)
  @children = nil
  child
end
fs_description() click to toggle source

Used to print out the filesystem

# File lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb, line 71
def fs_description
  repo_path = File.dirname(child_paths['cookbooks'][0])
  result = "repository at #{repo_path}\n"
  if Chef::Config[:versioned_cookbooks]
    result << "  Multiple versions per cookbook\n"
  else
    result << "  One version per cookbook\n"
  end
  child_paths.each_pair do |name, paths|
    if paths.any? { |path| File.dirname(path) != repo_path }
      result << "  #{name} at #{paths.join(', ')}\n"
    end
  end
  result
end
json_class() click to toggle source
# File lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb, line 66
def json_class
  nil
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.