Class: Papapi::GridRequest

Inherits:
Request
  • Object
show all
Defined in:
lib/papapi/grid_request.rb

Constant Summary collapse

DEFAULT_LIMIT =
30

Constants inherited from Request

Request::BODY_DATA_NAME, Request::RUN_METHOD, Request::SERVER_CLASS_NAME

Instance Attribute Summary collapse

Attributes inherited from Request

#class_name, #method_name, #requests, #session

Instance Method Summary collapse

Methods inherited from Request

#add_request, #initialize, #send, #send_now, #set_param, #set_params

Constructor Details

This class inherits a constructor from Papapi::Request

Instance Attribute Details

#limitObject

Returns the value of attribute limit.



6
7
8
# File 'lib/papapi/grid_request.rb', line 6

def limit
  @limit
end

#offsetObject

Returns the value of attribute offset.



6
7
8
# File 'lib/papapi/grid_request.rb', line 6

def offset
  @offset
end

#sort_ascObject

Returns the value of attribute sort_asc.



6
7
8
# File 'lib/papapi/grid_request.rb', line 6

def sort_asc
  @sort_asc
end

#sort_colObject

Returns the value of attribute sort_col.



6
7
8
# File 'lib/papapi/grid_request.rb', line 6

def sort_col
  @sort_col
end

Instance Method Details

#add_column(column) ⇒ Object



24
25
26
27
# File 'lib/papapi/grid_request.rb', line 24

def add_column(column)
  @columns = [['id']] if ! @columns
  @columns << [column]
end

#add_columns(columns) ⇒ Object



29
30
31
32
33
34
# File 'lib/papapi/grid_request.rb', line 29

def add_columns(columns)
  @columns = [['id']] if ! @columns
  columns.each do |c|
    @columns << [c]
  end
end

#add_filter(code, op, value) ⇒ Object



8
9
10
11
# File 'lib/papapi/grid_request.rb', line 8

def add_filter(code, op, value)
  @filters = [] if ! @filters
  @filters << [code , op, value]
end

#add_filters(filters) ⇒ Object



13
14
15
16
17
18
# File 'lib/papapi/grid_request.rb', line 13

def add_filters(filters)
  @filters = [] if ! @filters
  filters.each do |f|
    @filters << f
  end
end

#response(http_response) ⇒ Object



20
21
22
# File 'lib/papapi/grid_request.rb', line 20

def response(http_response)
  GridResponse.new(http_response, self)
end

#set_sorting(column, sort_asc) ⇒ Object



36
37
38
39
# File 'lib/papapi/grid_request.rb', line 36

def set_sorting(column, sort_asc)
  @sort_col = column
  @sort_asc = sort_asc
end

#to_dataObject



41
42
43
44
45
46
47
48
49
50
# File 'lib/papapi/grid_request.rb', line 41

def to_data
  data = super
  data[:filters] = @filters || []
  data[:columns] = @columns || []
  data[:sort_col] = @sort_col || ""
  data[:sort_asc] = @sort_asc ? true : false
  data[:offset] = @offset || 0
  data[:limit] = @limit || DEFAULT_LIMIT
  data
end