Class: Hknife::RequestQueue

Inherits:
Object
  • Object
show all
Defined in:
lib/hknife.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeRequestQueue



116
117
118
# File 'lib/hknife.rb', line 116

def initialize
  @queue = []
end

Class Method Details

.delete(uri) ⇒ Object



197
198
199
200
201
202
203
204
205
206
# File 'lib/hknife.rb', line 197

def delete(uri)
  obj = RequestQueue.new
  obj.delete(uri)

  if block_given?
    yield obj.request, obj.response
  end

  obj
end

.get(uri) ⇒ Object



186
187
188
189
190
191
192
193
194
195
# File 'lib/hknife.rb', line 186

def get(uri)
  obj = RequestQueue.new
  obj.get(uri)

  if block_given?
    yield obj.request, obj.response
  end

  obj
end

.header(hsh) ⇒ Object



230
231
232
233
234
# File 'lib/hknife.rb', line 230

def header(hsh)
  obj = RequestQueue.new
  obj.header(hsh)
  obj
end

.parallelObject



236
237
238
# File 'lib/hknife.rb', line 236

def parallel
  yield
end

.post_form(uri, data) ⇒ Object



208
209
210
211
212
213
214
215
216
217
# File 'lib/hknife.rb', line 208

def post_form(uri, data)
  obj = RequestQueue.new
  obj.post_form(uri, data)

  if block_given?
    yield obj.request, obj.response
  end

  obj
end

.put(uri, data) ⇒ Object



219
220
221
222
223
224
225
226
227
228
# File 'lib/hknife.rb', line 219

def put(uri, data)
  obj = RequestQueue.new
  obj.put(uri, data)

  if block_given?
    yield obj.request, obj.response
  end

  obj
end

Instance Method Details

#async(&block) ⇒ Object



153
154
155
156
157
# File 'lib/hknife.rb', line 153

def async(&block)
  @queue.each do |req|
    req.async(block)
  end
end

#delete(uri) ⇒ Object



127
128
129
130
131
132
# File 'lib/hknife.rb', line 127

def delete(uri)
  req = Request.new()
  req.delete(uri)
  @queue << req
  self
end

#get(uri) ⇒ Object



120
121
122
123
124
125
# File 'lib/hknife.rb', line 120

def get(uri)
  req = Request.new()
  req.get(uri)
  @queue << req
  self
end

#header(hdr) ⇒ Object



148
149
150
151
# File 'lib/hknife.rb', line 148

def header(hdr)
  @queue.last.header(hdr)
  self
end

#post_form(uri, data) ⇒ Object



134
135
136
137
138
139
# File 'lib/hknife.rb', line 134

def post_form(uri, data)  
  req = Request.new()
  req.post_form(uri, data)
  @queue << req       
  self
end

#put(uri, data) ⇒ Object



141
142
143
144
145
146
# File 'lib/hknife.rb', line 141

def put(uri, data)  
  req = Request.new()
  req.put(uri, data)
  @queue << req       
  self
end

#request(idx = nil) ⇒ Object



169
170
171
172
173
174
175
# File 'lib/hknife.rb', line 169

def request(idx = nil)
  if idx.nil?
    @queue.last.request
  else
    @queue[idx].request        
  end      
end

#response(idx = nil) ⇒ Object



177
178
179
180
181
182
183
# File 'lib/hknife.rb', line 177

def response(idx = nil)
  if idx.nil?
    @queue.last.response
  else
    @queue[idx].response        
  end
end

#sendObject



159
160
161
162
163
164
165
166
167
# File 'lib/hknife.rb', line 159

def send()
  @queue.each do |req|
    req.async
  end

  @queue.each do |req|
    req.wait
  end         
end