@@ -209,34 +209,20 @@ def destroy(self):
209
209
return self ._api .destroy_saved_search (self .id )
210
210
211
211
212
- class SearchResult ( Model ):
212
+ class SearchResults ( ResultSet ):
213
213
214
214
@classmethod
215
215
def parse (cls , api , json ):
216
- result = cls ()
217
- for k , v in json .items ():
218
- if k == 'created_at' :
219
- setattr (result , k , parse_search_datetime (v ))
220
- elif k == 'source' :
221
- setattr (result , k , parse_html_value (unescape_html (v )))
222
- else :
223
- setattr (result , k , v )
224
- return result
225
-
226
- @classmethod
227
- def parse_list (cls , api , json_list , result_set = None ):
228
- results = ResultSet ()
229
- results .max_id = json_list .get ('max_id' )
230
- results .since_id = json_list .get ('since_id' )
231
- results .refresh_url = json_list .get ('refresh_url' )
232
- results .next_page = json_list .get ('next_page' )
233
- results .results_per_page = json_list .get ('results_per_page' )
234
- results .page = json_list .get ('page' )
235
- results .completed_in = json_list .get ('completed_in' )
236
- results .query = json_list .get ('query' )
237
-
238
- for obj in json_list ['results' ]:
239
- results .append (cls .parse (api , obj ))
216
+ results = SearchResults ()
217
+ metadata = json ['search_metadata' ]
218
+ results .max_id = metadata .get ('max_id' )
219
+ results .since_id = metadata .get ('since_id' )
220
+ results .refresh_url = metadata .get ('refresh_url' )
221
+ results .completed_in = metadata .get ('completed_in' )
222
+ results .query = metadata .get ('query' )
223
+
224
+ for status in json ['statuses' ]:
225
+ results .append (Status .parse (api , status ))
240
226
return results
241
227
242
228
@@ -414,7 +400,7 @@ class ModelFactory(object):
414
400
direct_message = DirectMessage
415
401
friendship = Friendship
416
402
saved_search = SavedSearch
417
- search_result = SearchResult
403
+ search_results = SearchResults
418
404
category = Category
419
405
list = List
420
406
relation = Relation
0 commit comments