class Chef::Formatters::Base

Formatters::Base

Base class that all formatters should inherit from.

Attributes

err[R]
out[R]
output[R]

Public Class Methods

cli_name(name) click to toggle source
# File lib/chef/formatters/base.rb, line 66
def self.cli_name(name)
  Chef::Formatters.register(name, self)
end
new(out, err) click to toggle source
# File lib/chef/formatters/base.rb, line 74
def initialize(out, err)
  @output = IndentableOutputStream.new(out, err)
end

Public Instance Methods

attribute_file_load_failed(path, exception) click to toggle source

Delegates to file_load_failed

# File lib/chef/formatters/base.rb, line 191
def attribute_file_load_failed(path, exception)
  file_load_failed(path, exception)
end
attribute_file_loaded(path) click to toggle source

Delegates to file_loaded

# File lib/chef/formatters/base.rb, line 186
def attribute_file_loaded(path)
  file_loaded(path)
end
cookbook_resolution_failed(expanded_run_list, exception) click to toggle source
# File lib/chef/formatters/base.rb, line 128
def cookbook_resolution_failed(expanded_run_list, exception)
  description = ErrorMapper.cookbook_resolution_failed(expanded_run_list, exception)
  display_error(description)
end
cookbook_sync_failed(cookbooks, exception) click to toggle source
# File lib/chef/formatters/base.rb, line 133
def cookbook_sync_failed(cookbooks, exception)
  description = ErrorMapper.cookbook_sync_failed(cookbooks, exception)
  display_error(description)
end
definition_file_load_failed(path, exception) click to toggle source

Delegates to file_load_failed

# File lib/chef/formatters/base.rb, line 201
def definition_file_load_failed(path, exception)
  file_load_failed(path, exception)
end
definition_file_loaded(path) click to toggle source

Delegates to file_loaded

# File lib/chef/formatters/base.rb, line 196
def definition_file_loaded(path)
  file_loaded(path)
end
display_error(description) click to toggle source

Input: a Formatters::ErrorDescription object. Outputs error to STDOUT.

# File lib/chef/formatters/base.rb, line 107
def display_error(description)
  puts("")
  description.display(output)
end
file_load_failed(path, exception) click to toggle source

Generic callback for any attribute/library/lwrp/recipe file throwing an exception when loaded. Default behavior is to use CompileErrorInspector to print contextual info about the failure.

# File lib/chef/formatters/base.rb, line 155
def file_load_failed(path, exception)
  description = ErrorMapper.file_load_failed(path, exception)
  display_error(description)
end
file_loaded(path) click to toggle source

Generic callback for any attribute/library/lwrp/recipe file in a cookbook getting loaded. The per-filetype callbacks for file load are overriden so that they call this instead. This means that a subclass of Formatters::Base can implement file_loaded to do the same thing for every kind of file that Chef loads from a recipe instead of implementing all the per-filetype callbacks.

# File lib/chef/formatters/base.rb, line 149
def file_loaded(path)
end
indent_by(amount) click to toggle source
# File lib/chef/formatters/base.rb, line 94
def indent_by(amount)
  @output.indent += amount
  if @output.indent < 0
    # This is left commented out for now.  We need to uncomment it and fix at least one bug in
    # the formatter, and then leave this line uncommented in the future.
    #Chef::Log.warn "Internal Formatter Error -- Attempt to indent by negative number of spaces"
    @output.indent = 0
  end
  @output.indent
end
library_file_load_failed(path, exception) click to toggle source

Delegates to file_load_failed

# File lib/chef/formatters/base.rb, line 171
def library_file_load_failed(path, exception)
  file_load_failed(path, exception)
end
library_file_loaded(path) click to toggle source

Delegates to file_loaded

# File lib/chef/formatters/base.rb, line 166
def library_file_loaded(path)
  file_loaded(path)
end
lwrp_file_load_failed(path, exception) click to toggle source

Delegates to file_load_failed

# File lib/chef/formatters/base.rb, line 181
def lwrp_file_load_failed(path, exception)
  file_load_failed(path, exception)
end
lwrp_file_loaded(path) click to toggle source

Delegates to file_loaded

# File lib/chef/formatters/base.rb, line 176
def lwrp_file_loaded(path)
  file_loaded(path)
end
node_load_failed(node_name, exception, config) click to toggle source
# File lib/chef/formatters/base.rb, line 118
def node_load_failed(node_name, exception, config)
  description = ErrorMapper.node_load_failed(node_name, exception, config)
  display_error(description)
end
print(*args) click to toggle source
puts(*args) click to toggle source
# File lib/chef/formatters/base.rb, line 78
def puts(*args)
  @output.puts(*args)
end
puts_line(*args) click to toggle source
# File lib/chef/formatters/base.rb, line 86
def puts_line(*args)
  @output.puts_line(*args)
end
recipe_file_load_failed(path, exception) click to toggle source

Delegates to file_load_failed

# File lib/chef/formatters/base.rb, line 211
def recipe_file_load_failed(path, exception)
  file_load_failed(path, exception)
end
recipe_file_loaded(path) click to toggle source

Delegates to file_loaded

# File lib/chef/formatters/base.rb, line 206
def recipe_file_loaded(path)
  file_loaded(path)
end
recipe_not_found(exception) click to toggle source
# File lib/chef/formatters/base.rb, line 160
def recipe_not_found(exception)
  description = ErrorMapper.file_load_failed(nil, exception)
  display_error(description)
end
registration_failed(node_name, exception, config) click to toggle source
# File lib/chef/formatters/base.rb, line 112
def registration_failed(node_name, exception, config)
  #A Formatters::ErrorDescription object
  description = ErrorMapper.registration_failed(node_name, exception, config)
  display_error(description)
end
resource_failed(resource, action, exception) click to toggle source
# File lib/chef/formatters/base.rb, line 138
def resource_failed(resource, action, exception)
  description = ErrorMapper.resource_failed(resource, action, exception)
  display_error(description)
end
run_list_expand_failed(node, exception) click to toggle source
# File lib/chef/formatters/base.rb, line 123
def run_list_expand_failed(node, exception)
  description = ErrorMapper.run_list_expand_failed(node, exception)
  display_error(description)
end
start_line(*args) click to toggle source
# File lib/chef/formatters/base.rb, line 90
def start_line(*args)
  @output.start_line(*args)
end