# File lib/puppet/ssl/host.rb, line 109
109:     def self.search(options = {})
110:         classes = [Key, CertificateRequest, Certificate]
111:         if klass = options[:for]
112:             classlist = [klass].flatten
113:         else
114:             classlist = [Key, CertificateRequest, Certificate]
115:         end
116: 
117:         # Collect the results from each class, flatten them, collect all of the names, make the name list unique,
118:         # then create a Host instance for each one.
119:         classlist.collect { |klass| klass.search }.flatten.collect { |r| r.name }.uniq.collect do |name|
120:             new(name)
121:         end
122:     end