# File lib/puppet/provider/parsedfile.rb, line 251 251: def self.retrieve(path) 252: # XXX We need to be doing something special here in case of failure. 253: text = target_object(path).read 254: if text.nil? or text == "" 255: # there is no file 256: return [] 257: else 258: # Set the target, for logging. 259: old = @target 260: begin 261: @target = path 262: return self.parse(text) 263: rescue Puppet::Error => detail 264: detail.file = @target 265: raise detail 266: ensure 267: @target = old 268: end 269: end 270: end