class Muwu::ProjectOptionValidatorKey

Public Class Methods

new(key_as_provided, value_as_provided, project) click to toggle source
# File lib/muwu/project_options_builder/project_option_validator_key.rb, line 8
def initialize(key_as_provided, value_as_provided, project)
  @project = project
  @key_as_provided = key_as_provided
  @value_as_provided = value_as_provided

  @key_validated = validate_key
  @value_validated = validate_value
end

Public Instance Methods

validated_key() click to toggle source
# File lib/muwu/project_options_builder/project_option_validator_key.rb, line 22
def validated_key
  @key_validated
end
validated_value() click to toggle source
# File lib/muwu/project_options_builder/project_option_validator_key.rb, line 27
def validated_value
  @value_validated
end

Private Instance Methods

validate_key() click to toggle source
# File lib/muwu/project_options_builder/project_option_validator_key.rb, line 36
def validate_key
  key = @key_as_provided.downcase.gsub(/\W/,'_').to_sym
  key_is_valid = Default::PROJECT_OPTIONS.keys.include?(key)
  if key_is_valid
    return key
  else
    @project.exceptions_add ProjectException::OptionKeyNotUnderstood.new(@key_as_provided)
    return false
  end
end
validate_value() click to toggle source
# File lib/muwu/project_options_builder/project_option_validator_key.rb, line 48
def validate_value
  if @key_validated
    ProjectOptionValidatorValue.new(@key_validated, @value_as_provided, @project).validated_value
  end
end