def _get_followers_(self): iter_source = partial(user.five_hundred_px.get_user_followers, self.id) def build_user(user_data): data = dict(user=user_data) user_id = data["user"]['id'] return User(user_id, data=data) self.followers = MagicGenerator(iter_source=iter_source, iter_destination=build_user)
def _get_comments_(self): iter_source = partial(photo.five_hundred_px.get_photo_comments, self.id) def build_comment(photo_id, comment_data): return fhp.models.photo_comment.PhotoComment( comment_data["id"], photo_id, comment_data) iter_destination = partial(build_comment, self.id) self.comments = MagicGenerator(iter_source=iter_source, iter_destination=iter_destination)
def _get_favorites_(self): kwargs = dict(feature='user_favorites', user_id=self.id, user=True) iter_source = partial(user.five_hundred_px.get_photos, **kwargs) def build_photo(photo_data): data = dict(photo=photo_data) photo_id = data["photo"]["id"] return fhp.models.photo.Photo(photo_id, data=data) self.favorites = MagicGenerator(iter_source=iter_source, iter_destination=build_photo)
def _get_comments_(self): iter_source = partial(blog_post.five_hundred_px.get_blog_post_comments, self.id) def build_comment(blog_post_id, comment_data): return fhp.models.blog_post_comment.BlogPostComment( comment_data["id"], blog_post_id, comment_data) iter_destination = partial(build_comment, self.id) self.comments = MagicGenerator(iter_source=iter_source, iter_destination=iter_destination)
def _get_photos_(self): kwargs = {} kwargs = dict(feature='user', user_id=self.id) if self.authorized_client: kwargs['feature'] = 'user' iter_source = partial(user.five_hundred_px.get_photos, authorized_client=self.authorized_client, **kwargs) def build_photo(photo_data): data = dict(photo=photo_data) photo_id = data["photo"]["id"] return fhp.models.photo.Photo(photo_id, data=data) self.photos = MagicGenerator(iter_source=iter_source, iter_destination=build_photo)