Class: Validator::Domain
- Inherits:
-
Object
- Object
- Validator::Domain
- Defined in:
- lib/validator/domain.rb,
lib/validator/domain/tld.rb
Defined Under Namespace
Classes: Tld
Constant Summary collapse
- LENGTH =
255- LABEL_LENGTH =
63
Instance Method Summary collapse
-
#initialize(value) ⇒ Domain
constructor
A new instance of Domain.
-
#valid? ⇒ Boolean
valid if passes all conditions.
- #valid_by_label_length?(label_length = nil) ⇒ Boolean
- #valid_by_length?(length = nil) ⇒ Boolean
- #valid_by_regexp? ⇒ Boolean
Constructor Details
#initialize(value) ⇒ Domain
Returns a new instance of Domain.
8 9 10 |
# File 'lib/validator/domain.rb', line 8 def initialize(value) @value = value end |
Instance Method Details
#valid? ⇒ Boolean
valid if passes all conditions
25 26 27 |
# File 'lib/validator/domain.rb', line 25 def valid? valid_by_length? and valid_by_label_length? and valid_by_regexp? end |
#valid_by_label_length?(label_length = nil) ⇒ Boolean
16 17 18 |
# File 'lib/validator/domain.rb', line 16 def valid_by_label_length?(label_length = nil) !(@value.split(".").find{|f| f.length > (label_length || LABEL_LENGTH) and f.length > 1 }) end |
#valid_by_length?(length = nil) ⇒ Boolean
12 13 14 |
# File 'lib/validator/domain.rb', line 12 def valid_by_length?(length = nil) @value.length <= (length || LENGTH) end |
#valid_by_regexp? ⇒ Boolean
20 21 22 |
# File 'lib/validator/domain.rb', line 20 def valid_by_regexp? @value =~ /^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}$/i end |