blob: 2c53f0d8cfb843fd8950f5f97e788ece5b259169 [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>oauth2client.file.Storage</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="oauth2client-module.html">Package&nbsp;oauth2client</a> ::
38 <a href="oauth2client.file-module.html">Module&nbsp;file</a> ::
39 Class&nbsp;Storage
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="oauth2client.file.Storage-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 Storage</h1><p class="nomargin-top"><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage">source&nbsp;code</a></span></p>
57<center>
Joe Gregoriof4839b02012-09-06 13:47:24 -040058<center> <map id="class_hierarchy_for_storage_3" name="class_hierarchy_for_storage_3">
Joe Gregorio746096f2012-06-15 10:53:36 -040059<area shape="rect" href="oauth2client.client.Storage-class.html" title="client.Storage" alt="" coords="5,5,107,32"/>
Joe Gregoriof4839b02012-09-06 13:47:24 -040060<area shape="rect" href="oauth2client.file.Storage-class.html" title="Storage" alt="" coords="131,5,197,32"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040061</map>
Joe Gregoriof4839b02012-09-06 13:47:24 -040062 <img src="class_hierarchy_for_storage_3.gif" alt='' usemap="#class_hierarchy_for_storage_3" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040063</center>
64</center>
65<hr />
66<pre class="literalblock">
67Store and retrieve a single credential to and from a file.
68
69</pre>
70
71<!-- ==================== INSTANCE METHODS ==================== -->
72<a name="section-InstanceMethods"></a>
73<table class="summary" border="1" cellpadding="3"
74 cellspacing="0" width="100%" bgcolor="white">
75<tr bgcolor="#70b0f0" class="table-header">
76 <td colspan="2" class="table-header">
77 <table border="0" cellpadding="0" cellspacing="0" width="100%">
78 <tr valign="top">
79 <td align="left"><span class="table-header">Instance Methods</span></td>
80 <td align="right" valign="top"
81 ><span class="options">[<a href="#section-InstanceMethods"
82 class="privatelink" onclick="toggle_private();"
83 >hide private</a>]</span></td>
84 </tr>
85 </table>
86 </td>
87</tr>
88<tr>
89 <td width="15%" align="right" valign="top" class="summary">
90 <span class="summary-type">&nbsp;</span>
91 </td><td class="summary">
92 <table width="100%" cellpadding="0" cellspacing="0" border="0">
93 <tr>
94 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
95 <span class="summary-sig-arg">filename</span>)</span><br />
96 x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
97 <td align="right" valign="top">
98 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.__init__">source&nbsp;code</a></span>
99
100 </td>
101 </tr>
102 </table>
103
104 </td>
105 </tr>
Joe Gregorio0cd347a2012-08-30 08:22:27 -0400106<tr class="private">
107 <td width="15%" align="right" valign="top" class="summary">
108 <span class="summary-type">&nbsp;</span>
109 </td><td class="summary">
110 <table width="100%" cellpadding="0" cellspacing="0" border="0">
111 <tr>
112 <td><span class="summary-sig"><a name="_validate_file"></a><span class="summary-sig-name">_validate_file</span>(<span class="summary-sig-arg">self</span>)</span></td>
113 <td align="right" valign="top">
114 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage._validate_file">source&nbsp;code</a></span>
115
116 </td>
117 </tr>
118 </table>
119
120 </td>
121 </tr>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400122<tr>
123 <td width="15%" align="right" valign="top" class="summary">
124 <span class="summary-type">&nbsp;</span>
125 </td><td class="summary">
126 <table width="100%" cellpadding="0" cellspacing="0" border="0">
127 <tr>
128 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#acquire_lock" class="summary-sig-name">acquire_lock</a>(<span class="summary-sig-arg">self</span>)</span><br />
129 Acquires any lock necessary to access this Storage.</td>
130 <td align="right" valign="top">
131 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.acquire_lock">source&nbsp;code</a></span>
132
133 </td>
134 </tr>
135 </table>
136
137 </td>
138 </tr>
139<tr>
140 <td width="15%" align="right" valign="top" class="summary">
141 <span class="summary-type">&nbsp;</span>
142 </td><td class="summary">
143 <table width="100%" cellpadding="0" cellspacing="0" border="0">
144 <tr>
145 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#release_lock" class="summary-sig-name">release_lock</a>(<span class="summary-sig-arg">self</span>)</span><br />
146 Release the Storage lock.</td>
147 <td align="right" valign="top">
148 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.release_lock">source&nbsp;code</a></span>
149
150 </td>
151 </tr>
152 </table>
153
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 <table width="100%" cellpadding="0" cellspacing="0" border="0">
161 <tr>
162 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#locked_get" class="summary-sig-name">locked_get</a>(<span class="summary-sig-arg">self</span>)</span><br />
163 Retrieve Credential from file.</td>
164 <td align="right" valign="top">
165 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.locked_get">source&nbsp;code</a></span>
166
167 </td>
168 </tr>
169 </table>
170
171 </td>
172 </tr>
173<tr class="private">
174 <td width="15%" align="right" valign="top" class="summary">
175 <span class="summary-type">&nbsp;</span>
176 </td><td class="summary">
177 <table width="100%" cellpadding="0" cellspacing="0" border="0">
178 <tr>
179 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#_create_file_if_needed" class="summary-sig-name" onclick="show_private();">_create_file_if_needed</a>(<span class="summary-sig-arg">self</span>)</span><br />
180 Create an empty file if necessary.</td>
181 <td align="right" valign="top">
182 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage._create_file_if_needed">source&nbsp;code</a></span>
183
184 </td>
185 </tr>
186 </table>
187
188 </td>
189 </tr>
190<tr>
191 <td width="15%" align="right" valign="top" class="summary">
192 <span class="summary-type">&nbsp;</span>
193 </td><td class="summary">
194 <table width="100%" cellpadding="0" cellspacing="0" border="0">
195 <tr>
196 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#locked_put" class="summary-sig-name">locked_put</a>(<span class="summary-sig-arg">self</span>,
197 <span class="summary-sig-arg">credentials</span>)</span><br />
198 Write Credentials to file.</td>
199 <td align="right" valign="top">
200 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.locked_put">source&nbsp;code</a></span>
201
202 </td>
203 </tr>
204 </table>
205
206 </td>
207 </tr>
208<tr>
209 <td width="15%" align="right" valign="top" class="summary">
210 <span class="summary-type">&nbsp;</span>
211 </td><td class="summary">
212 <table width="100%" cellpadding="0" cellspacing="0" border="0">
213 <tr>
214 <td><span class="summary-sig"><a href="oauth2client.file.Storage-class.html#locked_delete" class="summary-sig-name">locked_delete</a>(<span class="summary-sig-arg">self</span>)</span><br />
215 Delete Credentials file.</td>
216 <td align="right" valign="top">
217 <span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.locked_delete">source&nbsp;code</a></span>
218
219 </td>
220 </tr>
221 </table>
222
223 </td>
224 </tr>
225 <tr>
226 <td colspan="2" class="summary">
227 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Storage-class.html">client.Storage</a></code></b>:
228 <code><a href="oauth2client.client.Storage-class.html#delete">delete</a></code>,
229 <code><a href="oauth2client.client.Storage-class.html#get">get</a></code>,
230 <code><a href="oauth2client.client.Storage-class.html#put">put</a></code>
231 </p>
232 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
233 <code>__delattr__</code>,
234 <code>__format__</code>,
235 <code>__getattribute__</code>,
236 <code>__hash__</code>,
237 <code>__new__</code>,
238 <code>__reduce__</code>,
239 <code>__reduce_ex__</code>,
240 <code>__repr__</code>,
241 <code>__setattr__</code>,
242 <code>__sizeof__</code>,
243 <code>__str__</code>,
244 <code>__subclasshook__</code>
245 </p>
246 </td>
247 </tr>
248</table>
249<!-- ==================== PROPERTIES ==================== -->
250<a name="section-Properties"></a>
251<table class="summary" border="1" cellpadding="3"
252 cellspacing="0" width="100%" bgcolor="white">
253<tr bgcolor="#70b0f0" class="table-header">
254 <td colspan="2" class="table-header">
255 <table border="0" cellpadding="0" cellspacing="0" width="100%">
256 <tr valign="top">
257 <td align="left"><span class="table-header">Properties</span></td>
258 <td align="right" valign="top"
259 ><span class="options">[<a href="#section-Properties"
260 class="privatelink" onclick="toggle_private();"
261 >hide private</a>]</span></td>
262 </tr>
263 </table>
264 </td>
265</tr>
266 <tr>
267 <td colspan="2" class="summary">
268 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
269 <code>__class__</code>
270 </p>
271 </td>
272 </tr>
273</table>
274<!-- ==================== METHOD DETAILS ==================== -->
275<a name="section-MethodDetails"></a>
276<table class="details" border="1" cellpadding="3"
277 cellspacing="0" width="100%" bgcolor="white">
278<tr bgcolor="#70b0f0" class="table-header">
279 <td colspan="2" class="table-header">
280 <table border="0" cellpadding="0" cellspacing="0" width="100%">
281 <tr valign="top">
282 <td align="left"><span class="table-header">Method Details</span></td>
283 <td align="right" valign="top"
284 ><span class="options">[<a href="#section-MethodDetails"
285 class="privatelink" onclick="toggle_private();"
286 >hide private</a>]</span></td>
287 </tr>
288 </table>
289 </td>
290</tr>
291</table>
292<a name="__init__"></a>
293<div>
294<table class="details" border="1" cellpadding="3"
295 cellspacing="0" width="100%" bgcolor="white">
296<tr><td>
297 <table width="100%" cellpadding="0" cellspacing="0" border="0">
298 <tr valign="top"><td>
299 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
300 <span class="sig-arg">filename</span>)</span>
301 <br /><em class="fname">(Constructor)</em>
302 </h3>
303 </td><td align="right" valign="top"
304 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.__init__">source&nbsp;code</a></span>&nbsp;
305 </td>
306 </tr></table>
307
308 <pre class="literalblock">
309x.__init__(...) initializes x; see x.__class__.__doc__ for signature
310
311</pre>
312 <dl class="fields">
313 <dt>Overrides:
314 object.__init__
315 <dd><em class="note">(inherited documentation)</em></dd>
316 </dt>
317 </dl>
318</td></tr></table>
319</div>
320<a name="acquire_lock"></a>
321<div>
322<table class="details" border="1" cellpadding="3"
323 cellspacing="0" width="100%" bgcolor="white">
324<tr><td>
325 <table width="100%" cellpadding="0" cellspacing="0" border="0">
326 <tr valign="top"><td>
327 <h3 class="epydoc"><span class="sig"><span class="sig-name">acquire_lock</span>(<span class="sig-arg">self</span>)</span>
328 </h3>
329 </td><td align="right" valign="top"
330 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.acquire_lock">source&nbsp;code</a></span>&nbsp;
331 </td>
332 </tr></table>
333
334 <pre class="literalblock">
335Acquires any lock necessary to access this Storage.
336
337This lock is not reentrant.
338
339</pre>
340 <dl class="fields">
341 <dt>Overrides:
342 <a href="oauth2client.client.Storage-class.html#acquire_lock">client.Storage.acquire_lock</a>
343 </dt>
344 </dl>
345</td></tr></table>
346</div>
347<a name="release_lock"></a>
348<div>
349<table class="details" border="1" cellpadding="3"
350 cellspacing="0" width="100%" bgcolor="white">
351<tr><td>
352 <table width="100%" cellpadding="0" cellspacing="0" border="0">
353 <tr valign="top"><td>
354 <h3 class="epydoc"><span class="sig"><span class="sig-name">release_lock</span>(<span class="sig-arg">self</span>)</span>
355 </h3>
356 </td><td align="right" valign="top"
357 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.release_lock">source&nbsp;code</a></span>&nbsp;
358 </td>
359 </tr></table>
360
361 <pre class="literalblock">
362Release the Storage lock.
363
364Trying to release a lock that isn't held will result in a
365RuntimeError.
366
367</pre>
368 <dl class="fields">
369 <dt>Overrides:
370 <a href="oauth2client.client.Storage-class.html#release_lock">client.Storage.release_lock</a>
371 </dt>
372 </dl>
373</td></tr></table>
374</div>
375<a name="locked_get"></a>
376<div>
377<table class="details" border="1" cellpadding="3"
378 cellspacing="0" width="100%" bgcolor="white">
379<tr><td>
380 <table width="100%" cellpadding="0" cellspacing="0" border="0">
381 <tr valign="top"><td>
382 <h3 class="epydoc"><span class="sig"><span class="sig-name">locked_get</span>(<span class="sig-arg">self</span>)</span>
383 </h3>
384 </td><td align="right" valign="top"
385 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.locked_get">source&nbsp;code</a></span>&nbsp;
386 </td>
387 </tr></table>
388
389 <pre class="literalblock">
390Retrieve Credential from file.
391
392Returns:
393 oauth2client.client.Credentials
394
Joe Gregorio0cd347a2012-08-30 08:22:27 -0400395Raises:
396 CredentialsFileSymbolicLinkError if the file is a symbolic link.
397
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400398</pre>
399 <dl class="fields">
400 <dt>Overrides:
401 <a href="oauth2client.client.Storage-class.html#locked_get">client.Storage.locked_get</a>
402 </dt>
403 </dl>
404</td></tr></table>
405</div>
406<a name="_create_file_if_needed"></a>
407<div class="private">
408<table class="details" border="1" cellpadding="3"
409 cellspacing="0" width="100%" bgcolor="white">
410<tr><td>
411 <table width="100%" cellpadding="0" cellspacing="0" border="0">
412 <tr valign="top"><td>
413 <h3 class="epydoc"><span class="sig"><span class="sig-name">_create_file_if_needed</span>(<span class="sig-arg">self</span>)</span>
414 </h3>
415 </td><td align="right" valign="top"
416 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage._create_file_if_needed">source&nbsp;code</a></span>&nbsp;
417 </td>
418 </tr></table>
419
420 <pre class="literalblock">
421Create an empty file if necessary.
422
423This method will not initialize the file. Instead it implements a
424simple version of &quot;touch&quot; to ensure the file has been created.
425
426</pre>
427 <dl class="fields">
428 </dl>
429</td></tr></table>
430</div>
431<a name="locked_put"></a>
432<div>
433<table class="details" border="1" cellpadding="3"
434 cellspacing="0" width="100%" bgcolor="white">
435<tr><td>
436 <table width="100%" cellpadding="0" cellspacing="0" border="0">
437 <tr valign="top"><td>
438 <h3 class="epydoc"><span class="sig"><span class="sig-name">locked_put</span>(<span class="sig-arg">self</span>,
439 <span class="sig-arg">credentials</span>)</span>
440 </h3>
441 </td><td align="right" valign="top"
442 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.locked_put">source&nbsp;code</a></span>&nbsp;
443 </td>
444 </tr></table>
445
446 <pre class="literalblock">
447Write Credentials to file.
448
449Args:
450 credentials: Credentials, the credentials to store.
451
Joe Gregorio0cd347a2012-08-30 08:22:27 -0400452Raises:
453 CredentialsFileSymbolicLinkError if the file is a symbolic link.
454
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400455</pre>
456 <dl class="fields">
457 <dt>Overrides:
458 <a href="oauth2client.client.Storage-class.html#locked_put">client.Storage.locked_put</a>
459 </dt>
460 </dl>
461</td></tr></table>
462</div>
463<a name="locked_delete"></a>
464<div>
465<table class="details" border="1" cellpadding="3"
466 cellspacing="0" width="100%" bgcolor="white">
467<tr><td>
468 <table width="100%" cellpadding="0" cellspacing="0" border="0">
469 <tr valign="top"><td>
470 <h3 class="epydoc"><span class="sig"><span class="sig-name">locked_delete</span>(<span class="sig-arg">self</span>)</span>
471 </h3>
472 </td><td align="right" valign="top"
473 ><span class="codelink"><a href="oauth2client.file-pysrc.html#Storage.locked_delete">source&nbsp;code</a></span>&nbsp;
474 </td>
475 </tr></table>
476
477 <pre class="literalblock">
478Delete Credentials file.
479
480Args:
481 credentials: Credentials, the credentials to store.
482
483</pre>
484 <dl class="fields">
485 <dt>Overrides:
486 <a href="oauth2client.client.Storage-class.html#locked_delete">client.Storage.locked_delete</a>
487 </dt>
488 </dl>
489</td></tr></table>
490</div>
491<br />
492<!-- ==================== NAVIGATION BAR ==================== -->
493<table class="navbar" border="0" width="100%" cellpadding="0"
494 bgcolor="#a0c0ff" cellspacing="0">
495 <tr valign="middle">
496
497 <!-- Tree link -->
498 <th>&nbsp;&nbsp;&nbsp;<a
499 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
500
501 <!-- Index link -->
502 <th>&nbsp;&nbsp;&nbsp;<a
503 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
504
505 <!-- Help link -->
506 <th>&nbsp;&nbsp;&nbsp;<a
507 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
508
509 <th class="navbar" width="100%"></th>
510 </tr>
511</table>
512<table border="0" cellpadding="0" cellspacing="0" width="100%%">
513 <tr>
514 <td align="left" class="footer">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400515 Generated by Epydoc 3.0.1 on Thu Sep 6 13:36:15 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400516 </td>
517 <td align="right" class="footer">
518 <a target="mainFrame" href="http://epydoc.sourceforge.net"
519 >http://epydoc.sourceforge.net</a>
520 </td>
521 </tr>
522</table>
523
524<script type="text/javascript">
525 <!--
526 // Private objects are initially displayed (because if
527 // javascript is turned off then we want them to be
528 // visible); but by default, we want to hide them. So hide
529 // them unless we have a cookie that says to show them.
530 checkCookie();
531 // -->
532</script>
533</body>
534</html>