2019-12-06 17:16:39 +01:00
|
|
|
package org.gcube.portlets.widgets.ckan2zenodopublisher.client;
|
|
|
|
|
2020-01-17 12:46:32 +01:00
|
|
|
import java.util.Map;
|
|
|
|
|
2019-12-09 11:56:04 +01:00
|
|
|
import org.gcube.portlets.widgets.ckan2zenodopublisher.shared.CatalogueItem;
|
2019-12-09 17:17:05 +01:00
|
|
|
import org.gcube.portlets.widgets.ckan2zenodopublisher.shared.wrapped.ZenodoItem;
|
2019-12-09 11:56:04 +01:00
|
|
|
|
2019-12-06 17:16:39 +01:00
|
|
|
import com.google.gwt.core.client.GWT;
|
|
|
|
import com.google.gwt.user.client.rpc.AsyncCallback;
|
|
|
|
|
2019-12-09 17:17:05 +01:00
|
|
|
public interface CkanToZenodoPublisherServiceAsync {
|
2019-12-06 17:16:39 +01:00
|
|
|
/**
|
|
|
|
* Utility class to get the RPC Async interface from client-side code
|
|
|
|
*/
|
|
|
|
public static final class Util
|
|
|
|
{
|
2019-12-06 17:23:52 +01:00
|
|
|
private static CkanToZenodoPublisherServiceAsync instance;
|
2019-12-06 17:16:39 +01:00
|
|
|
|
2019-12-06 17:23:52 +01:00
|
|
|
public static final CkanToZenodoPublisherServiceAsync getInstance()
|
2019-12-06 17:16:39 +01:00
|
|
|
{
|
|
|
|
if ( instance == null )
|
|
|
|
{
|
2019-12-06 17:23:52 +01:00
|
|
|
instance = (CkanToZenodoPublisherServiceAsync) GWT.create( CkanToZenodoPublisherService.class );
|
2019-12-06 17:16:39 +01:00
|
|
|
}
|
|
|
|
return instance;
|
|
|
|
}
|
|
|
|
|
|
|
|
private Util()
|
|
|
|
{
|
|
|
|
// Utility class should not be instantiated
|
|
|
|
}
|
|
|
|
}
|
2019-12-09 11:56:04 +01:00
|
|
|
|
2019-12-09 17:17:05 +01:00
|
|
|
void convertToZenodoItem(CatalogueItem item, AsyncCallback<ZenodoItem> callback);
|
2020-01-10 17:07:03 +01:00
|
|
|
|
|
|
|
void publishOnZenodo(ZenodoItem zenodoItem, AsyncCallback<String> callback);
|
2020-01-17 12:46:32 +01:00
|
|
|
|
|
|
|
void readFieldsDescriptions(AsyncCallback<Map<String, String>> callback);
|
2021-10-05 10:50:05 +02:00
|
|
|
|
|
|
|
void checkZenodoEnvironment(AsyncCallback<Boolean> callback);
|
2019-12-09 11:56:04 +01:00
|
|
|
|
|
|
|
|
2019-12-06 17:16:39 +01:00
|
|
|
}
|