Rails 4 finder conversions

MSP-12017

* covert all(options), mapping options hashes to the
  appropirate Rails 4 methods
This commit is contained in:
Sonny Gonzalez 2015-02-06 13:51:48 -06:00
parent 036cb77dd0
commit 0fc4e09466
No known key found for this signature in database
GPG Key ID: 578097F7CA93BCE5
1 changed files with 16 additions and 20 deletions

View File

@ -55,7 +55,7 @@ private
return hosts if opts[:addresses].class != Array return hosts if opts[:addresses].class != Array
conditions = {} conditions = {}
conditions[:address] = opts[:addresses] conditions[:address] = opts[:addresses]
hent = wspace.hosts.all(:conditions => conditions) hent = wspace.hosts.where(conditions)
hosts |= hent if hent.class == Array hosts |= hent if hent.class == Array
end end
return hosts return hosts
@ -73,7 +73,7 @@ private
conditions = {} conditions = {}
conditions[:port] = opts[:port] if opts[:port] conditions[:port] = opts[:port] if opts[:port]
conditions[:proto] = opts[:proto] if opts[:proto] conditions[:proto] = opts[:proto] if opts[:proto]
sret = h.services.all(:conditions => conditions) sret = h.services.where(conditions)
next if sret == nil next if sret == nil
services |= sret if sret.class == Array services |= sret if sret.class == Array
services << sret if sret.class == ::Mdm::Service services << sret if sret.class == ::Mdm::Service
@ -85,7 +85,7 @@ private
conditions = {} conditions = {}
conditions[:port] = opts[:port] if opts[:port] conditions[:port] = opts[:port] if opts[:port]
conditions[:proto] = opts[:proto] if opts[:proto] conditions[:proto] = opts[:proto] if opts[:proto]
sret = wspace.services.all(:conditions => conditions) sret = wspace.services.where(conditions)
services |= sret if sret.class == Array services |= sret if sret.class == Array
services << sret if sret.class == ::Mdm::Service services << sret if sret.class == ::Mdm::Service
end end
@ -189,8 +189,7 @@ public
ret = {} ret = {}
ret[:hosts] = [] ret[:hosts] = []
wspace.hosts.all(:conditions => conditions, :order => :address, wspace.hosts.where(conditions).offset(offset).order(:address).limit(limit).each do |h|
:limit => limit, :offset => offset).each do |h|
host = {} host = {}
host[:created_at] = h.created_at.to_i host[:created_at] = h.created_at.to_i
host[:address] = h.address.to_s host[:address] = h.address.to_s
@ -226,8 +225,7 @@ public
ret = {} ret = {}
ret[:services] = [] ret[:services] = []
wspace.services.all(:include => :host, :conditions => conditions, wspace.services.includes(:host).where(conditions).offset(offset).limit(limit).each do |s|
:limit => limit, :offset => offset).each do |s|
service = {} service = {}
host = s.host host = s.host
service[:host] = host.address || "unknown" service[:host] = host.address || "unknown"
@ -258,7 +256,7 @@ public
ret = {} ret = {}
ret[:vulns] = [] ret[:vulns] = []
wspace.vulns.all(:include => :service, :conditions => conditions, :limit => limit, :offset => offset).each do |v| wspace.vulns.includes(:service).where(conditions).offset(offset).limit(limit).each do |v|
vuln = {} vuln = {}
reflist = v.refs.map { |r| r.name } reflist = v.refs.map { |r| r.name }
if(v.service) if(v.service)
@ -423,7 +421,7 @@ public
conditions[:proto] = opts[:proto] if opts[:proto] conditions[:proto] = opts[:proto] if opts[:proto]
conditions[:port] = opts[:port] if opts[:port] conditions[:port] = opts[:port] if opts[:port]
conditions[:name] = opts[:names] if opts[:names] conditions[:name] = opts[:names] if opts[:names]
sret = wspace.services.all(:conditions => conditions, :order => "hosts.address, port") sret = wspace.services.where(conditions).order("hosts.address, port")
else else
sret = host.services sret = host.services
end end
@ -564,8 +562,7 @@ public
ret = {} ret = {}
ret[:notes] = [] ret[:notes] = []
wspace.notes.all(:include => [:host, :service], :conditions => conditions, wspace.notes.includes(:host, :service).where(conditions).offset(offset).limit(limit).each do |n|
:limit => limit, :offset => offset).each do |n|
note = {} note = {}
note[:time] = n.created_at.to_i note[:time] = n.created_at.to_i
note[:host] = "" note[:host] = ""
@ -737,7 +734,7 @@ public
elsif opts[:addresses] elsif opts[:addresses]
return { :result => 'failed' } if opts[:addresses].class != Array return { :result => 'failed' } if opts[:addresses].class != Array
conditions = { :address => opts[:addresses] } conditions = { :address => opts[:addresses] }
hent = wspace.hosts.all(:conditions => conditions) hent = wspace.hosts.where(conditions)
return { :result => 'failed' } if hent == nil return { :result => 'failed' } if hent == nil
hosts |= hent if hent.class == Array hosts |= hent if hent.class == Array
hosts << hent if hent.class == ::Mdm::Host hosts << hent if hent.class == ::Mdm::Host
@ -749,7 +746,7 @@ public
conditions = {} conditions = {}
conditions[:port] = opts[:port] if opts[:port] conditions[:port] = opts[:port] if opts[:port]
conditions[:proto] = opts[:proto] if opts[:proto] conditions[:proto] = opts[:proto] if opts[:proto]
sret = h.services.all(:conditions => conditions) sret = h.services.where(conditions)
next if sret == nil next if sret == nil
services << sret if sret.class == ::Mdm::Service services << sret if sret.class == ::Mdm::Service
services |= sret if sret.class == Array services |= sret if sret.class == Array
@ -761,7 +758,7 @@ public
conditions = {} conditions = {}
conditions[:port] = opts[:port] if opts[:port] conditions[:port] = opts[:port] if opts[:port]
conditions[:proto] = opts[:proto] if opts[:proto] conditions[:proto] = opts[:proto] if opts[:proto]
sret = wspace.services.all(:conditions => conditions) sret = wspace.services.where(conditions)
services << sret if sret and sret.class == ::Mdm::Service services << sret if sret and sret.class == ::Mdm::Service
services |= sret if sret and sret.class == Array services |= sret if sret and sret.class == Array
end end
@ -794,7 +791,7 @@ public
elsif opts[:addresses] elsif opts[:addresses]
return { :result => 'failed' } if opts[:addresses].class != Array return { :result => 'failed' } if opts[:addresses].class != Array
conditions = { :address => opts[:addresses] } conditions = { :address => opts[:addresses] }
hent = wspace.hosts.all(:conditions => conditions) hent = wspace.hosts.where(conditions)
return { :result => 'failed' } if hent == nil return { :result => 'failed' } if hent == nil
hosts |= hent if hent.class == Array hosts |= hent if hent.class == Array
hosts << hent if hent.class == ::Mdm::Host hosts << hent if hent.class == ::Mdm::Host
@ -829,7 +826,7 @@ public
ret = {} ret = {}
ret[:events] = [] ret[:events] = []
wspace.events.all(:limit => limit, :offset => offset).each do |e| wspace.events.offset(offset).limit(limit).each do |e|
event = {} event = {}
event[:host] = e.host.address if(e.host) event[:host] = e.host.address if(e.host)
event[:created_at] = e.created_at.to_i event[:created_at] = e.created_at.to_i
@ -874,7 +871,7 @@ public
ret = {} ret = {}
ret[:loots] = [] ret[:loots] = []
wspace.loots.all(:limit => limit, :offset => offset).each do |l| wspace.loots.offset(offset).limit(limit).each do |l|
loot = {} loot = {}
loot[:host] = l.host.address if(l.host) loot[:host] = l.host.address if(l.host)
loot[:service] = l.service.name || l.service.port if(l.service) loot[:service] = l.service.name || l.service.port if(l.service)
@ -964,8 +961,7 @@ public
ret = {} ret = {}
ret[:clients] = [] ret[:clients] = []
wspace.clients.all(:include => :host, :conditions => conditions, wspace.clients.includes(:host).where(conditions).offset(offset).limit(limit).each do |c|
:limit => limit, :offset => offset).each do |c|
client = {} client = {}
client[:host] = c.host.address.to_s if c.host client[:host] = c.host.address.to_s if c.host
client[:ua_string] = c.ua_string client[:ua_string] = c.ua_string
@ -999,7 +995,7 @@ public
conditions = {} conditions = {}
conditions[:ua_name] = opts[:ua_name] if opts[:ua_name] conditions[:ua_name] = opts[:ua_name] if opts[:ua_name]
conditions[:ua_ver] = opts[:ua_ver] if opts[:ua_ver] conditions[:ua_ver] = opts[:ua_ver] if opts[:ua_ver]
cret = h.clients.all(:conditions => conditions) cret = h.clients.where(conditions)
else else
cret = h.clients cret = h.clients
end end