class Grape::Validations::MutualExclusionValidator

Attributes

processing_keys_in_common[R]

Public Instance Methods

validate!(params) click to toggle source
# File lib/grape/validations/validators/mutual_exclusion.rb, line 7
def validate!(params)
  super
  if two_or_more_exclusive_params_are_present
    raise Grape::Exceptions::Validation, params: processing_keys_in_common, message: message(:mutual_exclusion)
  end
  params
end

Private Instance Methods

two_or_more_exclusive_params_are_present() click to toggle source
# File lib/grape/validations/validators/mutual_exclusion.rb, line 17
def two_or_more_exclusive_params_are_present
  scoped_params.any? do |resource_params|
    @processing_keys_in_common = keys_in_common(resource_params)
    @processing_keys_in_common.length > 1
  end
end