class CidrGroupMapping
Public Class Methods
new(all_groups, user_groups)
click to toggle source
# File lib/ec2/security_groups.rb, line 60 def initialize(all_groups, user_groups) @all_groups = all_groups @user_groups = user_groups end
Public Instance Methods
map(all_traffic)
click to toggle source
# File lib/ec2/security_groups.rb, line 65 def map(all_traffic) traffic = all_traffic.collect { |traffic| traffic.copy(mapping(traffic.from), mapping(traffic.to)) } traffic.uniq.group_by {|t| [t.from, t.to, t.ingress]}.collect {|k,v| Traffic.grouped(v)}.uniq end
Private Instance Methods
mapping(val)
click to toggle source
# File lib/ec2/security_groups.rb, line 73 def mapping(val) group = @all_groups.find { |g| g.group_id == val } name = group.nil? ? val : group.name @user_groups[name] ? @user_groups[name] : name end