package org.gcube.portlets.user.geoportaldataentry.client; import java.util.List; import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.portlets.user.geoportaldataentry.client.ConstantsGeoPortalDataEntryApp.RECORD_TYPE; import org.gcube.portlets.user.geoportaldataentry.shared.CommitReport; import org.gcube.portlets.user.geoportaldataentry.shared.GeoNaFormDataObject; import org.gcube.portlets.user.geoportaldataentry.shared.GeonaISConfig; import org.gcube.portlets.user.geoportaldataentry.shared.ResultSetPaginatedData; import org.gcube.portlets.user.geoportaldataentry.shared.SortFilter; import com.google.gwt.core.client.GWT; import com.google.gwt.user.client.rpc.AsyncCallback; public interface GeoportalDataEntryServiceAsync { /** * Utility class to get the RPC Async interface from client-side code */ public static final class Util { private static GeoportalDataEntryServiceAsync instance; public static final GeoportalDataEntryServiceAsync getInstance() { if ( instance == null ) { instance = (GeoportalDataEntryServiceAsync) GWT.create( GeoportalDataEntryService.class ); } return instance; } private Util() { // Utility class should not be instantiated } } void saveGeonaDataForms(List listGeonaFormObjects, AsyncCallback callback); void getGeonaInitConfig(AsyncCallback callback); void getLinksFor(String itemId, RECORD_TYPE recordType, AsyncCallback callback); void getListConcessioni(Integer start, Integer limit, SortFilter filter, boolean reloadFromService, AsyncCallback callback); void deleteRecord(String itemId, RECORD_TYPE recordType, AsyncCallback callback); void getJSONRecord(String itemId, RECORD_TYPE recordType, AsyncCallback callback); void updateRecord(String itemId, String jsonUpdate, RECORD_TYPE recordType, AsyncCallback callback); }