Class: VagrantPlugins::Invade::Validator::Type::StringOrArrayValidator
- Defined in:
- lib/vagrant-invade/validator/type/type_string_array.rb
Instance Attribute Summary collapse
-
#default ⇒ Object
Returns the value of attribute default.
-
#env ⇒ Object
Returns the value of attribute env.
-
#name ⇒ Object
Returns the value of attribute name.
-
#value ⇒ Object
Returns the value of attribute value.
Instance Method Summary collapse
-
#initialize(value, name, default, env) ⇒ StringOrArrayValidator
constructor
A new instance of StringOrArrayValidator.
- #validate ⇒ Object
Constructor Details
#initialize(value, name, default, env) ⇒ StringOrArrayValidator
Returns a new instance of StringOrArrayValidator.
10 11 12 13 14 15 |
# File 'lib/vagrant-invade/validator/type/type_string_array.rb', line 10 def initialize(value, name, default, env) @value = value @name = name @default = default @env = env end |
Instance Attribute Details
#default ⇒ Object
Returns the value of attribute default.
8 9 10 |
# File 'lib/vagrant-invade/validator/type/type_string_array.rb', line 8 def default @default end |
#env ⇒ Object
Returns the value of attribute env.
8 9 10 |
# File 'lib/vagrant-invade/validator/type/type_string_array.rb', line 8 def env @env end |
#name ⇒ Object
Returns the value of attribute name.
8 9 10 |
# File 'lib/vagrant-invade/validator/type/type_string_array.rb', line 8 def name @name end |
#value ⇒ Object
Returns the value of attribute value.
8 9 10 |
# File 'lib/vagrant-invade/validator/type/type_string_array.rb', line 8 def value @value end |
Instance Method Details
#validate ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/vagrant-invade/validator/type/type_string_array.rb', line 17 def validate case @value when String, Array @env[:ui].success("\t#{name} => '#{@value}'") unless @env[:invade_validate_quiet] when nil? @env[:ui].warn("\t#{name} not set. Use Vagrant default.") unless @env[:invade_validate_quiet] return default when '' @env[:ui].warn("\tError: Empty string is not valid. Set '#{name}' => '#{default}'.") unless @env[:invade_validate_quiet] return default else @env[:ui].error("\tError: '#{@value}' is not a string or array. Set to '#{name}' to default value '#{default}'.") unless @env[:invade_validate_quiet] return default end @value end |