Files
ifish/Ifish/UMCommunity/UMCommunitySDK/UMComDataController/Feed/UMComFeedListDataController.h
T
2017-08-15 16:59:01 +08:00

262 lines
6.2 KiB
Objective-C

//
// UMComFeedListDataController.h
// UMCommunity
//
// Created by umeng on 16/5/3.
// Copyright © 2016年 Umeng. All rights reserved.
//
#import "UMComListDataController.h"
@class UMComFeed, UMComComment, UMComUser;
@class UMComTopFeedListDataController;
@interface UMComFeedListDataController : UMComListDataController
//置顶的topFeedListDataController
@property(nonatomic,strong)UMComTopFeedListDataController* topFeedListDataController;
- (void)deleteFeed:(UMComFeed *)feed completion:(UMComDataRequestCompletion)completion;
- (void)likeFeed:(UMComFeed *)feed completion:(UMComDataRequestCompletion)completion;
- (void)favouriteFeed:(UMComFeed *)feed completion:(UMComDataRequestCompletion)completion;
//
- (void)spamFeed:(UMComFeed *)feed completion:(UMComDataRequestCompletion)completion;
- (void)commentFeed:(UMComFeed *)feed
content:(NSString *)content
images:(NSArray *)images
completion:(UMComDataRequestCompletion)completion;
- (void)replyCommentFeed:(UMComFeed *)feed
comment:(UMComComment *)comment
content:(NSString *)content
images:(NSArray *)images
completion:(UMComDataRequestCompletion)completion;
- (void)spamUser:(UMComUser *)user completion:(UMComDataRequestCompletion)completion;
- (void)banUser:(UMComUser *)user topics:(NSArray *)topics completion:(UMComDataRequestCompletion)completion;
//
- (void)shareFeed:(UMComFeed *)feed toPlatform:(NSString *)platform completion:(UMComDataRequestCompletion)completion;
/**
* 继承UMComFeedListDataController的类,需要重新此类发送下拉刷新的请求
*
* @param completion 成功回调
*/
- (void)doRefreshNewDataCompletion:(UMComDataListRequestCompletion)completion;
/**
* 过滤普通流中的置顶数据
*
* @param orginCommonFeedList 从网络取得普通流
*
* @return 返回新的过滤的array(默认返回自身)
* @子类可以重写来重新过滤的条件
*/
-(NSArray*) filterTopItemWithCommonFeed:(NSArray*)orginCommonFeedList;
@end
/**
*实时热门Feed流
*/
@interface UMComFeedRealTimeHotDataController : UMComFeedListDataController
@end
/**
*热门Feed流
*/
@interface UMComFeedHotDataController : UMComFeedListDataController
@property (nonatomic, assign) NSInteger hotDay;
- (instancetype)initWithCount:(NSInteger)count hotDay:(NSInteger)hotDay;
@end
/**
*实时feed流
*/
@interface UMComFeedRealTimeDataController : UMComFeedListDataController
@end
/**
*关注feed流
*/
@interface UMComFeedFocusDataController : UMComFeedListDataController
@end
/**
*推荐feed流
*/
@interface UMComFeedRecommendDataController : UMComFeedListDataController
@end
/**
*时间戳feed流
*/
@interface UMComFeedTimeLineDataController : UMComFeedListDataController
@property (nonatomic, assign) UMComTimeLineFeedListType timeLineFeedListType;
@property (nonatomic, copy) NSString *userID;
- (instancetype)initWithCount:(NSInteger)count userID:(NSString *)userID timeLineFeedListType:(UMComTimeLineFeedListType)timeLineFeedListType;
@end
/**
*话题下最新发布的feed流
*/
@interface UMComFeedTopicFeedDataController : UMComFeedListDataController
@property (nonatomic, copy) NSString *topicId;
/**
*话题下Feed的排序方式
*/
@property (nonatomic, assign) UMComTopicFeedListSortType topicFeedSortType;
@property (nonatomic, assign) BOOL isReverse;
- (instancetype)initWithCount:(NSInteger)count topicId:(NSString *)topicId topicFeedSortType:(UMComTopicFeedListSortType)topicFeedSortType isReverse:(BOOL)isReverse;
@end
/**
*话题下热门feed流
*/
@interface UMComFeedTopicHotDataController : UMComFeedListDataController
@property (nonatomic, copy) NSString *topicId;
@property (nonatomic, assign) NSInteger hotDay;
- (instancetype)initWithCount:(NSInteger)count topicId:(NSString *)topicId hotDay:(NSInteger)hotDay;
@end
///**
// *话题下最新评论的feed流
// */
//@interface UMComFeedListOfToicLatesCommentController : UMComFeedListDataController
//
//@property (nonatomic, copy) NSString *topicId;
//
//
//@end
/**
*话题下推荐feed流
*/
@interface UMComFeedTopicRecommendDataController : UMComFeedListDataController
@property (nonatomic, copy) NSString *topicId;
- (instancetype)initWithCount:(NSInteger)count topicId:(NSString *)topicId;
@end
/**
*被@的feed流
*/
@interface UMComFeedBeAtDataController : UMComFeedListDataController
@end
/**
*我的好友圈的feed流
*/
@interface UMComFeedFriendsDataController : UMComFeedListDataController
@end
/**
*我的收藏的feed流
*/
@interface UMComFeedFavoriteDataController : UMComFeedListDataController
@end
/**
*附近的feed流
*/
@interface UMComFeedSurroundingDataController : UMComFeedListDataController
@property (nonatomic, strong) CLLocation *locatoion;
- (instancetype)initWithCount:(NSInteger)count location:(CLLocation *)location;
@end
/**
*搜索的feed流
*/
@interface UMComFeedSearchDataController : UMComFeedListDataController
@property (nonatomic, copy) NSString *keyWord;
- (instancetype)initWithCount:(NSInteger)count keyWord:(NSString *)keyWord;
@end
/**
* 话题下的feed列表
*/
@interface UMComTopicFeedDataController : UMComFeedListDataController
@property(nonatomic,assign)UMComTopicFeedListSortType sortType;
+ (id)fetchFeedsTopicRelatedWithTopicId:(NSString *)topicId
sortType:(UMComTopicFeedListSortType)sortType
isReverse:(BOOL)isReverse
count:(NSInteger)count;
@end
/*******************************************************/
/*置顶DataController begin*/
/*******************************************************/
//所有置顶数据的基类
@interface UMComTopFeedListDataController : UMComListDataController
//置顶的数据
@property(nonatomic,strong)NSMutableArray* topDataArray;
@end
/**
* 全局置顶DataController
*/
@interface UMComGlobalTopFeedListDataController : UMComTopFeedListDataController
@end
/**
* 话题置顶DataController
*/
@interface UMComTopTopicFeedListDataController : UMComTopFeedListDataController
@property(nonatomic,strong) NSString* topicID;
@end
/*******************************************************/
/*置顶DataController end*/
/*******************************************************/