blob: d64fe78461bc91ed4ace9e15470e40469fa7df90 [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">
Joe Gregorio52a5c532013-01-24 16:19:07 -050059<area shape="rect" id="node1" href="apiclient.http.HttpRequest-class.html" title="HttpRequest" alt="" coords="5,6,101,34"/>
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 Gregoriof4839b02012-09-06 13:47:24 -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">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">'GET'</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 />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400102 Constructor for an HttpRequest.</td>
103 <td align="right" valign="top">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400104 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.__init__">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400105
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>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400118 <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 />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400120 Execute the request.</td>
121 <td align="right" valign="top">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400122 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.execute">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400123
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>
Joe Gregorio52a5c532013-01-24 16:19:07 -0500136 <td><span class="summary-sig"><a href="apiclient.http.HttpRequest-class.html#add_response_callback" class="summary-sig-name">add_response_callback</a>(<span class="summary-sig-arg">self</span>,
137 <span class="summary-sig-arg">cb</span>)</span><br />
138 add_response_headers_callback</td>
139 <td align="right" valign="top">
140 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.add_response_callback">source&nbsp;code</a></span>
141
142 </td>
143 </tr>
144 </table>
145
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 <table width="100%" cellpadding="0" cellspacing="0" border="0">
153 <tr>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400154 <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>,
155 <span class="summary-sig-arg">http</span>=<span class="summary-sig-default">None</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400156 Execute the next step of a resumable upload.</td>
157 <td align="right" valign="top">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400158 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.next_chunk">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400159
160 </td>
161 </tr>
162 </table>
163
164 </td>
165 </tr>
Joe Gregorio66212032012-06-14 09:10:14 -0400166<tr class="private">
167 <td width="15%" align="right" valign="top" class="summary">
168 <span class="summary-type">&nbsp;</span>
169 </td><td class="summary">
170 <table width="100%" cellpadding="0" cellspacing="0" border="0">
171 <tr>
172 <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>,
173 <span class="summary-sig-arg">resp</span>,
174 <span class="summary-sig-arg">content</span>)</span><br />
175 Process the response from a single chunk upload.</td>
176 <td align="right" valign="top">
177 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>
178
179 </td>
180 </tr>
181 </table>
182
183 </td>
184 </tr>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400185<tr>
186 <td width="15%" align="right" valign="top" class="summary">
187 <span class="summary-type">&nbsp;</span>
188 </td><td class="summary">
189 <table width="100%" cellpadding="0" cellspacing="0" border="0">
190 <tr>
191 <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 />
192 Returns a JSON representation of the HttpRequest.</td>
193 <td align="right" valign="top">
194 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.to_json">source&nbsp;code</a></span>
195
196 </td>
197 </tr>
198 </table>
199
200 </td>
201 </tr>
202 <tr>
203 <td colspan="2" class="summary">
204 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
205 <code>__delattr__</code>,
206 <code>__format__</code>,
207 <code>__getattribute__</code>,
208 <code>__hash__</code>,
209 <code>__new__</code>,
210 <code>__reduce__</code>,
211 <code>__reduce_ex__</code>,
212 <code>__repr__</code>,
213 <code>__setattr__</code>,
214 <code>__sizeof__</code>,
215 <code>__str__</code>,
216 <code>__subclasshook__</code>
217 </p>
218 </td>
219 </tr>
220</table>
221<!-- ==================== STATIC METHODS ==================== -->
222<a name="section-StaticMethods"></a>
223<table class="summary" border="1" cellpadding="3"
224 cellspacing="0" width="100%" bgcolor="white">
225<tr bgcolor="#70b0f0" class="table-header">
226 <td colspan="2" class="table-header">
227 <table border="0" cellpadding="0" cellspacing="0" width="100%">
228 <tr valign="top">
229 <td align="left"><span class="table-header">Static Methods</span></td>
230 <td align="right" valign="top"
231 ><span class="options">[<a href="#section-StaticMethods"
232 class="privatelink" onclick="toggle_private();"
233 >hide private</a>]</span></td>
234 </tr>
235 </table>
236 </td>
237</tr>
238<tr>
239 <td width="15%" align="right" valign="top" class="summary">
240 <span class="summary-type">&nbsp;</span>
241 </td><td class="summary">
242 <table width="100%" cellpadding="0" cellspacing="0" border="0">
243 <tr>
244 <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>,
245 <span class="summary-sig-arg">http</span>,
246 <span class="summary-sig-arg">postproc</span>)</span><br />
247 Returns an HttpRequest populated with info from a JSON object.</td>
248 <td align="right" valign="top">
249 <span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.from_json">source&nbsp;code</a></span>
250
251 </td>
252 </tr>
253 </table>
254
255 </td>
256 </tr>
257</table>
258<!-- ==================== PROPERTIES ==================== -->
259<a name="section-Properties"></a>
260<table class="summary" 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">Properties</span></td>
267 <td align="right" valign="top"
268 ><span class="options">[<a href="#section-Properties"
269 class="privatelink" onclick="toggle_private();"
270 >hide private</a>]</span></td>
271 </tr>
272 </table>
273 </td>
274</tr>
275 <tr>
276 <td colspan="2" class="summary">
277 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
278 <code>__class__</code>
279 </p>
280 </td>
281 </tr>
282</table>
283<!-- ==================== METHOD DETAILS ==================== -->
284<a name="section-MethodDetails"></a>
285<table class="details" border="1" cellpadding="3"
286 cellspacing="0" width="100%" bgcolor="white">
287<tr bgcolor="#70b0f0" class="table-header">
288 <td colspan="2" class="table-header">
289 <table border="0" cellpadding="0" cellspacing="0" width="100%">
290 <tr valign="top">
291 <td align="left"><span class="table-header">Method Details</span></td>
292 <td align="right" valign="top"
293 ><span class="options">[<a href="#section-MethodDetails"
294 class="privatelink" onclick="toggle_private();"
295 >hide private</a>]</span></td>
296 </tr>
297 </table>
298 </td>
299</tr>
300</table>
301<a name="__init__"></a>
302<div>
303<table class="details" border="1" cellpadding="3"
304 cellspacing="0" width="100%" bgcolor="white">
305<tr><td>
306 <table width="100%" cellpadding="0" cellspacing="0" border="0">
307 <tr valign="top"><td>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400308 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
309 <span class="sig-arg">http</span>,
310 <span class="sig-arg">postproc</span>,
311 <span class="sig-arg">uri</span>,
312 <span class="sig-arg">method</span>=<span class="sig-default">'GET'</span>,
313 <span class="sig-arg">body</span>=<span class="sig-default">None</span>,
314 <span class="sig-arg">headers</span>=<span class="sig-default">None</span>,
315 <span class="sig-arg">methodId</span>=<span class="sig-default">None</span>,
316 <span class="sig-arg">resumable</span>=<span class="sig-default">None</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400317 <br /><em class="fname">(Constructor)</em>
318 </h3>
319 </td><td align="right" valign="top"
Joe Gregoriof4839b02012-09-06 13:47:24 -0400320 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.__init__">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400321 </td>
322 </tr></table>
323
324 <pre class="literalblock">
325Constructor for an HttpRequest.
326
327Args:
328 http: httplib2.Http, the transport object to use to make a request
329 postproc: callable, called on the HTTP response and content to transform
330 it into a data object before returning, or raising an exception
331 on an error.
332 uri: string, the absolute URI to send the request to
333 method: string, the HTTP method to use
334 body: string, the request body of the HTTP request,
335 headers: dict, the HTTP request headers
336 methodId: string, a unique identifier for the API method being called.
337 resumable: MediaUpload, None if this is not a resumbale request.
338
339</pre>
340 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400341 <dt>Decorators:</dt>
342 <dd><ul class="nomargin-top">
343 <li><code>@util.positional(4)</code></li>
344 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400345 <dt>Overrides:
346 object.__init__
347 </dt>
348 </dl>
349</td></tr></table>
350</div>
351<a name="execute"></a>
352<div>
353<table class="details" border="1" cellpadding="3"
354 cellspacing="0" width="100%" bgcolor="white">
355<tr><td>
356 <table width="100%" cellpadding="0" cellspacing="0" border="0">
357 <tr valign="top"><td>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400358 <h3 class="epydoc"><span class="sig"><span class="sig-name">execute</span>(<span class="sig-arg">self</span>,
359 <span class="sig-arg">http</span>=<span class="sig-default">None</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400360 </h3>
361 </td><td align="right" valign="top"
Joe Gregoriof4839b02012-09-06 13:47:24 -0400362 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.execute">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400363 </td>
364 </tr></table>
365
366 <pre class="literalblock">
367Execute the request.
368
369Args:
370 http: httplib2.Http, an http object to be used in place of the
371 one the HttpRequest request object was constructed with.
372
373Returns:
374 A deserialized object model of the response body as determined
375 by the postproc.
376
377Raises:
378 apiclient.errors.HttpError if the response was not a 2xx.
Joe Gregorioad8013f2012-08-03 08:44:02 -0400379 httplib2.HttpLib2Error if a transport error has occured.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400380
381</pre>
382 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400383 <dt>Decorators:</dt>
384 <dd><ul class="nomargin-top">
385 <li><code>@util.positional(1)</code></li>
386 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400387 </dl>
388</td></tr></table>
389</div>
Joe Gregorio52a5c532013-01-24 16:19:07 -0500390<a name="add_response_callback"></a>
391<div>
392<table class="details" border="1" cellpadding="3"
393 cellspacing="0" width="100%" bgcolor="white">
394<tr><td>
395 <table width="100%" cellpadding="0" cellspacing="0" border="0">
396 <tr valign="top"><td>
397 <h3 class="epydoc"><span class="sig"><span class="sig-name">add_response_callback</span>(<span class="sig-arg">self</span>,
398 <span class="sig-arg">cb</span>)</span>
399 </h3>
400 </td><td align="right" valign="top"
401 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.add_response_callback">source&nbsp;code</a></span>&nbsp;
402 </td>
403 </tr></table>
404
405 <pre class="literalblock">
406add_response_headers_callback
407
408Args:
409 cb: Callback to be called on receiving the response headers, of signature:
410
411 def cb(resp):
412 # Where resp is an instance of httplib2.Response
413
414</pre>
415 <dl class="fields">
416 <dt>Decorators:</dt>
417 <dd><ul class="nomargin-top">
418 <li><code>@util.positional(2)</code></li>
419 </ul></dd>
420 </dl>
421</td></tr></table>
422</div>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400423<a name="next_chunk"></a>
424<div>
425<table class="details" border="1" cellpadding="3"
426 cellspacing="0" width="100%" bgcolor="white">
427<tr><td>
428 <table width="100%" cellpadding="0" cellspacing="0" border="0">
429 <tr valign="top"><td>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400430 <h3 class="epydoc"><span class="sig"><span class="sig-name">next_chunk</span>(<span class="sig-arg">self</span>,
431 <span class="sig-arg">http</span>=<span class="sig-default">None</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400432 </h3>
433 </td><td align="right" valign="top"
Joe Gregoriof4839b02012-09-06 13:47:24 -0400434 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest.next_chunk">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400435 </td>
436 </tr></table>
437
438 <pre class="literalblock">
439Execute the next step of a resumable upload.
440
441Can only be used if the method being executed supports media uploads and
442the MediaUpload object passed in was flagged as using resumable upload.
443
444Example:
445
Joe Gregorioebd0b842012-06-15 14:14:17 -0400446 media = MediaFileUpload('cow.png', mimetype='image/png',
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400447 chunksize=1000, resumable=True)
Joe Gregorioebd0b842012-06-15 14:14:17 -0400448 request = farm.animals().insert(
449 id='cow',
450 name='cow.png',
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400451 media_body=media)
452
453 response = None
454 while response is None:
455 status, response = request.next_chunk()
456 if status:
457 print &quot;Upload %d%% complete.&quot; % int(status.progress() * 100)
458
459
460Returns:
461 (status, body): (ResumableMediaStatus, object)
462 The body will be None until the resumable media is fully uploaded.
463
Joe Gregorio66212032012-06-14 09:10:14 -0400464Raises:
465 apiclient.errors.HttpError if the response was not a 2xx.
Joe Gregorioad8013f2012-08-03 08:44:02 -0400466 httplib2.HttpLib2Error if a transport error has occured.
Joe Gregorio66212032012-06-14 09:10:14 -0400467
468</pre>
469 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400470 <dt>Decorators:</dt>
471 <dd><ul class="nomargin-top">
472 <li><code>@util.positional(1)</code></li>
473 </ul></dd>
Joe Gregorio66212032012-06-14 09:10:14 -0400474 </dl>
475</td></tr></table>
476</div>
477<a name="_process_response"></a>
478<div class="private">
479<table class="details" border="1" cellpadding="3"
480 cellspacing="0" width="100%" bgcolor="white">
481<tr><td>
482 <table width="100%" cellpadding="0" cellspacing="0" border="0">
483 <tr valign="top"><td>
484 <h3 class="epydoc"><span class="sig"><span class="sig-name">_process_response</span>(<span class="sig-arg">self</span>,
485 <span class="sig-arg">resp</span>,
486 <span class="sig-arg">content</span>)</span>
487 </h3>
488 </td><td align="right" valign="top"
489 ><span class="codelink"><a href="apiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>&nbsp;
490 </td>
491 </tr></table>
492
493 <pre class="literalblock">
494Process the response from a single chunk upload.
495
496Args:
497 resp: httplib2.Response, the response object.
498 content: string, the content of the response.
499
500Returns:
501 (status, body): (ResumableMediaStatus, object)
502 The body will be None until the resumable media is fully uploaded.
503
504Raises:
505 apiclient.errors.HttpError if the response was not a 2xx or a 308.
506
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400507</pre>
508 <dl class="fields">
509 </dl>
510</td></tr></table>
511</div>
512<br />
513<!-- ==================== NAVIGATION BAR ==================== -->
514<table class="navbar" border="0" width="100%" cellpadding="0"
515 bgcolor="#a0c0ff" cellspacing="0">
516 <tr valign="middle">
517
518 <!-- Tree link -->
519 <th>&nbsp;&nbsp;&nbsp;<a
520 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
521
522 <!-- Index link -->
523 <th>&nbsp;&nbsp;&nbsp;<a
524 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
525
526 <!-- Help link -->
527 <th>&nbsp;&nbsp;&nbsp;<a
528 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
529
530 <th class="navbar" width="100%"></th>
531 </tr>
532</table>
533<table border="0" cellpadding="0" cellspacing="0" width="100%%">
534 <tr>
535 <td align="left" class="footer">
Joe Gregorio52a5c532013-01-24 16:19:07 -0500536 Generated by Epydoc 3.0.1 on Thu Jan 24 16:14:34 2013
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400537 </td>
538 <td align="right" class="footer">
539 <a target="mainFrame" href="http://epydoc.sourceforge.net"
540 >http://epydoc.sourceforge.net</a>
541 </td>
542 </tr>
543</table>
544
545<script type="text/javascript">
546 <!--
547 // Private objects are initially displayed (because if
548 // javascript is turned off then we want them to be
549 // visible); but by default, we want to hide them. So hide
550 // them unless we have a cookie that says to show them.
551 checkCookie();
552 // -->
553</script>
554</body>
555</html>