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