Class: Ethon::Easies::Params

Inherits:
Object
  • Object
show all
Includes:
Util
Defined in:
lib/ethon/easies/params.rb

Overview

This class represents http request parameters.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Util

#build_query_pairs, escape_zero_byte, #file_info

Constructor Details

#initialize(params) ⇒ Params

Create a new Params.

Examples:

Create a new Params.

Params.new({})

Parameters:

  • params (Hash)

    The params to use.



19
20
21
# File 'lib/ethon/easies/params.rb', line 19

def initialize(params)
  @params = params || {}
end

Instance Attribute Details

#escapeObject

Returns the value of attribute escape.



9
10
11
# File 'lib/ethon/easies/params.rb', line 9

def escape
  @escape
end

Instance Method Details

#empty?Boolean

Return wether there are elements in the params or not.

Examples:

Return if params is empty.

params.empty?

Returns:

  • (Boolean)

    True if params is empty, else false.



49
50
51
# File 'lib/ethon/easies/params.rb', line 49

def empty?
  @params.empty?
end

#query_pairsArray

Return the query pairs.

Examples:

Return the query pairs.

params.query_pairs

Returns:

  • (Array)

    The query pairs.



39
40
41
# File 'lib/ethon/easies/params.rb', line 39

def query_pairs
  @query_pairs ||= build_query_pairs(@params)
end

#to_sString

Return the string representation of params.

Examples:

Return string representation.

params.to_s

Returns:

  • (String)

    The string representation.



29
30
31
# File 'lib/ethon/easies/params.rb', line 29

def to_s
  query_pairs.map{|pair| pair.map{|e| escape ? CGI::escape(e.to_s) : e }.join("=")}.join('&')
end