package org.gcube.portlets.widgets.ckancontentmoderator.client; import java.util.List; import org.gcube.datacatalogue.utillibrary.shared.ItemStatus; import org.gcube.portlets.widgets.ckancontentmoderator.shared.CatalogueDataset; import org.gcube.portlets.widgets.ckancontentmoderator.shared.SearchedData; import com.google.gwt.user.client.rpc.AsyncCallback; /** * The Interface CkanContentModeratorServiceAsync. * * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it * * Jun 23, 2021 */ public interface CkanContentModeratorServiceAsync { /** * Checks if is content moderator enabled. * * @param callback the callback */ void isContentModeratorEnabled(AsyncCallback callback); void rejectItem(List itemNames, boolean permanentlyDelete, String reasonMsg, AsyncCallback callback); /** * Gets the list items for status. * * @param theStatus the the status * @param limit the limit * @param offset the offset * @param callback the callback * @return the list items for status */ void getListItemsForStatus(ItemStatus theStatus, int limit, int offset, AsyncCallback> callback); /** * Gets the data for status. * * @param status the status * @param startIndex the start index * @param lenght the lenght * @param serverIndex the server index * @param asyncCallback the async callback * @return the data for status */ void getDataForStatus(ItemStatus status, int startIndex, int lenght, int serverIndex, AsyncCallback asyncCallback); /** * Approve item. * * @param itemNames the item names * @param callback the callback */ void approveItem(List itemNames, AsyncCallback callback); /** * Permanently delete. * * @param itemNames the item names * @param callback the callback */ void permanentlyDelete(List itemNames, AsyncCallback callback); /** * Sets the status. * * @param theStatus the the status * @param itemNames the item names * @param callback the callback */ void setStatus(ItemStatus theStatus, List itemNames, AsyncCallback callback); }