blob: dd4c4d5b8c4fdf3d1e4b8c95424816405f07f00d [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>
93 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
94 <span class="summary-sig-arg">http</span>,
95 <span class="summary-sig-arg">postproc</span>,
96 <span class="summary-sig-arg">uri</span>,
97 <span class="summary-sig-arg">method</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">GET</code><code class="variable-quote">'</code></span>,
98 <span class="summary-sig-arg">body</span>=<span class="summary-sig-default">None</span>,
99 <span class="summary-sig-arg">headers</span>=<span class="summary-sig-default">None</span>,
100 <span class="summary-sig-arg">methodId</span>=<span class="summary-sig-default">None</span>,
101 <span class="summary-sig-arg">resumable</span>=<span class="summary-sig-default">None</span>)</span><br />
102 Constructor for an HttpRequest.</td>
103 <td align="right" valign="top">
104 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.__init__">source&nbsp;code</a></span>
105
106 </td>
107 </tr>
108 </table>
109
110 </td>
111 </tr>
112<tr>
113 <td width="15%" align="right" valign="top" class="summary">
114 <span class="summary-type">&nbsp;</span>
115 </td><td class="summary">
116 <table width="100%" cellpadding="0" cellspacing="0" border="0">
117 <tr>
118 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
119 <span class="summary-sig-arg">http</span>=<span class="summary-sig-default">None</span>)</span><br />
120 Execute the request.</td>
121 <td align="right" valign="top">
122 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.execute">source&nbsp;code</a></span>
123
124 </td>
125 </tr>
126 </table>
127
128 </td>
129 </tr>
130<tr>
131 <td width="15%" align="right" valign="top" class="summary">
132 <span class="summary-type">&nbsp;</span>
133 </td><td class="summary">
134 <table width="100%" cellpadding="0" cellspacing="0" border="0">
135 <tr>
136 <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">self</span>,
137 <span class="summary-sig-arg">http</span>=<span class="summary-sig-default">None</span>)</span><br />
138 Execute the next step of a resumable upload.</td>
139 <td align="right" valign="top">
140 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.next_chunk">source&nbsp;code</a></span>
141
142 </td>
143 </tr>
144 </table>
145
146 </td>
147 </tr>
Joe Gregorio66212032012-06-14 09:10:14 -0400148<tr class="private">
149 <td width="15%" align="right" valign="top" class="summary">
150 <span class="summary-type">&nbsp;</span>
151 </td><td class="summary">
152 <table width="100%" cellpadding="0" cellspacing="0" border="0">
153 <tr>
154 <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>,
155 <span class="summary-sig-arg">resp</span>,
156 <span class="summary-sig-arg">content</span>)</span><br />
157 Process the response from a single chunk upload.</td>
158 <td align="right" valign="top">
159 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>
160
161 </td>
162 </tr>
163 </table>
164
165 </td>
166 </tr>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400167<tr>
168 <td width="15%" align="right" valign="top" class="summary">
169 <span class="summary-type">&nbsp;</span>
170 </td><td class="summary">
171 <table width="100%" cellpadding="0" cellspacing="0" border="0">
172 <tr>
173 <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 />
174 Returns a JSON representation of the HttpRequest.</td>
175 <td align="right" valign="top">
176 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.to_json">source&nbsp;code</a></span>
177
178 </td>
179 </tr>
180 </table>
181
182 </td>
183 </tr>
184 <tr>
185 <td colspan="2" class="summary">
186 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
187 <code>__delattr__</code>,
188 <code>__format__</code>,
189 <code>__getattribute__</code>,
190 <code>__hash__</code>,
191 <code>__new__</code>,
192 <code>__reduce__</code>,
193 <code>__reduce_ex__</code>,
194 <code>__repr__</code>,
195 <code>__setattr__</code>,
196 <code>__sizeof__</code>,
197 <code>__str__</code>,
198 <code>__subclasshook__</code>
199 </p>
200 </td>
201 </tr>
202</table>
203<!-- ==================== STATIC METHODS ==================== -->
204<a name="section-StaticMethods"></a>
205<table class="summary" border="1" cellpadding="3"
206 cellspacing="0" width="100%" bgcolor="white">
207<tr bgcolor="#70b0f0" class="table-header">
208 <td colspan="2" class="table-header">
209 <table border="0" cellpadding="0" cellspacing="0" width="100%">
210 <tr valign="top">
211 <td align="left"><span class="table-header">Static Methods</span></td>
212 <td align="right" valign="top"
213 ><span class="options">[<a href="#section-StaticMethods"
214 class="privatelink" onclick="toggle_private();"
215 >hide private</a>]</span></td>
216 </tr>
217 </table>
218 </td>
219</tr>
220<tr>
221 <td width="15%" align="right" valign="top" class="summary">
222 <span class="summary-type">&nbsp;</span>
223 </td><td class="summary">
224 <table width="100%" cellpadding="0" cellspacing="0" border="0">
225 <tr>
226 <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>,
227 <span class="summary-sig-arg">http</span>,
228 <span class="summary-sig-arg">postproc</span>)</span><br />
229 Returns an HttpRequest populated with info from a JSON object.</td>
230 <td align="right" valign="top">
231 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.from_json">source&nbsp;code</a></span>
232
233 </td>
234 </tr>
235 </table>
236
237 </td>
238 </tr>
239</table>
240<!-- ==================== PROPERTIES ==================== -->
241<a name="section-Properties"></a>
242<table class="summary" border="1" cellpadding="3"
243 cellspacing="0" width="100%" bgcolor="white">
244<tr bgcolor="#70b0f0" class="table-header">
245 <td colspan="2" class="table-header">
246 <table border="0" cellpadding="0" cellspacing="0" width="100%">
247 <tr valign="top">
248 <td align="left"><span class="table-header">Properties</span></td>
249 <td align="right" valign="top"
250 ><span class="options">[<a href="#section-Properties"
251 class="privatelink" onclick="toggle_private();"
252 >hide private</a>]</span></td>
253 </tr>
254 </table>
255 </td>
256</tr>
257 <tr>
258 <td colspan="2" class="summary">
259 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
260 <code>__class__</code>
261 </p>
262 </td>
263 </tr>
264</table>
265<!-- ==================== METHOD DETAILS ==================== -->
266<a name="section-MethodDetails"></a>
267<table class="details" border="1" cellpadding="3"
268 cellspacing="0" width="100%" bgcolor="white">
269<tr bgcolor="#70b0f0" class="table-header">
270 <td colspan="2" class="table-header">
271 <table border="0" cellpadding="0" cellspacing="0" width="100%">
272 <tr valign="top">
273 <td align="left"><span class="table-header">Method Details</span></td>
274 <td align="right" valign="top"
275 ><span class="options">[<a href="#section-MethodDetails"
276 class="privatelink" onclick="toggle_private();"
277 >hide private</a>]</span></td>
278 </tr>
279 </table>
280 </td>
281</tr>
282</table>
283<a name="__init__"></a>
284<div>
285<table class="details" border="1" cellpadding="3"
286 cellspacing="0" width="100%" bgcolor="white">
287<tr><td>
288 <table width="100%" cellpadding="0" cellspacing="0" border="0">
289 <tr valign="top"><td>
290 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
291 <span class="sig-arg">http</span>,
292 <span class="sig-arg">postproc</span>,
293 <span class="sig-arg">uri</span>,
294 <span class="sig-arg">method</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">GET</code><code class="variable-quote">'</code></span>,
295 <span class="sig-arg">body</span>=<span class="sig-default">None</span>,
296 <span class="sig-arg">headers</span>=<span class="sig-default">None</span>,
297 <span class="sig-arg">methodId</span>=<span class="sig-default">None</span>,
298 <span class="sig-arg">resumable</span>=<span class="sig-default">None</span>)</span>
299 <br /><em class="fname">(Constructor)</em>
300 </h3>
301 </td><td align="right" valign="top"
302 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.__init__">source&nbsp;code</a></span>&nbsp;
303 </td>
304 </tr></table>
305
306 <pre class="literalblock">
307Constructor for an HttpRequest.
308
309Args:
310 http: httplib2.Http, the transport object to use to make a request
311 postproc: callable, called on the HTTP response and content to transform
312 it into a data object before returning, or raising an exception
313 on an error.
314 uri: string, the absolute URI to send the request to
315 method: string, the HTTP method to use
316 body: string, the request body of the HTTP request,
317 headers: dict, the HTTP request headers
318 methodId: string, a unique identifier for the API method being called.
319 resumable: MediaUpload, None if this is not a resumbale request.
320
321</pre>
322 <dl class="fields">
323 <dt>Overrides:
324 object.__init__
325 </dt>
326 </dl>
327</td></tr></table>
328</div>
329<a name="execute"></a>
330<div>
331<table class="details" border="1" cellpadding="3"
332 cellspacing="0" width="100%" bgcolor="white">
333<tr><td>
334 <table width="100%" cellpadding="0" cellspacing="0" border="0">
335 <tr valign="top"><td>
336 <h3 class="epydoc"><span class="sig"><span class="sig-name">execute</span>(<span class="sig-arg">self</span>,
337 <span class="sig-arg">http</span>=<span class="sig-default">None</span>)</span>
338 </h3>
339 </td><td align="right" valign="top"
340 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.execute">source&nbsp;code</a></span>&nbsp;
341 </td>
342 </tr></table>
343
344 <pre class="literalblock">
345Execute the request.
346
347Args:
348 http: httplib2.Http, an http object to be used in place of the
349 one the HttpRequest request object was constructed with.
350
351Returns:
352 A deserialized object model of the response body as determined
353 by the postproc.
354
355Raises:
356 apiclient.errors.HttpError if the response was not a 2xx.
357 httplib2.Error if a transport error has occured.
358
359</pre>
360 <dl class="fields">
361 </dl>
362</td></tr></table>
363</div>
364<a name="next_chunk"></a>
365<div>
366<table class="details" border="1" cellpadding="3"
367 cellspacing="0" width="100%" bgcolor="white">
368<tr><td>
369 <table width="100%" cellpadding="0" cellspacing="0" border="0">
370 <tr valign="top"><td>
371 <h3 class="epydoc"><span class="sig"><span class="sig-name">next_chunk</span>(<span class="sig-arg">self</span>,
372 <span class="sig-arg">http</span>=<span class="sig-default">None</span>)</span>
373 </h3>
374 </td><td align="right" valign="top"
375 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.next_chunk">source&nbsp;code</a></span>&nbsp;
376 </td>
377 </tr></table>
378
379 <pre class="literalblock">
380Execute the next step of a resumable upload.
381
382Can only be used if the method being executed supports media uploads and
383the MediaUpload object passed in was flagged as using resumable upload.
384
385Example:
386
Joe Gregorioebd0b842012-06-15 14:14:17 -0400387 media = MediaFileUpload('cow.png', mimetype='image/png',
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400388 chunksize=1000, resumable=True)
Joe Gregorioebd0b842012-06-15 14:14:17 -0400389 request = farm.animals().insert(
390 id='cow',
391 name='cow.png',
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400392 media_body=media)
393
394 response = None
395 while response is None:
396 status, response = request.next_chunk()
397 if status:
398 print &quot;Upload %d%% complete.&quot; % int(status.progress() * 100)
399
400
401Returns:
402 (status, body): (ResumableMediaStatus, object)
403 The body will be None until the resumable media is fully uploaded.
404
Joe Gregorio66212032012-06-14 09:10:14 -0400405Raises:
406 apiclient.errors.HttpError if the response was not a 2xx.
407 httplib2.Error if a transport error has occured.
408
409</pre>
410 <dl class="fields">
411 </dl>
412</td></tr></table>
413</div>
414<a name="_process_response"></a>
415<div class="private">
416<table class="details" border="1" cellpadding="3"
417 cellspacing="0" width="100%" bgcolor="white">
418<tr><td>
419 <table width="100%" cellpadding="0" cellspacing="0" border="0">
420 <tr valign="top"><td>
421 <h3 class="epydoc"><span class="sig"><span class="sig-name">_process_response</span>(<span class="sig-arg">self</span>,
422 <span class="sig-arg">resp</span>,
423 <span class="sig-arg">content</span>)</span>
424 </h3>
425 </td><td align="right" valign="top"
426 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>&nbsp;
427 </td>
428 </tr></table>
429
430 <pre class="literalblock">
431Process the response from a single chunk upload.
432
433Args:
434 resp: httplib2.Response, the response object.
435 content: string, the content of the response.
436
437Returns:
438 (status, body): (ResumableMediaStatus, object)
439 The body will be None until the resumable media is fully uploaded.
440
441Raises:
442 apiclient.errors.HttpError if the response was not a 2xx or a 308.
443
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400444</pre>
445 <dl class="fields">
446 </dl>
447</td></tr></table>
448</div>
449<br />
450<!-- ==================== NAVIGATION BAR ==================== -->
451<table class="navbar" border="0" width="100%" cellpadding="0"
452 bgcolor="#a0c0ff" cellspacing="0">
453 <tr valign="middle">
454
455 <!-- Tree link -->
456 <th>&nbsp;&nbsp;&nbsp;<a
457 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
458
459 <!-- Index link -->
460 <th>&nbsp;&nbsp;&nbsp;<a
461 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
462
463 <!-- Help link -->
464 <th>&nbsp;&nbsp;&nbsp;<a
465 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
466
467 <th class="navbar" width="100%"></th>
468 </tr>
469</table>
470<table border="0" cellpadding="0" cellspacing="0" width="100%%">
471 <tr>
472 <td align="left" class="footer">
Joe Gregorioe7a0c472012-07-12 11:46:04 -0400473 Generated by Epydoc 3.0.1 on Thu Jul 12 10:44:10 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400474 </td>
475 <td align="right" class="footer">
476 <a target="mainFrame" href="http://epydoc.sourceforge.net"
477 >http://epydoc.sourceforge.net</a>
478 </td>
479 </tr>
480</table>
481
482<script type="text/javascript">
483 <!--
484 // Private objects are initially displayed (because if
485 // javascript is turned off then we want them to be
486 // visible); but by default, we want to hide them. So hide
487 // them unless we have a cookie that says to show them.
488 checkCookie();
489 // -->
490</script>
491</body>
492</html>