Skip to content
Snippets Groups Projects
Commit 71c40e2a authored by felmer's avatar felmer
Browse files

SSDM-3897: Improve BLAST error message. Enable search button again if BLAST...

SSDM-3897: Improve BLAST error message. Enable search button again if BLAST searching is failing. Change the order of execution of on-failure actions and finishOnFailure hook in AbstractAsyncCallback.onFailure().

SVN: 37119
parent a237b3ad
No related branches found
No related tags found
No related merge requests found
...@@ -187,7 +187,7 @@ public class BlastUtils ...@@ -187,7 +187,7 @@ public class BlastUtils
return output; return output;
} }
processResult.log(); processResult.log();
String message = "Couldn't find any results. The reason is most likely that the BLAST database has been populated"; String message = "Couldn't find any results. The reason is most likely that the BLAST database hasn't been populated";
throw new UserFailureException(message); throw new UserFailureException(message);
} }
......
...@@ -22,7 +22,6 @@ import java.util.List; ...@@ -22,7 +22,6 @@ import java.util.List;
import com.extjs.gxt.ui.client.event.WindowEvent; import com.extjs.gxt.ui.client.event.WindowEvent;
import com.extjs.gxt.ui.client.event.WindowListener; import com.extjs.gxt.ui.client.event.WindowListener;
import com.extjs.gxt.ui.client.widget.Dialog; import com.extjs.gxt.ui.client.widget.Dialog;
import com.extjs.gxt.ui.client.widget.MessageBox;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException; import com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException;
import com.google.gwt.user.client.rpc.InvocationException; import com.google.gwt.user.client.rpc.InvocationException;
...@@ -244,11 +243,11 @@ public abstract class AbstractAsyncCallback<T> implements AsyncCallback<T> ...@@ -244,11 +243,11 @@ public abstract class AbstractAsyncCallback<T> implements AsyncCallback<T>
{ {
callbackListener.onFailureOf(viewContext, this, msg, caught); callbackListener.onFailureOf(viewContext, this, msg, caught);
} }
finishOnFailure(caught);
for (IDelegatedAction a : failureActions) for (IDelegatedAction a : failureActions)
{ {
a.execute(); a.execute();
} }
finishOnFailure(caught);
} }
private boolean isIncompatibleServerException(final Throwable caught) private boolean isIncompatibleServerException(final Throwable caught)
......
...@@ -29,6 +29,7 @@ import java.util.List; ...@@ -29,6 +29,7 @@ import java.util.List;
import com.extjs.gxt.ui.client.core.XDOM; import com.extjs.gxt.ui.client.core.XDOM;
import com.extjs.gxt.ui.client.event.ButtonEvent; import com.extjs.gxt.ui.client.event.ButtonEvent;
import com.extjs.gxt.ui.client.event.SelectionListener; import com.extjs.gxt.ui.client.event.SelectionListener;
import com.extjs.gxt.ui.client.mvc.Dispatcher;
import com.extjs.gxt.ui.client.store.ListStore; import com.extjs.gxt.ui.client.store.ListStore;
import com.extjs.gxt.ui.client.widget.LayoutContainer; import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.button.Button; import com.extjs.gxt.ui.client.widget.button.Button;
...@@ -38,6 +39,7 @@ import com.extjs.gxt.ui.client.widget.grid.GridCellRenderer; ...@@ -38,6 +39,7 @@ import com.extjs.gxt.ui.client.widget.grid.GridCellRenderer;
import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync; import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AppEvents;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DispatcherHelper; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DispatcherHelper;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DisplayTypeIDGenerator; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DisplayTypeIDGenerator;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.BaseEntityModel; import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.BaseEntityModel;
...@@ -51,6 +53,7 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.grid.IC ...@@ -51,6 +53,7 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.grid.IC
import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.grid.IDisposableComponent; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.grid.IDisposableComponent;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.IDataRefreshCallback; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.IDataRefreshCallback;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.MultilineHTML; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.MultilineHTML;
import ch.systemsx.cisd.openbis.generic.client.web.client.application.util.IDelegatedAction;
import ch.systemsx.cisd.openbis.generic.client.web.client.dto.DefaultResultSetConfig; import ch.systemsx.cisd.openbis.generic.client.web.client.dto.DefaultResultSetConfig;
import ch.systemsx.cisd.openbis.generic.client.web.client.dto.MatchingEntitiesPanelColumnIDs; import ch.systemsx.cisd.openbis.generic.client.web.client.dto.MatchingEntitiesPanelColumnIDs;
import ch.systemsx.cisd.openbis.generic.client.web.client.dto.SearchableEntity; import ch.systemsx.cisd.openbis.generic.client.web.client.dto.SearchableEntity;
...@@ -238,6 +241,14 @@ public final class MatchingEntitiesPanel extends TypedTableGrid<MatchingEntity> ...@@ -238,6 +241,14 @@ public final class MatchingEntitiesPanel extends TypedTableGrid<MatchingEntity>
ShowResultSetCutInfo<TypedTableResultSet<MatchingEntity>> info = ShowResultSetCutInfo<TypedTableResultSet<MatchingEntity>> info =
new ShowResultSetCutInfo<TypedTableResultSet<MatchingEntity>>(viewContext); new ShowResultSetCutInfo<TypedTableResultSet<MatchingEntity>>(viewContext);
callback.addOnSuccessAction(info); callback.addOnSuccessAction(info);
callback.addOnFailureAction(new IDelegatedAction()
{
@Override
public void execute()
{
Dispatcher.get().fireEvent(AppEvents.GLOBAL_SEARCH_FINISHED_EVENT);
}
});
viewContext.getService().listMatchingEntities(searchableEntity, queryText, viewContext.getService().listMatchingEntities(searchableEntity, queryText,
useWildcardSearchMode, resultSetConfig, callback); useWildcardSearchMode, resultSetConfig, callback);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment