module ParamsReady::ParameterUser

Public Class Methods

included(base) click to toggle source
# File lib/params_ready/parameter_user.rb, line 10
def self.included(base)
  base.extend(Helpers::ParameterStorageClassMethods)
  base.extend(Helpers::ParameterUserClassMethods)
end

Protected Instance Methods

create_state_for(method) click to toggle source
# File lib/params_ready/parameter_user.rb, line 31
def create_state_for(method)
  builder = Parameter::StateBuilder.instance
  options = self.class.params_ready_storage
  options.parameter_rules do |rule|
    builder.add rule.parameter_definition if rule.valid_for(method)
  end
  options.relation_rules do |rule|
    builder.relation rule.parameter_definition if rule.valid_for(method)
  end
  builder.build
end
parameter_definition(key) click to toggle source
# File lib/params_ready/parameter_user.rb, line 17
def parameter_definition(key)
    self.class.parameter_definition key
end
populate_state_for(method, params, context = Format.instance(:frontend), validator = nil) click to toggle source
# File lib/params_ready/parameter_user.rb, line 25
def populate_state_for(method, params, context = Format.instance(:frontend), validator = nil)
  definition = create_state_for method
  result, state = definition.from_input(params || {}, context: context, validator: validator || Result.new(:params_ready))
  [result, state]
end
relation_definition(key) click to toggle source
# File lib/params_ready/parameter_user.rb, line 21
def relation_definition(key)
    self.class.relation_definition key
end