class Puppet::ParseErrorWithIssue

Contains an issue code and can be annotated with an environment and a node

Attributes

arguments[R]
basic_message[R]
environment[RW]
issue_code[R]
node[RW]

Public Class Methods

from_issue_and_stack(issue, args = {}) click to toggle source
    # File lib/puppet/error.rb
 95 def self.from_issue_and_stack(issue, args = {})
 96   filename, line = Puppet::Pops::PuppetStack.top_of_stack
 97 
 98   self.new(
 99         issue.format(args),
100         filename,
101         line,
102         nil,
103         nil,
104         issue.issue_code,
105         args)
106 end
new(message, file=nil, line=nil, pos=nil, original=nil, issue_code= nil, arguments = nil) click to toggle source

@param message [String] The error message @param file [String] The path to the file where the error was found @param line [Integer] The line in the file @param pos [Integer] The position on the line @param original [Exception] Original exception @param issue_code [Symbol] The issue code @param arguments [Hash{Symbol=>Object}] Issue arguments

Calls superclass method Puppet::ExternalFileError::new
   # File lib/puppet/error.rb
68 def initialize(message, file=nil, line=nil, pos=nil, original=nil, issue_code= nil, arguments = nil)
69   super(message, file, line, pos, original)
70   @issue_code = issue_code
71   @basic_message = message
72   @arguments = arguments
73 end

Public Instance Methods

to_h() click to toggle source
   # File lib/puppet/error.rb
82 def to_h
83   {
84     :issue_code => issue_code,
85     :message => basic_message,
86     :full_message => to_s,
87     :file => file,
88     :line => line,
89     :pos => pos,
90     :environment => environment.to_s,
91     :node => node.to_s,
92   }
93 end
to_s() click to toggle source
Calls superclass method Puppet::ExternalFileError#to_s
   # File lib/puppet/error.rb
75 def to_s
76   msg = super
77   msg = _("Could not parse for environment %{environment}: %{message}") % { environment: environment, message: msg } if environment
78   msg = _("%{message} on node %{node}") % { message: msg, node: node } if node
79   msg
80 end