class SubnetFormatValidator
Public Instance Methods
validate(record)
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 4 def validate(record) @record = record validate_dhcp_range rescue ArgumentError ip_argument_error end
Private Instance Methods
dhcp_range_error(invalid_ip)
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 46 def dhcp_range_error(invalid_ip) @record.errors[:base] << (options[:message] || "The DHCP range you provided was invalid, try from #{ invalid_ip.to_range.first } to #{ invalid_ip.to_range.last }") end
dhcp_range_start()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 22 def dhcp_range_start @record.send(options[:dhcp_range_start] || :dhcp_range_start) end
dhcp_range_stop()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 26 def dhcp_range_stop @record.send(options[:dhcp_range_stop] || :dhcp_range_stop) end
ip()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 30 def ip IPAddr.new "#{ network_address_prefix }/#{ subnet_mask }" end
ip_argument_error()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 42 def ip_argument_error @record.errors[:base] << (options[:message] || "The ip you provided was invalid") end
network_address_prefix()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 14 def network_address_prefix @record.send(options[:network_address_prefix] || :network_address_prefix) end
subnet_mask()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 18 def subnet_mask @record.send(options[:subnet_mask] || :subnet_mask) end
validate_dhcp_range()
click to toggle source
# File lib/subnet_format/subnet_format_validator.rb, line 34 def validate_dhcp_range ip_to_validate = ip unless ip_to_validate.include?(dhcp_range_start) and ip_to_validate.include?(dhcp_range_stop) dhcp_range_error(ip_to_validate) end end