blob: 944b13822f678f53f971fab31a8a7f8d85c8791f [file] [log] [blame]
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -04001<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6 <title>apiclient.http.HttpRequest</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12 alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
16 <tr valign="middle">
17
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="apiclient-module.html">Package&nbsp;apiclient</a> ::
38 <a href="apiclient.http-module.html">Module&nbsp;http</a> ::
39 Class&nbsp;HttpRequest
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="apiclient.http.HttpRequest-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class HttpRequest</h1><p class="nomargin-top"><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest">source&nbsp;code</a></span></p>
57<center>
Joe Gregorio746096f2012-06-15 10:53:36 -040058<center> <map id="class_hierarchy_for_httpreques" name="class_hierarchy_for_httpreques">
59<area shape="rect" href="apiclient.http.HttpRequest-class.html" title="HttpRequest" alt="" coords="5,5,99,32"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040060</map>
Joe Gregorio746096f2012-06-15 10:53:36 -040061 <img src="class_hierarchy_for_httpreques.gif" alt='' usemap="#class_hierarchy_for_httpreques" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040062</center>
63</center>
64<hr />
65<pre class="literalblock">
66Encapsulates a single HTTP request.
67
68</pre>
69
70<!-- ==================== INSTANCE METHODS ==================== -->
71<a name="section-InstanceMethods"></a>
72<table class="summary" border="1" cellpadding="3"
73 cellspacing="0" width="100%" bgcolor="white">
74<tr bgcolor="#70b0f0" class="table-header">
75 <td colspan="2" class="table-header">
76 <table border="0" cellpadding="0" cellspacing="0" width="100%">
77 <tr valign="top">
78 <td align="left"><span class="table-header">Instance Methods</span></td>
79 <td align="right" valign="top"
80 ><span class="options">[<a href="#section-InstanceMethods"
81 class="privatelink" onclick="toggle_private();"
82 >hide private</a>]</span></td>
83 </tr>
84 </table>
85 </td>
86</tr>
87<tr>
88 <td width="15%" align="right" valign="top" class="summary">
89 <span class="summary-type">&nbsp;</span>
90 </td><td class="summary">
91 <table width="100%" cellpadding="0" cellspacing="0" border="0">
92 <tr>
Joe Gregorio1b425aa2012-08-24 12:04:34 -040093 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">*args</span>,
94 <span class="summary-sig-arg">**kwargs</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040095 Constructor for an HttpRequest.</td>
96 <td align="right" valign="top">
Joe Gregorio1b425aa2012-08-24 12:04:34 -040097 <span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040098
99 </td>
100 </tr>
101 </table>
102
103 </td>
104 </tr>
105<tr>
106 <td width="15%" align="right" valign="top" class="summary">
107 <span class="summary-type">&nbsp;</span>
108 </td><td class="summary">
109 <table width="100%" cellpadding="0" cellspacing="0" border="0">
110 <tr>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400111 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">*args</span>,
112 <span class="summary-sig-arg">**kwargs</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400113 Execute the request.</td>
114 <td align="right" valign="top">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400115 <span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400116
117 </td>
118 </tr>
119 </table>
120
121 </td>
122 </tr>
123<tr>
124 <td width="15%" align="right" valign="top" class="summary">
125 <span class="summary-type">&nbsp;</span>
126 </td><td class="summary">
127 <table width="100%" cellpadding="0" cellspacing="0" border="0">
128 <tr>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400129 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#next_chunk" class="summary-sig-name">next_chunk</a>(<span class="summary-sig-arg">*args</span>,
130 <span class="summary-sig-arg">**kwargs</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400131 Execute the next step of a resumable upload.</td>
132 <td align="right" valign="top">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400133 <span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400134
135 </td>
136 </tr>
137 </table>
138
139 </td>
140 </tr>
Joe Gregorio66212032012-06-14 09:10:14 -0400141<tr class="private">
142 <td width="15%" align="right" valign="top" class="summary">
143 <span class="summary-type">&nbsp;</span>
144 </td><td class="summary">
145 <table width="100%" cellpadding="0" cellspacing="0" border="0">
146 <tr>
147 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#_process_response" class="summary-sig-name" onclick="show_private();">_process_response</a>(<span class="summary-sig-arg">self</span>,
148 <span class="summary-sig-arg">resp</span>,
149 <span class="summary-sig-arg">content</span>)</span><br />
150 Process the response from a single chunk upload.</td>
151 <td align="right" valign="top">
152 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>
153
154 </td>
155 </tr>
156 </table>
157
158 </td>
159 </tr>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400160<tr>
161 <td width="15%" align="right" valign="top" class="summary">
162 <span class="summary-type">&nbsp;</span>
163 </td><td class="summary">
164 <table width="100%" cellpadding="0" cellspacing="0" border="0">
165 <tr>
166 <td><span class="summary-sig"><a name="to_json"></a><span class="summary-sig-name">to_json</span>(<span class="summary-sig-arg">self</span>)</span><br />
167 Returns a JSON representation of the HttpRequest.</td>
168 <td align="right" valign="top">
169 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.to_json">source&nbsp;code</a></span>
170
171 </td>
172 </tr>
173 </table>
174
175 </td>
176 </tr>
177 <tr>
178 <td colspan="2" class="summary">
179 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
180 <code>__delattr__</code>,
181 <code>__format__</code>,
182 <code>__getattribute__</code>,
183 <code>__hash__</code>,
184 <code>__new__</code>,
185 <code>__reduce__</code>,
186 <code>__reduce_ex__</code>,
187 <code>__repr__</code>,
188 <code>__setattr__</code>,
189 <code>__sizeof__</code>,
190 <code>__str__</code>,
191 <code>__subclasshook__</code>
192 </p>
193 </td>
194 </tr>
195</table>
196<!-- ==================== STATIC METHODS ==================== -->
197<a name="section-StaticMethods"></a>
198<table class="summary" border="1" cellpadding="3"
199 cellspacing="0" width="100%" bgcolor="white">
200<tr bgcolor="#70b0f0" class="table-header">
201 <td colspan="2" class="table-header">
202 <table border="0" cellpadding="0" cellspacing="0" width="100%">
203 <tr valign="top">
204 <td align="left"><span class="table-header">Static Methods</span></td>
205 <td align="right" valign="top"
206 ><span class="options">[<a href="#section-StaticMethods"
207 class="privatelink" onclick="toggle_private();"
208 >hide private</a>]</span></td>
209 </tr>
210 </table>
211 </td>
212</tr>
213<tr>
214 <td width="15%" align="right" valign="top" class="summary">
215 <span class="summary-type">&nbsp;</span>
216 </td><td class="summary">
217 <table width="100%" cellpadding="0" cellspacing="0" border="0">
218 <tr>
219 <td><span class="summary-sig"><a name="from_json"></a><span class="summary-sig-name">from_json</span>(<span class="summary-sig-arg">s</span>,
220 <span class="summary-sig-arg">http</span>,
221 <span class="summary-sig-arg">postproc</span>)</span><br />
222 Returns an HttpRequest populated with info from a JSON object.</td>
223 <td align="right" valign="top">
224 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.from_json">source&nbsp;code</a></span>
225
226 </td>
227 </tr>
228 </table>
229
230 </td>
231 </tr>
232</table>
233<!-- ==================== PROPERTIES ==================== -->
234<a name="section-Properties"></a>
235<table class="summary" border="1" cellpadding="3"
236 cellspacing="0" width="100%" bgcolor="white">
237<tr bgcolor="#70b0f0" class="table-header">
238 <td colspan="2" class="table-header">
239 <table border="0" cellpadding="0" cellspacing="0" width="100%">
240 <tr valign="top">
241 <td align="left"><span class="table-header">Properties</span></td>
242 <td align="right" valign="top"
243 ><span class="options">[<a href="#section-Properties"
244 class="privatelink" onclick="toggle_private();"
245 >hide private</a>]</span></td>
246 </tr>
247 </table>
248 </td>
249</tr>
250 <tr>
251 <td colspan="2" class="summary">
252 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
253 <code>__class__</code>
254 </p>
255 </td>
256 </tr>
257</table>
258<!-- ==================== METHOD DETAILS ==================== -->
259<a name="section-MethodDetails"></a>
260<table class="details" border="1" cellpadding="3"
261 cellspacing="0" width="100%" bgcolor="white">
262<tr bgcolor="#70b0f0" class="table-header">
263 <td colspan="2" class="table-header">
264 <table border="0" cellpadding="0" cellspacing="0" width="100%">
265 <tr valign="top">
266 <td align="left"><span class="table-header">Method Details</span></td>
267 <td align="right" valign="top"
268 ><span class="options">[<a href="#section-MethodDetails"
269 class="privatelink" onclick="toggle_private();"
270 >hide private</a>]</span></td>
271 </tr>
272 </table>
273 </td>
274</tr>
275</table>
276<a name="__init__"></a>
277<div>
278<table class="details" border="1" cellpadding="3"
279 cellspacing="0" width="100%" bgcolor="white">
280<tr><td>
281 <table width="100%" cellpadding="0" cellspacing="0" border="0">
282 <tr valign="top"><td>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400283 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">*args</span>,
284 <span class="sig-arg">**kwargs</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400285 <br /><em class="fname">(Constructor)</em>
286 </h3>
287 </td><td align="right" valign="top"
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400288 ><span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400289 </td>
290 </tr></table>
291
292 <pre class="literalblock">
293Constructor for an HttpRequest.
294
295Args:
296 http: httplib2.Http, the transport object to use to make a request
297 postproc: callable, called on the HTTP response and content to transform
298 it into a data object before returning, or raising an exception
299 on an error.
300 uri: string, the absolute URI to send the request to
301 method: string, the HTTP method to use
302 body: string, the request body of the HTTP request,
303 headers: dict, the HTTP request headers
304 methodId: string, a unique identifier for the API method being called.
305 resumable: MediaUpload, None if this is not a resumbale request.
306
307</pre>
308 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400309 <dt>Decorators:</dt>
310 <dd><ul class="nomargin-top">
311 <li><code>@util.positional(4)</code></li>
312 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400313 <dt>Overrides:
314 object.__init__
315 </dt>
316 </dl>
317</td></tr></table>
318</div>
319<a name="execute"></a>
320<div>
321<table class="details" border="1" cellpadding="3"
322 cellspacing="0" width="100%" bgcolor="white">
323<tr><td>
324 <table width="100%" cellpadding="0" cellspacing="0" border="0">
325 <tr valign="top"><td>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400326 <h3 class="epydoc"><span class="sig"><span class="sig-name">execute</span>(<span class="sig-arg">*args</span>,
327 <span class="sig-arg">**kwargs</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400328 </h3>
329 </td><td align="right" valign="top"
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400330 ><span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400331 </td>
332 </tr></table>
333
334 <pre class="literalblock">
335Execute the request.
336
337Args:
338 http: httplib2.Http, an http object to be used in place of the
339 one the HttpRequest request object was constructed with.
340
341Returns:
342 A deserialized object model of the response body as determined
343 by the postproc.
344
345Raises:
346 apiclient.errors.HttpError if the response was not a 2xx.
Joe Gregorioad8013f2012-08-03 08:44:02 -0400347 httplib2.HttpLib2Error if a transport error has occured.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400348
349</pre>
350 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400351 <dt>Decorators:</dt>
352 <dd><ul class="nomargin-top">
353 <li><code>@util.positional(1)</code></li>
354 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400355 </dl>
356</td></tr></table>
357</div>
358<a name="next_chunk"></a>
359<div>
360<table class="details" border="1" cellpadding="3"
361 cellspacing="0" width="100%" bgcolor="white">
362<tr><td>
363 <table width="100%" cellpadding="0" cellspacing="0" border="0">
364 <tr valign="top"><td>
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400365 <h3 class="epydoc"><span class="sig"><span class="sig-name">next_chunk</span>(<span class="sig-arg">*args</span>,
366 <span class="sig-arg">**kwargs</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400367 </h3>
368 </td><td align="right" valign="top"
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400369 ><span class="codelink"><a href="oauth2client.util-pysrc.html">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400370 </td>
371 </tr></table>
372
373 <pre class="literalblock">
374Execute the next step of a resumable upload.
375
376Can only be used if the method being executed supports media uploads and
377the MediaUpload object passed in was flagged as using resumable upload.
378
379Example:
380
Joe Gregorioebd0b842012-06-15 14:14:17 -0400381 media = MediaFileUpload('cow.png', mimetype='image/png',
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400382 chunksize=1000, resumable=True)
Joe Gregorioebd0b842012-06-15 14:14:17 -0400383 request = farm.animals().insert(
384 id='cow',
385 name='cow.png',
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400386 media_body=media)
387
388 response = None
389 while response is None:
390 status, response = request.next_chunk()
391 if status:
392 print &quot;Upload %d%% complete.&quot; % int(status.progress() * 100)
393
394
395Returns:
396 (status, body): (ResumableMediaStatus, object)
397 The body will be None until the resumable media is fully uploaded.
398
Joe Gregorio66212032012-06-14 09:10:14 -0400399Raises:
400 apiclient.errors.HttpError if the response was not a 2xx.
Joe Gregorioad8013f2012-08-03 08:44:02 -0400401 httplib2.HttpLib2Error if a transport error has occured.
Joe Gregorio66212032012-06-14 09:10:14 -0400402
403</pre>
404 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400405 <dt>Decorators:</dt>
406 <dd><ul class="nomargin-top">
407 <li><code>@util.positional(1)</code></li>
408 </ul></dd>
Joe Gregorio66212032012-06-14 09:10:14 -0400409 </dl>
410</td></tr></table>
411</div>
412<a name="_process_response"></a>
413<div class="private">
414<table class="details" border="1" cellpadding="3"
415 cellspacing="0" width="100%" bgcolor="white">
416<tr><td>
417 <table width="100%" cellpadding="0" cellspacing="0" border="0">
418 <tr valign="top"><td>
419 <h3 class="epydoc"><span class="sig"><span class="sig-name">_process_response</span>(<span class="sig-arg">self</span>,
420 <span class="sig-arg">resp</span>,
421 <span class="sig-arg">content</span>)</span>
422 </h3>
423 </td><td align="right" valign="top"
424 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>&nbsp;
425 </td>
426 </tr></table>
427
428 <pre class="literalblock">
429Process the response from a single chunk upload.
430
431Args:
432 resp: httplib2.Response, the response object.
433 content: string, the content of the response.
434
435Returns:
436 (status, body): (ResumableMediaStatus, object)
437 The body will be None until the resumable media is fully uploaded.
438
439Raises:
440 apiclient.errors.HttpError if the response was not a 2xx or a 308.
441
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400442</pre>
443 <dl class="fields">
444 </dl>
445</td></tr></table>
446</div>
447<br />
448<!-- ==================== NAVIGATION BAR ==================== -->
449<table class="navbar" border="0" width="100%" cellpadding="0"
450 bgcolor="#a0c0ff" cellspacing="0">
451 <tr valign="middle">
452
453 <!-- Tree link -->
454 <th>&nbsp;&nbsp;&nbsp;<a
455 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
456
457 <!-- Index link -->
458 <th>&nbsp;&nbsp;&nbsp;<a
459 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
460
461 <!-- Help link -->
462 <th>&nbsp;&nbsp;&nbsp;<a
463 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
464
465 <th class="navbar" width="100%"></th>
466 </tr>
467</table>
468<table border="0" cellpadding="0" cellspacing="0" width="100%%">
469 <tr>
470 <td align="left" class="footer">
Joe Gregorio0cd347a2012-08-30 08:22:27 -0400471 Generated by Epydoc 3.0.1 on Thu Aug 30 07:12:43 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400472 </td>
473 <td align="right" class="footer">
474 <a target="mainFrame" href="http://epydoc.sourceforge.net"
475 >http://epydoc.sourceforge.net</a>
476 </td>
477 </tr>
478</table>
479
480<script type="text/javascript">
481 <!--
482 // Private objects are initially displayed (because if
483 // javascript is turned off then we want them to be
484 // visible); but by default, we want to hide them. So hide
485 // them unless we have a cookie that says to show them.
486 checkCookie();
487 // -->
488</script>
489</body>
490</html>