1<?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>googleapiclient.http</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  <!-- Home link -->
18      <th>&nbsp;&nbsp;&nbsp;<a
19        href="googleapiclient-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
20
21  <!-- Tree link -->
22      <th>&nbsp;&nbsp;&nbsp;<a
23        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
24
25  <!-- Index link -->
26      <th>&nbsp;&nbsp;&nbsp;<a
27        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
28
29  <!-- Help link -->
30      <th>&nbsp;&nbsp;&nbsp;<a
31        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
32
33      <th class="navbar" width="100%"></th>
34  </tr>
35</table>
36<table width="100%" cellpadding="0" cellspacing="0">
37  <tr valign="top">
38    <td width="100%">
39      <span class="breadcrumbs">
40        <a href="googleapiclient-module.html">Package&nbsp;googleapiclient</a> ::
41        Module&nbsp;http
42      </span>
43    </td>
44    <td>
45      <table cellpadding="0" cellspacing="0">
46        <!-- hide/show private -->
47        <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
48    onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
49        <tr><td align="right"><span class="options"
50            >[<a href="frames.html" target="_top">frames</a
51            >]&nbsp;|&nbsp;<a href="googleapiclient.http-module.html"
52            target="_top">no&nbsp;frames</a>]</span></td></tr>
53      </table>
54    </td>
55  </tr>
56</table>
57<!-- ==================== MODULE DESCRIPTION ==================== -->
58<h1 class="epydoc">Module http</h1><p class="nomargin-top"><span class="codelink"><a href="googleapiclient.http-pysrc.html">source&nbsp;code</a></span></p>
59<p>Classes to encapsulate a single HTTP request.</p>
60  <p>The classes implement a command pattern, with every object supporting
61  an execute() method that does the actual HTTP request.</p>
62
63<hr />
64<div class="fields">      <p><strong>Author:</strong>
65        [email protected] (Joe Gregorio)
66      </p>
67</div><!-- ==================== CLASSES ==================== -->
68<a name="section-Classes"></a>
69<table class="summary" border="1" cellpadding="3"
70       cellspacing="0" width="100%" bgcolor="white">
71<tr bgcolor="#70b0f0" class="table-header">
72  <td colspan="2" class="table-header">
73    <table border="0" cellpadding="0" cellspacing="0" width="100%">
74      <tr valign="top">
75        <td align="left"><span class="table-header">Classes</span></td>
76        <td align="right" valign="top"
77         ><span class="options">[<a href="#section-Classes"
78         class="privatelink" onclick="toggle_private();"
79         >hide private</a>]</span></td>
80      </tr>
81    </table>
82  </td>
83</tr>
84<tr>
85    <td width="15%" align="right" valign="top" class="summary">
86      <span class="summary-type">&nbsp;</span>
87    </td><td class="summary">
88        <a href="googleapiclient.http.MediaUploadProgress-class.html" class="summary-name">MediaUploadProgress</a><br />
89      Status of a resumable upload.
90    </td>
91  </tr>
92<tr>
93    <td width="15%" align="right" valign="top" class="summary">
94      <span class="summary-type">&nbsp;</span>
95    </td><td class="summary">
96        <a href="googleapiclient.http.MediaDownloadProgress-class.html" class="summary-name">MediaDownloadProgress</a><br />
97      Status of a resumable download.
98    </td>
99  </tr>
100<tr>
101    <td width="15%" align="right" valign="top" class="summary">
102      <span class="summary-type">&nbsp;</span>
103    </td><td class="summary">
104        <a href="googleapiclient.http.MediaUpload-class.html" class="summary-name">MediaUpload</a><br />
105      Describes a media object to upload.
106    </td>
107  </tr>
108<tr>
109    <td width="15%" align="right" valign="top" class="summary">
110      <span class="summary-type">&nbsp;</span>
111    </td><td class="summary">
112        <a href="googleapiclient.http.MediaIoBaseUpload-class.html" class="summary-name">MediaIoBaseUpload</a><br />
113      A MediaUpload for a io.Base objects.
114    </td>
115  </tr>
116<tr>
117    <td width="15%" align="right" valign="top" class="summary">
118      <span class="summary-type">&nbsp;</span>
119    </td><td class="summary">
120        <a href="googleapiclient.http.MediaFileUpload-class.html" class="summary-name">MediaFileUpload</a><br />
121      A MediaUpload for a file.
122    </td>
123  </tr>
124<tr>
125    <td width="15%" align="right" valign="top" class="summary">
126      <span class="summary-type">&nbsp;</span>
127    </td><td class="summary">
128        <a href="googleapiclient.http.MediaInMemoryUpload-class.html" class="summary-name">MediaInMemoryUpload</a><br />
129      MediaUpload for a chunk of bytes.
130    </td>
131  </tr>
132<tr>
133    <td width="15%" align="right" valign="top" class="summary">
134      <span class="summary-type">&nbsp;</span>
135    </td><td class="summary">
136        <a href="googleapiclient.http.MediaIoBaseDownload-class.html" class="summary-name">MediaIoBaseDownload</a><br />
137      &quot;Download media resources.
138    </td>
139  </tr>
140<tr class="private">
141    <td width="15%" align="right" valign="top" class="summary">
142      <span class="summary-type">&nbsp;</span>
143    </td><td class="summary">
144        <a href="googleapiclient.http._StreamSlice-class.html" class="summary-name" onclick="show_private();">_StreamSlice</a><br />
145      Truncated stream.
146    </td>
147  </tr>
148<tr>
149    <td width="15%" align="right" valign="top" class="summary">
150      <span class="summary-type">&nbsp;</span>
151    </td><td class="summary">
152        <a href="googleapiclient.http.HttpRequest-class.html" class="summary-name">HttpRequest</a><br />
153      Encapsulates a single HTTP request.
154    </td>
155  </tr>
156<tr>
157    <td width="15%" align="right" valign="top" class="summary">
158      <span class="summary-type">&nbsp;</span>
159    </td><td class="summary">
160        <a href="googleapiclient.http.BatchHttpRequest-class.html" class="summary-name">BatchHttpRequest</a><br />
161      Batches multiple HttpRequest objects into a single HTTP request.
162    </td>
163  </tr>
164<tr>
165    <td width="15%" align="right" valign="top" class="summary">
166      <span class="summary-type">&nbsp;</span>
167    </td><td class="summary">
168        <a href="googleapiclient.http.HttpRequestMock-class.html" class="summary-name">HttpRequestMock</a><br />
169      Mock of HttpRequest.
170    </td>
171  </tr>
172<tr>
173    <td width="15%" align="right" valign="top" class="summary">
174      <span class="summary-type">&nbsp;</span>
175    </td><td class="summary">
176        <a href="googleapiclient.http.RequestMockBuilder-class.html" class="summary-name">RequestMockBuilder</a><br />
177      A simple mock of HttpRequest
178    </td>
179  </tr>
180<tr>
181    <td width="15%" align="right" valign="top" class="summary">
182      <span class="summary-type">&nbsp;</span>
183    </td><td class="summary">
184        <a href="googleapiclient.http.HttpMock-class.html" class="summary-name">HttpMock</a><br />
185      Mock of httplib2.Http
186    </td>
187  </tr>
188<tr>
189    <td width="15%" align="right" valign="top" class="summary">
190      <span class="summary-type">&nbsp;</span>
191    </td><td class="summary">
192        <a href="googleapiclient.http.HttpMockSequence-class.html" class="summary-name">HttpMockSequence</a><br />
193      Mock of httplib2.Http
194    </td>
195  </tr>
196</table>
197<!-- ==================== FUNCTIONS ==================== -->
198<a name="section-Functions"></a>
199<table class="summary" border="1" cellpadding="3"
200       cellspacing="0" width="100%" bgcolor="white">
201<tr bgcolor="#70b0f0" class="table-header">
202  <td colspan="2" class="table-header">
203    <table border="0" cellpadding="0" cellspacing="0" width="100%">
204      <tr valign="top">
205        <td align="left"><span class="table-header">Functions</span></td>
206        <td align="right" valign="top"
207         ><span class="options">[<a href="#section-Functions"
208         class="privatelink" onclick="toggle_private();"
209         >hide private</a>]</span></td>
210      </tr>
211    </table>
212  </td>
213</tr>
214<tr class="private">
215    <td width="15%" align="right" valign="top" class="summary">
216      <span class="summary-type">&nbsp;</span>
217    </td><td class="summary">
218      <table width="100%" cellpadding="0" cellspacing="0" border="0">
219        <tr>
220          <td><span class="summary-sig"><a href="googleapiclient.http-module.html#_should_retry_response" class="summary-sig-name" onclick="show_private();">_should_retry_response</a>(<span class="summary-sig-arg">resp_status</span>,
221        <span class="summary-sig-arg">content</span>)</span><br />
222      Determines whether a response should be retried.</td>
223          <td align="right" valign="top">
224            <span class="codelink"><a href="googleapiclient.http-pysrc.html#_should_retry_response">source&nbsp;code</a></span>
225
226          </td>
227        </tr>
228      </table>
229
230    </td>
231  </tr>
232<tr class="private">
233    <td width="15%" align="right" valign="top" class="summary">
234      <span class="summary-type">&nbsp;</span>
235    </td><td class="summary">
236      <table width="100%" cellpadding="0" cellspacing="0" border="0">
237        <tr>
238          <td><span class="summary-sig"><a href="googleapiclient.http-module.html#_retry_request" class="summary-sig-name" onclick="show_private();">_retry_request</a>(<span class="summary-sig-arg">http</span>,
239        <span class="summary-sig-arg">num_retries</span>,
240        <span class="summary-sig-arg">req_type</span>,
241        <span class="summary-sig-arg">sleep</span>,
242        <span class="summary-sig-arg">rand</span>,
243        <span class="summary-sig-arg">uri</span>,
244        <span class="summary-sig-arg">method</span>,
245        <span class="summary-sig-arg">*args</span>,
246        <span class="summary-sig-arg">**kwargs</span>)</span><br />
247      Retries an HTTP request multiple times while handling errors.</td>
248          <td align="right" valign="top">
249            <span class="codelink"><a href="googleapiclient.http-pysrc.html#_retry_request">source&nbsp;code</a></span>
250
251          </td>
252        </tr>
253      </table>
254
255    </td>
256  </tr>
257<tr>
258    <td width="15%" align="right" valign="top" class="summary">
259      <span class="summary-type">&nbsp;</span>
260    </td><td class="summary">
261      <table width="100%" cellpadding="0" cellspacing="0" border="0">
262        <tr>
263          <td><span class="summary-sig"><a href="googleapiclient.http-module.html#set_user_agent" class="summary-sig-name">set_user_agent</a>(<span class="summary-sig-arg">http</span>,
264        <span class="summary-sig-arg">user_agent</span>)</span><br />
265      Set the user-agent on every request.</td>
266          <td align="right" valign="top">
267            <span class="codelink"><a href="googleapiclient.http-pysrc.html#set_user_agent">source&nbsp;code</a></span>
268
269          </td>
270        </tr>
271      </table>
272
273    </td>
274  </tr>
275<tr>
276    <td width="15%" align="right" valign="top" class="summary">
277      <span class="summary-type">&nbsp;</span>
278    </td><td class="summary">
279      <table width="100%" cellpadding="0" cellspacing="0" border="0">
280        <tr>
281          <td><span class="summary-sig"><a href="googleapiclient.http-module.html#tunnel_patch" class="summary-sig-name">tunnel_patch</a>(<span class="summary-sig-arg">http</span>)</span><br />
282      Tunnel PATCH requests over POST.</td>
283          <td align="right" valign="top">
284            <span class="codelink"><a href="googleapiclient.http-pysrc.html#tunnel_patch">source&nbsp;code</a></span>
285
286          </td>
287        </tr>
288      </table>
289
290    </td>
291  </tr>
292<tr>
293    <td width="15%" align="right" valign="top" class="summary">
294      <span class="summary-type">&nbsp;</span>
295    </td><td class="summary">
296      <table width="100%" cellpadding="0" cellspacing="0" border="0">
297        <tr>
298          <td><span class="summary-sig"><a href="googleapiclient.http-module.html#build_http" class="summary-sig-name">build_http</a>()</span><br />
299      Builds httplib2.Http object</td>
300          <td align="right" valign="top">
301            <span class="codelink"><a href="googleapiclient.http-pysrc.html#build_http">source&nbsp;code</a></span>
302
303          </td>
304        </tr>
305      </table>
306
307    </td>
308  </tr>
309</table>
310<!-- ==================== VARIABLES ==================== -->
311<a name="section-Variables"></a>
312<table class="summary" border="1" cellpadding="3"
313       cellspacing="0" width="100%" bgcolor="white">
314<tr bgcolor="#70b0f0" class="table-header">
315  <td colspan="2" class="table-header">
316    <table border="0" cellpadding="0" cellspacing="0" width="100%">
317      <tr valign="top">
318        <td align="left"><span class="table-header">Variables</span></td>
319        <td align="right" valign="top"
320         ><span class="options">[<a href="#section-Variables"
321         class="privatelink" onclick="toggle_private();"
322         >hide private</a>]</span></td>
323      </tr>
324    </table>
325  </td>
326</tr>
327<tr>
328    <td width="15%" align="right" valign="top" class="summary">
329      <span class="summary-type">&nbsp;</span>
330    </td><td class="summary">
331        <a name="LOGGER"></a><span class="summary-name">LOGGER</span> = <code title="logging.getLogger(__name__)">logging.getLogger(__name__)</code>
332    </td>
333  </tr>
334<tr>
335    <td width="15%" align="right" valign="top" class="summary">
336      <span class="summary-type">&nbsp;</span>
337    </td><td class="summary">
338        <a name="DEFAULT_CHUNK_SIZE"></a><span class="summary-name">DEFAULT_CHUNK_SIZE</span> = <code title="104857600">104857600</code>
339    </td>
340  </tr>
341<tr>
342    <td width="15%" align="right" valign="top" class="summary">
343      <span class="summary-type">&nbsp;</span>
344    </td><td class="summary">
345        <a name="MAX_URI_LENGTH"></a><span class="summary-name">MAX_URI_LENGTH</span> = <code title="2048">2048</code>
346    </td>
347  </tr>
348<tr>
349    <td width="15%" align="right" valign="top" class="summary">
350      <span class="summary-type">&nbsp;</span>
351    </td><td class="summary">
352        <a name="MAX_BATCH_LIMIT"></a><span class="summary-name">MAX_BATCH_LIMIT</span> = <code title="1000">1000</code>
353    </td>
354  </tr>
355<tr class="private">
356    <td width="15%" align="right" valign="top" class="summary">
357      <span class="summary-type">&nbsp;</span>
358    </td><td class="summary">
359        <a name="_TOO_MANY_REQUESTS"></a><span class="summary-name">_TOO_MANY_REQUESTS</span> = <code title="429">429</code>
360    </td>
361  </tr>
362<tr>
363    <td width="15%" align="right" valign="top" class="summary">
364      <span class="summary-type">&nbsp;</span>
365    </td><td class="summary">
366        <a name="DEFAULT_HTTP_TIMEOUT_SEC"></a><span class="summary-name">DEFAULT_HTTP_TIMEOUT_SEC</span> = <code title="60">60</code>
367    </td>
368  </tr>
369<tr class="private">
370    <td width="15%" align="right" valign="top" class="summary">
371      <span class="summary-type">&nbsp;</span>
372    </td><td class="summary">
373        <a name="_LEGACY_BATCH_URI"></a><span class="summary-name">_LEGACY_BATCH_URI</span> = <code title="'https://www.googleapis.com/batch'"><code class="variable-quote">'</code><code class="variable-string">https://www.googleapis.com/batch</code><code class="variable-quote">'</code></code>
374    </td>
375  </tr>
376<tr>
377    <td width="15%" align="right" valign="top" class="summary">
378      <span class="summary-type">&nbsp;</span>
379    </td><td class="summary">
380        <a name="ConnectionError"></a><span class="summary-name">ConnectionError</span> = <code title="None">None</code>
381    </td>
382  </tr>
383<tr>
384    <td width="15%" align="right" valign="top" class="summary">
385      <span class="summary-type">&nbsp;</span>
386    </td><td class="summary">
387        <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code>
388    </td>
389  </tr>
390</table>
391<!-- ==================== FUNCTION DETAILS ==================== -->
392<a name="section-FunctionDetails"></a>
393<table class="details" border="1" cellpadding="3"
394       cellspacing="0" width="100%" bgcolor="white">
395<tr bgcolor="#70b0f0" class="table-header">
396  <td colspan="2" class="table-header">
397    <table border="0" cellpadding="0" cellspacing="0" width="100%">
398      <tr valign="top">
399        <td align="left"><span class="table-header">Function Details</span></td>
400        <td align="right" valign="top"
401         ><span class="options">[<a href="#section-FunctionDetails"
402         class="privatelink" onclick="toggle_private();"
403         >hide private</a>]</span></td>
404      </tr>
405    </table>
406  </td>
407</tr>
408</table>
409<a name="_should_retry_response"></a>
410<div class="private">
411<table class="details" border="1" cellpadding="3"
412       cellspacing="0" width="100%" bgcolor="white">
413<tr><td>
414  <table width="100%" cellpadding="0" cellspacing="0" border="0">
415  <tr valign="top"><td>
416  <h3 class="epydoc"><span class="sig"><span class="sig-name">_should_retry_response</span>(<span class="sig-arg">resp_status</span>,
417        <span class="sig-arg">content</span>)</span>
418  </h3>
419  </td><td align="right" valign="top"
420    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#_should_retry_response">source&nbsp;code</a></span>&nbsp;
421    </td>
422  </tr></table>
423
424  <pre class="literalblock">
425Determines whether a response should be retried.
426
427Args:
428  resp_status: The response status received.
429  content: The response content body.
430
431Returns:
432  True if the response should be retried, otherwise False.
433
434</pre>
435  <dl class="fields">
436  </dl>
437</td></tr></table>
438</div>
439<a name="_retry_request"></a>
440<div class="private">
441<table class="details" border="1" cellpadding="3"
442       cellspacing="0" width="100%" bgcolor="white">
443<tr><td>
444  <table width="100%" cellpadding="0" cellspacing="0" border="0">
445  <tr valign="top"><td>
446  <h3 class="epydoc"><span class="sig"><span class="sig-name">_retry_request</span>(<span class="sig-arg">http</span>,
447        <span class="sig-arg">num_retries</span>,
448        <span class="sig-arg">req_type</span>,
449        <span class="sig-arg">sleep</span>,
450        <span class="sig-arg">rand</span>,
451        <span class="sig-arg">uri</span>,
452        <span class="sig-arg">method</span>,
453        <span class="sig-arg">*args</span>,
454        <span class="sig-arg">**kwargs</span>)</span>
455  </h3>
456  </td><td align="right" valign="top"
457    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#_retry_request">source&nbsp;code</a></span>&nbsp;
458    </td>
459  </tr></table>
460
461  <pre class="literalblock">
462Retries an HTTP request multiple times while handling errors.
463
464If after all retries the request still fails, last error is either returned as
465return value (for HTTP 5xx errors) or thrown (for ssl.SSLError).
466
467Args:
468  http: Http object to be used to execute request.
469  num_retries: Maximum number of retries.
470  req_type: Type of the request (used for logging retries).
471  sleep, rand: Functions to sleep for random time between retries.
472  uri: URI to be requested.
473  method: HTTP method to be used.
474  args, kwargs: Additional arguments passed to http.request.
475
476Returns:
477  resp, content - Response from the http request (may be HTTP 5xx).
478
479</pre>
480  <dl class="fields">
481  </dl>
482</td></tr></table>
483</div>
484<a name="set_user_agent"></a>
485<div>
486<table class="details" border="1" cellpadding="3"
487       cellspacing="0" width="100%" bgcolor="white">
488<tr><td>
489  <table width="100%" cellpadding="0" cellspacing="0" border="0">
490  <tr valign="top"><td>
491  <h3 class="epydoc"><span class="sig"><span class="sig-name">set_user_agent</span>(<span class="sig-arg">http</span>,
492        <span class="sig-arg">user_agent</span>)</span>
493  </h3>
494  </td><td align="right" valign="top"
495    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#set_user_agent">source&nbsp;code</a></span>&nbsp;
496    </td>
497  </tr></table>
498
499  <pre class="literalblock">
500Set the user-agent on every request.
501
502Args:
503   http - An instance of httplib2.Http
504       or something that acts like it.
505   user_agent: string, the value for the user-agent header.
506
507Returns:
508   A modified instance of http that was passed in.
509
510Example:
511
512  h = httplib2.Http()
513  h = set_user_agent(h, &quot;my-app-name/6.0&quot;)
514
515Most of the time the user-agent will be set doing auth, this is for the rare
516cases where you are accessing an unauthenticated endpoint.
517
518</pre>
519  <dl class="fields">
520  </dl>
521</td></tr></table>
522</div>
523<a name="tunnel_patch"></a>
524<div>
525<table class="details" border="1" cellpadding="3"
526       cellspacing="0" width="100%" bgcolor="white">
527<tr><td>
528  <table width="100%" cellpadding="0" cellspacing="0" border="0">
529  <tr valign="top"><td>
530  <h3 class="epydoc"><span class="sig"><span class="sig-name">tunnel_patch</span>(<span class="sig-arg">http</span>)</span>
531  </h3>
532  </td><td align="right" valign="top"
533    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#tunnel_patch">source&nbsp;code</a></span>&nbsp;
534    </td>
535  </tr></table>
536
537  <pre class="literalblock">
538Tunnel PATCH requests over POST.
539Args:
540   http - An instance of httplib2.Http
541       or something that acts like it.
542
543Returns:
544   A modified instance of http that was passed in.
545
546Example:
547
548  h = httplib2.Http()
549  h = tunnel_patch(h, &quot;my-app-name/6.0&quot;)
550
551Useful if you are running on a platform that doesn't support PATCH.
552Apply this last if you are using OAuth 1.0, as changing the method
553will result in a different signature.
554
555</pre>
556  <dl class="fields">
557  </dl>
558</td></tr></table>
559</div>
560<a name="build_http"></a>
561<div>
562<table class="details" border="1" cellpadding="3"
563       cellspacing="0" width="100%" bgcolor="white">
564<tr><td>
565  <table width="100%" cellpadding="0" cellspacing="0" border="0">
566  <tr valign="top"><td>
567  <h3 class="epydoc"><span class="sig"><span class="sig-name">build_http</span>()</span>
568  </h3>
569  </td><td align="right" valign="top"
570    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#build_http">source&nbsp;code</a></span>&nbsp;
571    </td>
572  </tr></table>
573
574  <pre class="literalblock">
575Builds httplib2.Http object
576
577Returns:
578A httplib2.Http object, which is used to make http requests, and which has timeout set by default.
579To override default timeout call
580
581  socket.setdefaulttimeout(timeout_in_sec)
582
583before interacting with this method.
584
585</pre>
586  <dl class="fields">
587  </dl>
588</td></tr></table>
589</div>
590<br />
591<!-- ==================== NAVIGATION BAR ==================== -->
592<table class="navbar" border="0" width="100%" cellpadding="0"
593       bgcolor="#a0c0ff" cellspacing="0">
594  <tr valign="middle">
595  <!-- Home link -->
596      <th>&nbsp;&nbsp;&nbsp;<a
597        href="googleapiclient-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
598
599  <!-- Tree link -->
600      <th>&nbsp;&nbsp;&nbsp;<a
601        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
602
603  <!-- Index link -->
604      <th>&nbsp;&nbsp;&nbsp;<a
605        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
606
607  <!-- Help link -->
608      <th>&nbsp;&nbsp;&nbsp;<a
609        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
610
611      <th class="navbar" width="100%"></th>
612  </tr>
613</table>
614<table border="0" cellpadding="0" cellspacing="0" width="100%%">
615  <tr>
616    <td align="left" class="footer">
617    Generated by Epydoc 3.0.1 on Fri Oct  2 20:46:22 2020
618    </td>
619    <td align="right" class="footer">
620      <a target="mainFrame" href="http://epydoc.sourceforge.net"
621        >http://epydoc.sourceforge.net</a>
622    </td>
623  </tr>
624</table>
625
626<script type="text/javascript">
627  <!--
628  // Private objects are initially displayed (because if
629  // javascript is turned off then we want them to be
630  // visible); but by default, we want to hide them.  So hide
631  // them unless we have a cookie that says to show them.
632  checkCookie();
633  // -->
634</script>
635</body>
636</html>
637