ckan2zenodo-publisher-widget/src/main/java/org/gcube/portlets/widgets/ckan2zenodopublisher/client/CkanToZendoPublisherWidget....

94 lines
2.4 KiB
Java

package org.gcube.portlets.widgets.ckan2zenodopublisher.client;
import org.gcube.portlets.widgets.ckan2zenodopublisher.client.view.uibinder.AccordionBasicPanel;
import org.gcube.portlets.widgets.ckan2zenodopublisher.client.view.uibinder.BasicInformationView;
import org.gcube.portlets.widgets.ckan2zenodopublisher.client.view.uibinder.Ckan2ZenodoViewManager;
import org.gcube.portlets.widgets.ckan2zenodopublisher.shared.CatalogueItem;
import org.gcube.portlets.widgets.ckan2zenodopublisher.shared.wrapped.ZenodoItem;
import com.github.gwtbootstrap.client.ui.Modal;
import com.google.gwt.user.client.rpc.AsyncCallback;
/**
* The Class CkanToZendoPublisherWidget.
*
* @author Francesco Mangiacrapa at ISTI-CNR (francesco.mangiacrapa@isti.cnr.it)
*
* Dec 9, 2019
*/
public class CkanToZendoPublisherWidget {
private final CkanToZenodoPublisherServiceAsync ckanToZenodoService = CkanToZenodoPublisherServiceAsync.Util
.getInstance();
/**
* Instantiates a new ckan to zendo publisher widget.
*/
public CkanToZendoPublisherWidget() {
}
/**
* Publish on zenodo.
*
* @param item the item
*/
public void publishOnZenodo(final CatalogueItem item) {
ckanToZenodoService.convertToZenodoItem(item, new AsyncCallback<ZenodoItem>() {
@Override
public void onFailure(Throwable caught) {
}
@Override
public void onSuccess(ZenodoItem result) {
Modal modal = new Modal(true);
Ckan2ZenodoViewManager manager = new Ckan2ZenodoViewManager();
AccordionBasicPanel theForm = manager.viewForPublishing(result);
// BasicInformationView form = new BasicInformationView(result) {
//
//
// @Override
// public void submitHandler() {
// }
//
// @Override
// public void setError(boolean visible, String error) {
// }
//
// @Override
// public void setConfirm(boolean visible, String msg) {
// }
// };
modal.setTitle("Publishing on Zenodo...");
modal.addStyleName("ckan2zenodo-modal-style");
modal.setCloseVisible(true);
modal.add(theForm);
modal.show();
}
});
}
/**
* To zenodo item.
*
* @param item the item
*/
private void toZenodoItem(CatalogueItem item) {
ckanToZenodoService.convertToZenodoItem(item, new AsyncCallback<ZenodoItem>() {
@Override
public void onFailure(Throwable caught) {
}
@Override
public void onSuccess(ZenodoItem result) {
}
});
}
}