# File lib/puppet/indirector/indirection.rb, line 239
239:     def search(key, *args)
240:         request = request(:search, key, *args)
241:         terminus = prepare(request)
242: 
243:         if result = terminus.search(request)
244:             raise Puppet::DevError, "Search results from terminus %s are not an array" % terminus.name unless result.is_a?(Array)
245:             result.each do |instance|
246:                 instance.expiration ||= self.expiration
247:             end
248:             return result
249:         end
250:     end