Class: Validator::Domain
- Inherits:
-
Object
- Object
- Validator::Domain
- Defined in:
- lib/validator/domain.rb
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.
6 7 8 |
# File 'lib/validator/domain.rb', line 6 def initialize(value) @value = value end |
Instance Method Details
#valid? ⇒ Boolean
valid if passes all conditions
23 24 25 |
# File 'lib/validator/domain.rb', line 23 def valid? valid_by_length? and valid_by_label_length? and valid_by_regexp? end |
#valid_by_label_length?(label_length = nil) ⇒ Boolean
14 15 16 |
# File 'lib/validator/domain.rb', line 14 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
10 11 12 |
# File 'lib/validator/domain.rb', line 10 def valid_by_length?(length = nil) @value.length <= (length || LENGTH) end |
#valid_by_regexp? ⇒ Boolean
18 19 20 |
# File 'lib/validator/domain.rb', line 18 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 |