package org.gcube.portlets.user.newsfeed.client;
import java.util.ArrayList;
import java.util.HashSet;
import org.gcube.portal.databook.shared.Comment;
import org.gcube.portal.databook.shared.EnhancedFeed;
import org.gcube.portal.databook.shared.Like;
import org.gcube.portlets.user.newsfeed.shared.MoreFeedsBean;
import org.gcube.portlets.user.newsfeed.shared.OperationResult;
import org.gcube.portlets.user.newsfeed.shared.UserSettings;
import org.gcube.portlets.widgets.pickitem.shared.ItemBean;
import com.google.gwt.user.client.rpc.AsyncCallback;
/**
* The async counterpart of NewsService
.
*/
public interface NewsServiceAsync {
void getAllUpdateUserFeeds(int feedsNoPerCategory,
AsyncCallback> callback);
void getOnlyConnectionsUserFeeds(
AsyncCallback> callback);
void like(String feedid, String feedText, String feedOwnerId,
AsyncCallback callback);
void getAllLikesByFeed(String feedid,
AsyncCallback> callback);
void getOnlyMyUserFeeds(AsyncCallback> callback);
void getUserSettings(AsyncCallback callback);
void comment(String feedid, String text, HashSet mentionedUsers,
String feedOwnerId, boolean isAppFeed,
AsyncCallback callback);
void getAllCommentsByFeed(String feedid,
AsyncCallback> callback);
void deleteComment(String commentid, String feedid,
AsyncCallback callback);
void deleteFeed(String feedid, AsyncCallback callback);
void editComment(Comment toEdit, AsyncCallback callback);
void getOnlyLikedFeeds(AsyncCallback> callback);
void getSingleFeed(String feedKey, AsyncCallback callback);
void getMoreFeeds(int from, int quantity,
AsyncCallback callback);
void unlike(String feedid, String feedText, String feedOwnerId,
AsyncCallback callback);
void getOrganizationUsers(String currentScope,
AsyncCallback> callback);
void getFeedsByHashtag(String hashtag,
AsyncCallback> callback);
void getFeedsByQuery(String query, int from, int to,
AsyncCallback> callback);
}