class IpPermission
Public Class Methods
new(group, ip, ingress, exclusions)
click to toggle source
# File lib/ec2/ip_permission.rb, line 4 def initialize(group, ip, ingress, exclusions) @group = group @ip = ip @ingress = ingress @exclusions = exclusions end
Public Instance Methods
traffic()
click to toggle source
# File lib/ec2/ip_permission.rb, line 11 def traffic cidr_traffic + group_traffic end
Private Instance Methods
cidr_traffic()
click to toggle source
# File lib/ec2/ip_permission.rb, line 20 def cidr_traffic @ip.ip_ranges .select { |range| !@exclusions.match(range)} .collect { |range| Traffic.new(@ingress, range.cidr_ip, @group.name, port_range) } end
group_traffic()
click to toggle source
# File lib/ec2/ip_permission.rb, line 28 def group_traffic @ip.groups .select { |gp| !@exclusions.match(gp.name)} .collect { |gp| Traffic.new(@ingress, gp.name, @group.name, port_range) } end
port_range()
click to toggle source
# File lib/ec2/ip_permission.rb, line 16 def port_range @ip.protocol == '-1' ? '*' : [@ip.from, @ip.to].uniq.join('-') + '/' + @ip.protocol end