module Paperdrive::Parameters

Module which has methods to define parameters to submit with request

Protected Instance Methods

optional_params(*args) click to toggle source

set optional(possible) parameters and output redundant parameters to stdout

# File lib/paperdrive/parameters.rb, line 25
def optional_params(*args)
  raise InvalidRequiredParameters unless args.all? { |arg| arg.is_a?(Symbol) }

  @params.keys.each do |key|
    puts ":#{key} is unused parameter." unless args.include?(key)
  end
  @params.slice!(*args)
end
parameters(params) { || ... } click to toggle source
# File lib/paperdrive/parameters.rb, line 12
def parameters(params, &_block)
  @params = params.symbolize_keys
  yield if block_given?
  @params
end
required_params(*args) click to toggle source

set required parameters and raise errors if there are lack of params

# File lib/paperdrive/parameters.rb, line 19
def required_params(*args)
  raise InvalidRequiredParameters unless args.all? { |arg| arg.is_a?(Symbol) }
  raise MissingRequiredParameters unless args.all? { |arg| !@params[arg].nil? }
end