177: def query
178: Puppet.debug "portupgrade.query() - Called on #{@resource[:name]}"
179:
180: cmdline = ["-qO", @resource[:name]]
181: begin
182: output = portinfo(*cmdline)
183: rescue Puppet::ExecutionFailure
184: raise Puppet::Error.new(output)
185: end
186:
187:
188: if output =~ /^(\S+)-([^-\s]+)/
189:
190: hash = Hash.new
191: hash[:portorigin] = self.name
192: hash[:portname] = $1
193: hash[:ensure] = $2
194:
195:
196:
197:
198:
199: return hash
200: else
201: Puppet.debug "portupgrade.query() - package (#{@resource[:name]}) not installed"
202: return nil
203: end
204:
205: end