blob: eb102e76c7402c68bff3114ce0c4dfa07f897912 [file] [log] [blame]
Joe Gregorio30dfdc32010-12-09 16:34:22 -05001
2<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3<html><head><title>Python: module apiclient.model</title>
4</head><body bgcolor="#f0f0f8">
5
6<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
7<tr bgcolor="#7799ee">
8<td valign=bottom>&nbsp;<br>
9<font color="#ffffff" face="helvetica, arial">&nbsp;<br><big><big><strong><a href="apiclient.html"><font color="#ffffff">apiclient</font></a>.model</strong></big></big></font></td
10><td align=right valign=bottom
Joe Gregorio20a5aa92011-04-01 17:44:25 -040011><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jcgregorio/projects/apiclient-release/apiclient/model.py">/home/jcgregorio/projects/apiclient-release/apiclient/model.py</a></font></td></tr></table>
Joe Gregorio3b79fa82011-02-17 11:47:17 -050012 <p><tt><a href="#Model">Model</a>&nbsp;objects&nbsp;for&nbsp;requests&nbsp;and&nbsp;responses.<br>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050013&nbsp;<br>
14Each&nbsp;API&nbsp;may&nbsp;support&nbsp;one&nbsp;or&nbsp;more&nbsp;serializations,&nbsp;such<br>
15as&nbsp;JSON,&nbsp;Atom,&nbsp;etc.&nbsp;The&nbsp;model&nbsp;classes&nbsp;are&nbsp;responsible<br>
16for&nbsp;converting&nbsp;between&nbsp;the&nbsp;wire&nbsp;format&nbsp;and&nbsp;the&nbsp;Python<br>
17<a href="__builtin__.html#object">object</a>&nbsp;representation.</tt></p>
18<p>
19<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
20<tr bgcolor="#aa55cc">
21<td colspan=3 valign=bottom>&nbsp;<br>
22<font color="#ffffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr>
23
24<tr><td bgcolor="#aa55cc"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
Joe Gregorio49396552011-03-08 10:39:00 -050025<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="gflags.html">gflags</a><br>
26</td><td width="25%" valign=top><a href="logging.html">logging</a><br>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050027</td><td width="25%" valign=top><a href="simplejson.html">simplejson</a><br>
28</td><td width="25%" valign=top><a href="urllib.html">urllib</a><br>
Joe Gregorio49396552011-03-08 10:39:00 -050029</td></tr></table></td></tr></table><p>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050030<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
31<tr bgcolor="#ee77aa">
32<td colspan=3 valign=bottom>&nbsp;<br>
33<font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr>
34
35<tr><td bgcolor="#ee77aa"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
36<td width="100%"><dl>
37<dt><font face="helvetica, arial"><a href="__builtin__.html#object">__builtin__.object</a>
38</font></dt><dd>
39<dl>
Joe Gregorioabda96f2011-02-11 20:19:33 -050040<dt><font face="helvetica, arial"><a href="apiclient.model.html#Model">Model</a>
41</font></dt><dd>
42<dl>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050043<dt><font face="helvetica, arial"><a href="apiclient.model.html#JsonModel">JsonModel</a>
Joe Gregorio49396552011-03-08 10:39:00 -050044</font></dt><dd>
45<dl>
46<dt><font face="helvetica, arial"><a href="apiclient.model.html#LoggingJsonModel">LoggingJsonModel</a>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050047</font></dt></dl>
48</dd>
49</dl>
Joe Gregorioabda96f2011-02-11 20:19:33 -050050</dd>
51</dl>
Joe Gregorio49396552011-03-08 10:39:00 -050052</dd>
53</dl>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050054 <p>
55<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
56<tr bgcolor="#ffc8d8">
57<td colspan=3 valign=bottom>&nbsp;<br>
Joe Gregorioabda96f2011-02-11 20:19:33 -050058<font color="#000000" face="helvetica, arial"><a name="JsonModel">class <strong>JsonModel</strong></a>(<a href="apiclient.model.html#Model">Model</a>)</font></td></tr>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050059
60<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
Joe Gregorioabda96f2011-02-11 20:19:33 -050061<td colspan=2><tt><a href="#Model">Model</a>&nbsp;class&nbsp;for&nbsp;JSON.<br>
Joe Gregorio30dfdc32010-12-09 16:34:22 -050062&nbsp;<br>
63Serializes&nbsp;and&nbsp;de-serializes&nbsp;between&nbsp;JSON&nbsp;and&nbsp;the&nbsp;Python<br>
64<a href="__builtin__.html#object">object</a>&nbsp;representation&nbsp;of&nbsp;HTTP&nbsp;request&nbsp;and&nbsp;response&nbsp;bodies.<br>&nbsp;</tt></td></tr>
65<tr><td>&nbsp;</td>
Joe Gregorioabda96f2011-02-11 20:19:33 -050066<td width="100%"><dl><dt>Method resolution order:</dt>
67<dd><a href="apiclient.model.html#JsonModel">JsonModel</a></dd>
68<dd><a href="apiclient.model.html#Model">Model</a></dd>
69<dd><a href="__builtin__.html#object">__builtin__.object</a></dd>
70</dl>
71<hr>
72Methods defined here:<br>
Joe Gregorio93841702011-03-02 16:12:05 -080073<dl><dt><a name="JsonModel-__init__"><strong>__init__</strong></a>(self, data_wrapper<font color="#909090">=False</font>)</dt><dd><tt>Construct&nbsp;a&nbsp;<a href="#JsonModel">JsonModel</a><br>
Joe Gregorioad258e22011-02-22 22:53:30 -050074&nbsp;<br>
75Args:<br>
76&nbsp;&nbsp;data_wrapper:&nbsp;boolean,&nbsp;wrap&nbsp;requests&nbsp;and&nbsp;responses&nbsp;in&nbsp;a&nbsp;data&nbsp;wrapper</tt></dd></dl>
77
Joe Gregorio30dfdc32010-12-09 16:34:22 -050078<dl><dt><a name="JsonModel-request"><strong>request</strong></a>(self, headers, path_params, query_params, body_value)</dt><dd><tt>Updates&nbsp;outgoing&nbsp;requests&nbsp;with&nbsp;JSON&nbsp;bodies.<br>
79&nbsp;<br>
80Args:<br>
81&nbsp;&nbsp;headers:&nbsp;dict,&nbsp;request&nbsp;headers<br>
82&nbsp;&nbsp;path_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;request&nbsp;path<br>
83&nbsp;&nbsp;query_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;query<br>
84&nbsp;&nbsp;body_value:&nbsp;<a href="__builtin__.html#object">object</a>,&nbsp;the&nbsp;request&nbsp;body&nbsp;as&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>,&nbsp;which&nbsp;must&nbsp;be<br>
85&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serializable&nbsp;by&nbsp;simplejson.<br>
86Returns:<br>
87&nbsp;&nbsp;A&nbsp;tuple&nbsp;of&nbsp;(headers,&nbsp;path_params,&nbsp;query,&nbsp;body)<br>
88&nbsp;<br>
89&nbsp;&nbsp;headers:&nbsp;dict,&nbsp;request&nbsp;headers<br>
90&nbsp;&nbsp;path_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;request&nbsp;path<br>
91&nbsp;&nbsp;query:&nbsp;string,&nbsp;query&nbsp;part&nbsp;of&nbsp;the&nbsp;request&nbsp;URI<br>
92&nbsp;&nbsp;body:&nbsp;string,&nbsp;the&nbsp;body&nbsp;serialized&nbsp;as&nbsp;JSON</tt></dd></dl>
93
94<dl><dt><a name="JsonModel-response"><strong>response</strong></a>(self, resp, content)</dt><dd><tt>Convert&nbsp;the&nbsp;response&nbsp;wire&nbsp;format&nbsp;into&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>.<br>
95&nbsp;<br>
96Args:<br>
97&nbsp;&nbsp;resp:&nbsp;httplib2.Response,&nbsp;the&nbsp;HTTP&nbsp;response&nbsp;headers&nbsp;and&nbsp;status<br>
98&nbsp;&nbsp;content:&nbsp;string,&nbsp;the&nbsp;body&nbsp;of&nbsp;the&nbsp;HTTP&nbsp;response<br>
99&nbsp;<br>
100Returns:<br>
101&nbsp;&nbsp;The&nbsp;body&nbsp;de-serialized&nbsp;as&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>.<br>
102&nbsp;<br>
103Raises:<br>
104&nbsp;&nbsp;apiclient.errors.HttpError&nbsp;if&nbsp;a&nbsp;non&nbsp;2xx&nbsp;response&nbsp;is&nbsp;received.</tt></dd></dl>
105
106<hr>
Joe Gregorioabda96f2011-02-11 20:19:33 -0500107Data descriptors inherited from <a href="apiclient.model.html#Model">Model</a>:<br>
108<dl><dt><strong>__dict__</strong></dt>
109<dd><tt>dictionary&nbsp;for&nbsp;instance&nbsp;variables&nbsp;(if&nbsp;defined)</tt></dd>
110</dl>
111<dl><dt><strong>__weakref__</strong></dt>
112<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dd>
113</dl>
114</td></tr></table> <p>
115<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
116<tr bgcolor="#ffc8d8">
117<td colspan=3 valign=bottom>&nbsp;<br>
Joe Gregorio49396552011-03-08 10:39:00 -0500118<font color="#000000" face="helvetica, arial"><a name="LoggingJsonModel">class <strong>LoggingJsonModel</strong></a>(<a href="apiclient.model.html#JsonModel">JsonModel</a>)</font></td></tr>
119
120<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
121<td colspan=2><tt>A&nbsp;printable&nbsp;<a href="#JsonModel">JsonModel</a>&nbsp;class&nbsp;that&nbsp;supports&nbsp;logging&nbsp;response&nbsp;info.<br>&nbsp;</tt></td></tr>
122<tr><td>&nbsp;</td>
123<td width="100%"><dl><dt>Method resolution order:</dt>
124<dd><a href="apiclient.model.html#LoggingJsonModel">LoggingJsonModel</a></dd>
125<dd><a href="apiclient.model.html#JsonModel">JsonModel</a></dd>
126<dd><a href="apiclient.model.html#Model">Model</a></dd>
127<dd><a href="__builtin__.html#object">__builtin__.object</a></dd>
128</dl>
129<hr>
130Methods defined here:<br>
131<dl><dt><a name="LoggingJsonModel-request"><strong>request</strong></a>(self, headers, path_params, query_params, body_value)</dt><dd><tt>An&nbsp;overloaded&nbsp;request&nbsp;method&nbsp;that&nbsp;will&nbsp;output&nbsp;debug&nbsp;info&nbsp;if&nbsp;requested.<br>
132&nbsp;<br>
133Args:<br>
134&nbsp;&nbsp;headers:&nbsp;dict,&nbsp;request&nbsp;headers<br>
135&nbsp;&nbsp;path_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;request&nbsp;path<br>
136&nbsp;&nbsp;query_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;query<br>
137&nbsp;&nbsp;body_value:&nbsp;<a href="__builtin__.html#object">object</a>,&nbsp;the&nbsp;request&nbsp;body&nbsp;as&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>,&nbsp;which&nbsp;must&nbsp;be<br>
138&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serializable&nbsp;by&nbsp;simplejson.<br>
139Returns:<br>
140&nbsp;&nbsp;A&nbsp;tuple&nbsp;of&nbsp;(headers,&nbsp;path_params,&nbsp;query,&nbsp;body)<br>
141&nbsp;<br>
142&nbsp;&nbsp;headers:&nbsp;dict,&nbsp;request&nbsp;headers<br>
143&nbsp;&nbsp;path_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;request&nbsp;path<br>
144&nbsp;&nbsp;query:&nbsp;string,&nbsp;query&nbsp;part&nbsp;of&nbsp;the&nbsp;request&nbsp;URI<br>
145&nbsp;&nbsp;body:&nbsp;string,&nbsp;the&nbsp;body&nbsp;serialized&nbsp;as&nbsp;JSON</tt></dd></dl>
146
147<dl><dt><a name="LoggingJsonModel-response"><strong>response</strong></a>(self, resp, content)</dt><dd><tt>An&nbsp;overloaded&nbsp;response&nbsp;method&nbsp;that&nbsp;will&nbsp;output&nbsp;debug&nbsp;info&nbsp;if&nbsp;requested.<br>
148&nbsp;<br>
149Args:<br>
150&nbsp;&nbsp;resp:&nbsp;An&nbsp;httplib2.Response&nbsp;<a href="__builtin__.html#object">object</a>.<br>
151&nbsp;&nbsp;content:&nbsp;A&nbsp;string&nbsp;representing&nbsp;the&nbsp;response&nbsp;body.<br>
152&nbsp;<br>
153Returns:<br>
154&nbsp;&nbsp;The&nbsp;body&nbsp;de-serialized&nbsp;as&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>.</tt></dd></dl>
155
156<hr>
157Methods inherited from <a href="apiclient.model.html#JsonModel">JsonModel</a>:<br>
158<dl><dt><a name="LoggingJsonModel-__init__"><strong>__init__</strong></a>(self, data_wrapper<font color="#909090">=False</font>)</dt><dd><tt>Construct&nbsp;a&nbsp;<a href="#JsonModel">JsonModel</a><br>
159&nbsp;<br>
160Args:<br>
161&nbsp;&nbsp;data_wrapper:&nbsp;boolean,&nbsp;wrap&nbsp;requests&nbsp;and&nbsp;responses&nbsp;in&nbsp;a&nbsp;data&nbsp;wrapper</tt></dd></dl>
162
163<hr>
164Data descriptors inherited from <a href="apiclient.model.html#Model">Model</a>:<br>
165<dl><dt><strong>__dict__</strong></dt>
166<dd><tt>dictionary&nbsp;for&nbsp;instance&nbsp;variables&nbsp;(if&nbsp;defined)</tt></dd>
167</dl>
168<dl><dt><strong>__weakref__</strong></dt>
169<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dd>
170</dl>
171</td></tr></table> <p>
172<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
173<tr bgcolor="#ffc8d8">
174<td colspan=3 valign=bottom>&nbsp;<br>
Joe Gregorioabda96f2011-02-11 20:19:33 -0500175<font color="#000000" face="helvetica, arial"><a name="Model">class <strong>Model</strong></a>(<a href="__builtin__.html#object">__builtin__.object</a>)</font></td></tr>
176
177<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
178<td colspan=2><tt><a href="#Model">Model</a>&nbsp;base&nbsp;class.<br>
179&nbsp;<br>
180All&nbsp;<a href="#Model">Model</a>&nbsp;classes&nbsp;should&nbsp;implement&nbsp;this&nbsp;interface.<br>
181The&nbsp;<a href="#Model">Model</a>&nbsp;serializes&nbsp;and&nbsp;de-serializes&nbsp;between&nbsp;a&nbsp;wire<br>
182format&nbsp;such&nbsp;as&nbsp;JSON&nbsp;and&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>&nbsp;representation.<br>&nbsp;</tt></td></tr>
183<tr><td>&nbsp;</td>
184<td width="100%">Methods defined here:<br>
185<dl><dt><a name="Model-request"><strong>request</strong></a>(self, headers, path_params, query_params, body_value)</dt><dd><tt>Updates&nbsp;outgoing&nbsp;requests&nbsp;with&nbsp;a&nbsp;deserialized&nbsp;body.<br>
186&nbsp;<br>
187Args:<br>
188&nbsp;&nbsp;headers:&nbsp;dict,&nbsp;request&nbsp;headers<br>
189&nbsp;&nbsp;path_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;request&nbsp;path<br>
190&nbsp;&nbsp;query_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;query<br>
191&nbsp;&nbsp;body_value:&nbsp;<a href="__builtin__.html#object">object</a>,&nbsp;the&nbsp;request&nbsp;body&nbsp;as&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>,&nbsp;which&nbsp;must&nbsp;be<br>
192&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serializable.<br>
193Returns:<br>
194&nbsp;&nbsp;A&nbsp;tuple&nbsp;of&nbsp;(headers,&nbsp;path_params,&nbsp;query,&nbsp;body)<br>
195&nbsp;<br>
196&nbsp;&nbsp;headers:&nbsp;dict,&nbsp;request&nbsp;headers<br>
197&nbsp;&nbsp;path_params:&nbsp;dict,&nbsp;parameters&nbsp;that&nbsp;appear&nbsp;in&nbsp;the&nbsp;request&nbsp;path<br>
198&nbsp;&nbsp;query:&nbsp;string,&nbsp;query&nbsp;part&nbsp;of&nbsp;the&nbsp;request&nbsp;URI<br>
199&nbsp;&nbsp;body:&nbsp;string,&nbsp;the&nbsp;body&nbsp;serialized&nbsp;in&nbsp;the&nbsp;desired&nbsp;wire&nbsp;format.</tt></dd></dl>
200
201<dl><dt><a name="Model-response"><strong>response</strong></a>(self, resp, content)</dt><dd><tt>Convert&nbsp;the&nbsp;response&nbsp;wire&nbsp;format&nbsp;into&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>.<br>
202&nbsp;<br>
203Args:<br>
204&nbsp;&nbsp;resp:&nbsp;httplib2.Response,&nbsp;the&nbsp;HTTP&nbsp;response&nbsp;headers&nbsp;and&nbsp;status<br>
205&nbsp;&nbsp;content:&nbsp;string,&nbsp;the&nbsp;body&nbsp;of&nbsp;the&nbsp;HTTP&nbsp;response<br>
206&nbsp;<br>
207Returns:<br>
208&nbsp;&nbsp;The&nbsp;body&nbsp;de-serialized&nbsp;as&nbsp;a&nbsp;Python&nbsp;<a href="__builtin__.html#object">object</a>.<br>
209&nbsp;<br>
210Raises:<br>
211&nbsp;&nbsp;apiclient.errors.HttpError&nbsp;if&nbsp;a&nbsp;non&nbsp;2xx&nbsp;response&nbsp;is&nbsp;received.</tt></dd></dl>
212
213<hr>
Joe Gregorio30dfdc32010-12-09 16:34:22 -0500214Data descriptors defined here:<br>
215<dl><dt><strong>__dict__</strong></dt>
216<dd><tt>dictionary&nbsp;for&nbsp;instance&nbsp;variables&nbsp;(if&nbsp;defined)</tt></dd>
217</dl>
218<dl><dt><strong>__weakref__</strong></dt>
219<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dd>
220</dl>
221</td></tr></table></td></tr></table><p>
222<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
223<tr bgcolor="#55aa55">
224<td colspan=3 valign=bottom>&nbsp;<br>
225<font color="#ffffff" face="helvetica, arial"><big><strong>Data</strong></big></font></td></tr>
226
227<tr><td bgcolor="#55aa55"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
Joe Gregorio49396552011-03-08 10:39:00 -0500228<td width="100%"><strong>FLAGS</strong> = &lt;gflags.FlagValues instance&gt;<br>
229<strong>__author__</strong> = 'jcgregorio@google.com (Joe Gregorio)'</td></tr></table><p>
Joe Gregorio30dfdc32010-12-09 16:34:22 -0500230<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
231<tr bgcolor="#7799ee">
232<td colspan=3 valign=bottom>&nbsp;<br>
233<font color="#ffffff" face="helvetica, arial"><big><strong>Author</strong></big></font></td></tr>
234
235<tr><td bgcolor="#7799ee"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
236<td width="100%">jcgregorio@google.com&nbsp;(Joe&nbsp;Gregorio)</td></tr></table>
237</body></html>