blob: cb7f4097fe82606771832b622b1a93c0661ab14f [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.appengine.AppAssertionCredentials</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.appengine-module.html">Module&nbsp;appengine</a> ::
39 Class&nbsp;AppAssertionCredentials
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.appengine.AppAssertionCredentials-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 AppAssertionCredentials</h1><p class="nomargin-top"><span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials">source&nbsp;code</a></span></p>
57<center>
Joe Gregorio746096f2012-06-15 10:53:36 -040058<center> <map id="class_hierarchy_for_appasserti" name="class_hierarchy_for_appasserti">
Joe Gregoriof4839b02012-09-06 13:47:24 -040059<area shape="rect" href="oauth2client.appengine.AppAssertionCredentials-class.html" title="AppAssertionCredentials" alt="" coords="5,5,168,32"/>
60<area shape="rect" href="oauth2client.client.AssertionCredentials-class.html" title="client.AssertionCredentials" alt="" coords="192,5,368,32"/>
61<area shape="rect" href="oauth2client.client.Credentials-class.html" title="client.Credentials" alt="" coords="392,5,512,32"/>
62<area shape="rect" href="oauth2client.client.OAuth2Credentials-class.html" title="client.OAuth2Credentials" alt="" coords="536,5,701,32"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040063</map>
Joe Gregorio746096f2012-06-15 10:53:36 -040064 <img src="class_hierarchy_for_appasserti.gif" alt='' usemap="#class_hierarchy_for_appasserti" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040065</center>
66</center>
67<hr />
68<pre class="literalblock">
69Credentials object for App Engine Assertion Grants
70
71This object will allow an App Engine application to identify itself to Google
Joe Gregorio1b425aa2012-08-24 12:04:34 -040072and other OAuth 2.0 servers that can verify assertions. It can be used for the
73purpose of accessing data stored under an account assigned to the App Engine
74application itself.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040075
76This credential does not require a flow to instantiate because it represents
77a two legged flow, and therefore has all of the required information to
78generate and refresh its own access tokens.
79
80</pre>
81
82<!-- ==================== INSTANCE METHODS ==================== -->
83<a name="section-InstanceMethods"></a>
84<table class="summary" border="1" cellpadding="3"
85 cellspacing="0" width="100%" bgcolor="white">
86<tr bgcolor="#70b0f0" class="table-header">
87 <td colspan="2" class="table-header">
88 <table border="0" cellpadding="0" cellspacing="0" width="100%">
89 <tr valign="top">
90 <td align="left"><span class="table-header">Instance Methods</span></td>
91 <td align="right" valign="top"
92 ><span class="options">[<a href="#section-InstanceMethods"
93 class="privatelink" onclick="toggle_private();"
94 >hide private</a>]</span></td>
95 </tr>
96 </table>
97 </td>
98</tr>
99<tr>
100 <td width="15%" align="right" valign="top" class="summary">
101 <span class="summary-type">&nbsp;</span>
102 </td><td class="summary">
103 <table width="100%" cellpadding="0" cellspacing="0" border="0">
104 <tr>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400105 <td><span class="summary-sig"><a href="oauth2client.appengine.AppAssertionCredentials-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
106 <span class="summary-sig-arg">scope</span>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400107 <span class="summary-sig-arg">**kwargs</span>)</span><br />
108 Constructor for AppAssertionCredentials</td>
109 <td align="right" valign="top">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400110 <span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials.__init__">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400111
112 </td>
113 </tr>
114 </table>
115
116 </td>
117 </tr>
118<tr class="private">
119 <td width="15%" align="right" valign="top" class="summary">
120 <span class="summary-type">&nbsp;</span>
121 </td><td class="summary">
122 <table width="100%" cellpadding="0" cellspacing="0" border="0">
123 <tr>
124 <td><span class="summary-sig"><a href="oauth2client.appengine.AppAssertionCredentials-class.html#_refresh" class="summary-sig-name" onclick="show_private();">_refresh</a>(<span class="summary-sig-arg">self</span>,
125 <span class="summary-sig-arg">http_request</span>)</span><br />
126 Refreshes the access_token.</td>
127 <td align="right" valign="top">
128 <span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials._refresh">source&nbsp;code</a></span>
129
130 </td>
131 </tr>
132 </table>
133
134 </td>
135 </tr>
136 <tr>
137 <td colspan="2" class="summary">
138 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.AssertionCredentials-class.html">client.AssertionCredentials</a></code></b> (private):
139 <code><a href="oauth2client.client.AssertionCredentials-class.html#_generate_assertion" onclick="show_private();">_generate_assertion</a></code>,
140 <code><a href="oauth2client.client.AssertionCredentials-class.html#_generate_refresh_request_body" onclick="show_private();">_generate_refresh_request_body</a></code>
141 </p></div>
142 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.OAuth2Credentials-class.html">client.OAuth2Credentials</a></code></b>:
143 <code><a href="oauth2client.client.OAuth2Credentials-class.html#__getstate__">__getstate__</a></code>,
144 <code><a href="oauth2client.client.OAuth2Credentials-class.html#__setstate__">__setstate__</a></code>,
Joe Gregoriof4839b02012-09-06 13:47:24 -0400145 <code><a href="oauth2client.client.OAuth2Credentials-class.html#access_token_expired">access_token_expired</a></code>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400146 <code><a href="oauth2client.client.OAuth2Credentials-class.html#apply">apply</a></code>,
147 <code><a href="oauth2client.client.OAuth2Credentials-class.html#authorize">authorize</a></code>,
148 <code><a href="oauth2client.client.OAuth2Credentials-class.html#refresh">refresh</a></code>,
149 <code><a href="oauth2client.client.OAuth2Credentials-class.html#set_store">set_store</a></code>,
150 <code><a href="oauth2client.client.OAuth2Credentials-class.html#to_json">to_json</a></code>
151 </p>
152 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.OAuth2Credentials-class.html">client.OAuth2Credentials</a></code></b> (private):
153 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_do_refresh_request" onclick="show_private();">_do_refresh_request</a></code>,
154 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_generate_refresh_request_headers" onclick="show_private();">_generate_refresh_request_headers</a></code>,
155 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_updateFromCredential" onclick="show_private();">_updateFromCredential</a></code>
156 </p></div>
157 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Credentials-class.html">client.Credentials</a></code></b> (private):
158 <code><a href="oauth2client.client.Credentials-class.html#_to_json" onclick="show_private();">_to_json</a></code>
159 </p></div>
160 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
161 <code>__delattr__</code>,
162 <code>__format__</code>,
163 <code>__getattribute__</code>,
164 <code>__hash__</code>,
165 <code>__new__</code>,
166 <code>__reduce__</code>,
167 <code>__reduce_ex__</code>,
168 <code>__repr__</code>,
169 <code>__setattr__</code>,
170 <code>__sizeof__</code>,
171 <code>__str__</code>,
172 <code>__subclasshook__</code>
173 </p>
174 </td>
175 </tr>
176</table>
177<!-- ==================== CLASS METHODS ==================== -->
178<a name="section-ClassMethods"></a>
179<table class="summary" border="1" cellpadding="3"
180 cellspacing="0" width="100%" bgcolor="white">
181<tr bgcolor="#70b0f0" class="table-header">
182 <td colspan="2" class="table-header">
183 <table border="0" cellpadding="0" cellspacing="0" width="100%">
184 <tr valign="top">
185 <td align="left"><span class="table-header">Class Methods</span></td>
186 <td align="right" valign="top"
187 ><span class="options">[<a href="#section-ClassMethods"
188 class="privatelink" onclick="toggle_private();"
189 >hide private</a>]</span></td>
190 </tr>
191 </table>
192 </td>
193</tr>
194<tr>
195 <td width="15%" align="right" valign="top" class="summary">
196 <span class="summary-type">&nbsp;</span>
197 </td><td class="summary">
198 <table width="100%" cellpadding="0" cellspacing="0" border="0">
199 <tr>
200 <td><span class="summary-sig"><a href="oauth2client.appengine.AppAssertionCredentials-class.html#from_json" class="summary-sig-name">from_json</a>(<span class="summary-sig-arg">cls</span>,
201 <span class="summary-sig-arg">json</span>)</span><br />
202 Instantiate a Credentials object from a JSON description of it.</td>
203 <td align="right" valign="top">
204 <span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials.from_json">source&nbsp;code</a></span>
205
206 </td>
207 </tr>
208 </table>
209
210 </td>
211 </tr>
212 <tr>
213 <td colspan="2" class="summary">
214 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Credentials-class.html">client.Credentials</a></code></b>:
215 <code><a href="oauth2client.client.Credentials-class.html#new_from_json">new_from_json</a></code>
216 </p>
217 </td>
218 </tr>
219</table>
220<!-- ==================== CLASS VARIABLES ==================== -->
221<a name="section-ClassVariables"></a>
222<table class="summary" border="1" cellpadding="3"
223 cellspacing="0" width="100%" bgcolor="white">
224<tr bgcolor="#70b0f0" class="table-header">
225 <td colspan="2" class="table-header">
226 <table border="0" cellpadding="0" cellspacing="0" width="100%">
227 <tr valign="top">
228 <td align="left"><span class="table-header">Class Variables</span></td>
229 <td align="right" valign="top"
230 ><span class="options">[<a href="#section-ClassVariables"
231 class="privatelink" onclick="toggle_private();"
232 >hide private</a>]</span></td>
233 </tr>
234 </table>
235 </td>
236</tr>
237 <tr>
238 <td colspan="2" class="summary">
239 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Credentials-class.html">client.Credentials</a></code></b>:
240 <code><a href="oauth2client.client.Credentials-class.html#NON_SERIALIZED_MEMBERS">NON_SERIALIZED_MEMBERS</a></code>
241 </p>
242 </td>
243 </tr>
244</table>
245<!-- ==================== PROPERTIES ==================== -->
246<a name="section-Properties"></a>
247<table class="summary" border="1" cellpadding="3"
248 cellspacing="0" width="100%" bgcolor="white">
249<tr bgcolor="#70b0f0" class="table-header">
250 <td colspan="2" class="table-header">
251 <table border="0" cellpadding="0" cellspacing="0" width="100%">
252 <tr valign="top">
253 <td align="left"><span class="table-header">Properties</span></td>
254 <td align="right" valign="top"
255 ><span class="options">[<a href="#section-Properties"
256 class="privatelink" onclick="toggle_private();"
257 >hide private</a>]</span></td>
258 </tr>
259 </table>
260 </td>
261</tr>
262 <tr>
263 <td colspan="2" class="summary">
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400264 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
265 <code>__class__</code>
266 </p>
267 </td>
268 </tr>
269</table>
270<!-- ==================== METHOD DETAILS ==================== -->
271<a name="section-MethodDetails"></a>
272<table class="details" border="1" cellpadding="3"
273 cellspacing="0" width="100%" bgcolor="white">
274<tr bgcolor="#70b0f0" class="table-header">
275 <td colspan="2" class="table-header">
276 <table border="0" cellpadding="0" cellspacing="0" width="100%">
277 <tr valign="top">
278 <td align="left"><span class="table-header">Method Details</span></td>
279 <td align="right" valign="top"
280 ><span class="options">[<a href="#section-MethodDetails"
281 class="privatelink" onclick="toggle_private();"
282 >hide private</a>]</span></td>
283 </tr>
284 </table>
285 </td>
286</tr>
287</table>
288<a name="__init__"></a>
289<div>
290<table class="details" border="1" cellpadding="3"
291 cellspacing="0" width="100%" bgcolor="white">
292<tr><td>
293 <table width="100%" cellpadding="0" cellspacing="0" border="0">
294 <tr valign="top"><td>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400295 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
296 <span class="sig-arg">scope</span>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400297 <span class="sig-arg">**kwargs</span>)</span>
298 <br /><em class="fname">(Constructor)</em>
299 </h3>
300 </td><td align="right" valign="top"
Joe Gregoriof4839b02012-09-06 13:47:24 -0400301 ><span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials.__init__">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400302 </td>
303 </tr></table>
304
305 <pre class="literalblock">
306Constructor for AppAssertionCredentials
307
308Args:
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400309 scope: string or list of strings, scope(s) of the credentials being
310 requested.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400311
312</pre>
313 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400314 <dt>Decorators:</dt>
315 <dd><ul class="nomargin-top">
316 <li><code>@util.positional(2)</code></li>
317 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400318 <dt>Overrides:
319 object.__init__
320 </dt>
321 </dl>
322</td></tr></table>
323</div>
324<a name="from_json"></a>
325<div>
326<table class="details" border="1" cellpadding="3"
327 cellspacing="0" width="100%" bgcolor="white">
328<tr><td>
329 <table width="100%" cellpadding="0" cellspacing="0" border="0">
330 <tr valign="top"><td>
331 <h3 class="epydoc"><span class="sig"><span class="sig-name">from_json</span>(<span class="sig-arg">cls</span>,
332 <span class="sig-arg">json</span>)</span>
333 <br /><em class="fname">Class Method</em>
334 </h3>
335 </td><td align="right" valign="top"
336 ><span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials.from_json">source&nbsp;code</a></span>&nbsp;
337 </td>
338 </tr></table>
339
340 <pre class="literalblock">
341Instantiate a Credentials object from a JSON description of it. The JSON
342should have been produced by calling .to_json() on the object.
343
344Args:
345 data: dict, A deserialized JSON object.
346
347Returns:
348 An instance of a Credentials subclass.
349
350</pre>
351 <dl class="fields">
352 <dt>Overrides:
353 <a href="oauth2client.client.Credentials-class.html#from_json">client.Credentials.from_json</a>
354 <dd><em class="note">(inherited documentation)</em></dd>
355 </dt>
356 </dl>
357</td></tr></table>
358</div>
359<a name="_refresh"></a>
360<div class="private">
361<table class="details" border="1" cellpadding="3"
362 cellspacing="0" width="100%" bgcolor="white">
363<tr><td>
364 <table width="100%" cellpadding="0" cellspacing="0" border="0">
365 <tr valign="top"><td>
366 <h3 class="epydoc"><span class="sig"><span class="sig-name">_refresh</span>(<span class="sig-arg">self</span>,
367 <span class="sig-arg">http_request</span>)</span>
368 </h3>
369 </td><td align="right" valign="top"
370 ><span class="codelink"><a href="oauth2client.appengine-pysrc.html#AppAssertionCredentials._refresh">source&nbsp;code</a></span>&nbsp;
371 </td>
372 </tr></table>
373
374 <pre class="literalblock">
375Refreshes the access_token.
376
377Since the underlying App Engine app_identity implementation does its own
378caching we can skip all the storage hoops and just to a refresh using the
379API.
380
381Args:
382 http_request: callable, a callable that matches the method signature of
383 httplib2.Http.request, used to make the refresh request.
384
385Raises:
386 AccessTokenRefreshError: When the refresh fails.
387
388</pre>
389 <dl class="fields">
390 <dt>Overrides:
391 <a href="oauth2client.client.OAuth2Credentials-class.html#_refresh" onclick="show_private();">client.OAuth2Credentials._refresh</a>
392 </dt>
393 </dl>
394</td></tr></table>
395</div>
396<br />
397<!-- ==================== NAVIGATION BAR ==================== -->
398<table class="navbar" border="0" width="100%" cellpadding="0"
399 bgcolor="#a0c0ff" cellspacing="0">
400 <tr valign="middle">
401
402 <!-- Tree link -->
403 <th>&nbsp;&nbsp;&nbsp;<a
404 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
405
406 <!-- Index link -->
407 <th>&nbsp;&nbsp;&nbsp;<a
408 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
409
410 <!-- Help link -->
411 <th>&nbsp;&nbsp;&nbsp;<a
412 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
413
414 <th class="navbar" width="100%"></th>
415 </tr>
416</table>
417<table border="0" cellpadding="0" cellspacing="0" width="100%%">
418 <tr>
419 <td align="left" class="footer">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400420 Generated by Epydoc 3.0.1 on Thu Sep 6 13:36:13 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400421 </td>
422 <td align="right" class="footer">
423 <a target="mainFrame" href="http://epydoc.sourceforge.net"
424 >http://epydoc.sourceforge.net</a>
425 </td>
426 </tr>
427</table>
428
429<script type="text/javascript">
430 <!--
431 // Private objects are initially displayed (because if
432 // javascript is turned off then we want them to be
433 // visible); but by default, we want to hide them. So hide
434 // them unless we have a cookie that says to show them.
435 checkCookie();
436 // -->
437</script>
438</body>
439</html>