vendored/puppet/lib/puppet/indirector/indirection.rb in bolt-0.15.0 vs vendored/puppet/lib/puppet/indirector/indirection.rb in bolt-0.16.0

- old
+ new

@@ -35,11 +35,11 @@ match.model end # Create and return our cache terminus. def cache - raise(Puppet::DevError, "Tried to cache when no cache class was set") unless cache_class + raise Puppet::DevError, _("Tried to cache when no cache class was set") unless cache_class terminus(cache_class) end # Should we use a cache? def cache? @@ -95,11 +95,11 @@ @termini = {} @cache_class = nil @terminus_class = nil - raise(ArgumentError, "Indirection #{@name} is already defined") if @@indirections.find { |i| i.name == @name } + raise(ArgumentError, _("Indirection %{name} is already defined") % { name: @name }) if @@indirections.find { |i| i.name == @name } @@indirections << self @indirected_class = options.delete(:indirected_class) if mod = options[:extend] extend(mod) @@ -116,11 +116,11 @@ end # Return the singleton terminus for this indirection. def terminus(terminus_name = nil) # Get the name of the terminus. - raise Puppet::DevError, "No terminus specified for #{self.name}; cannot redirect" unless terminus_name ||= terminus_class + raise Puppet::DevError, _("No terminus specified for %{name}; cannot redirect") % { name: self.name } unless terminus_name ||= terminus_class termini[terminus_name] ||= make_terminus(terminus_name) end # This can be used to select the terminus class. @@ -130,11 +130,11 @@ def terminus_class unless @terminus_class if setting = self.terminus_setting self.terminus_class = Puppet.settings[setting] else - raise Puppet::DevError, "No terminus class nor terminus setting was provided for indirection #{self.name}" + raise Puppet::DevError, _("No terminus class nor terminus setting was provided for indirection %{name}") % { name: self.name} end end @terminus_class end @@ -148,13 +148,16 @@ @terminus_class = klass end # This is used by terminus_class= and cache=. def validate_terminus_class(terminus_class) - raise ArgumentError, "Invalid terminus name #{terminus_class.inspect}" unless terminus_class and terminus_class.to_s != "" + unless terminus_class and terminus_class.to_s != "" + raise ArgumentError, _("Invalid terminus name %{terminus_class}") % { terminus_class: terminus_class.inspect } + end unless Puppet::Indirector::Terminus.terminus_class(self.name, terminus_class) - raise ArgumentError, "Could not find terminus #{terminus_class} for indirection #{self.name}" + raise ArgumentError, _("Could not find terminus %{terminus_class} for indirection %{name}") % + { terminus_class: terminus_class, name: self.name } end end # Expire a cached object, if one is cached. Note that we don't actually # remove it, we expire it and write it back out to disk. This way people @@ -264,11 +267,11 @@ def search(key, options={}) request = request(:search, key, nil, options) terminus = prepare(request) if result = terminus.search(request) - raise Puppet::DevError, "Search results from terminus #{terminus.name} are not an array" unless result.is_a?(Array) + raise Puppet::DevError, _("Search results from terminus %{terminus_name} are not an array") % { terminus_name: terminus.name } unless result.is_a?(Array) result.each do |instance| next unless instance.respond_to? :expiration instance.expiration ||= self.expiration end return result @@ -300,11 +303,16 @@ # This is only to authorize via a terminus-specific authorization hook. return unless terminus.respond_to?(:authorized?) unless terminus.authorized?(request) - msg = "Not authorized to call #{request.method} on #{request.description}" - msg += " with #{request.options.inspect}" unless request.options.empty? + msg = if request.options.empty? + _("Not authorized to call %{method} on %{description}") % + { method: request.method, description: request.description } + else + _("Not authorized to call %{method} on %{description} with %{option}") % + { method: request.method, description: request.description, option: request.options.inspect } + end raise ArgumentError, msg end end # Pick the appropriate terminus, check the request's authorization, and return it.