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

SP-659, BIS-370: DataSetRegistrationNodeModelTest fixed. Improved waiting...

SP-659, BIS-370: DataSetRegistrationNodeModelTest fixed. Improved waiting cursor handling for ReportNodeDialog.

SVN: 29238
parent 3fdf0766
No related branches found
No related tags found
No related merge requests found
......@@ -20,6 +20,7 @@ import static ch.systemsx.cisd.openbis.knime.common.AbstractOpenBisNodeModel.PAS
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Cursor;
import java.awt.Dimension;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
......@@ -214,7 +215,7 @@ public class Util
}
}
public static List<DataSet> getSelectedDataSets(Component parentComponent,
public static List<DataSet> getSelectedDataSets(Component parentComponent, Cursor oldCursor,
List<DataSet> dataSets, boolean singleSelection)
{
JTable table = new JTable(createTableModel(dataSets));
......@@ -257,6 +258,7 @@ public class Util
filterPanel.add(filterField, BorderLayout.CENTER);
panel.add(filterPanel, BorderLayout.SOUTH);
JOptionPane optionPane = new JOptionPane(panel, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
parentComponent.setCursor(oldCursor);
JDialog dialog = optionPane.createDialog(parentComponent, "Data Sets");
dialog.setResizable(true);
dialog.setVisible(true);
......
......@@ -152,50 +152,50 @@ public class ReportNodeDialog extends AbstractDescriptionBasedNodeDialog<ReportD
{
return;
}
List<DataSet> dataSets = loadDataSets(description, facade);
List<DataSet> selectedDataSets = Util.getSelectedDataSets(getPanel(), dataSets, false);
if (selectedDataSets.isEmpty())
{
return;
}
StringBuilder builder = new StringBuilder();
for (DataSet dataSet : selectedDataSets)
{
if (builder.length() > 0)
{
builder.append(DELIMITER);
}
builder.append(dataSet.getCode());
}
dataSetCodeFields.setText(builder.toString());
}
private List<DataSet> loadDataSets(ReportDescription description, IQueryApiFacade facade)
{
JPanel panel = getPanel();
Cursor cursor = panel.getCursor();
try
{
panel.setCursor(new Cursor(Cursor.WAIT_CURSOR));
List<String> dataSetTypes = description.getDataSetTypes();
IGeneralInformationService service = facade.getGeneralInformationService();
List<DataSet> allDataSets = new ArrayList<DataSet>();
for (String dataSetType : dataSetTypes)
List<DataSet> dataSets = loadDataSets(description, facade);
List<DataSet> selectedDataSets = Util.getSelectedDataSets(getPanel(), cursor, dataSets, false);
if (selectedDataSets.isEmpty())
{
SearchCriteria searchCriteria = new SearchCriteria();
searchCriteria.setOperator(SearchOperator.MATCH_ANY_CLAUSES);
MatchClause clause =
MatchClause.createAttributeMatch(MatchClauseAttribute.TYPE, dataSetType);
searchCriteria.addMatchClause(clause);
List<DataSet> dataSets = service.searchForDataSets(facade.getSessionToken(), searchCriteria);
logger.info(dataSets.size() + " data sets of type " + dataSetType);
allDataSets.addAll(dataSets);
return;
}
StringBuilder builder = new StringBuilder();
for (DataSet dataSet : selectedDataSets)
{
if (builder.length() > 0)
{
builder.append(DELIMITER);
}
builder.append(dataSet.getCode());
}
return allDataSets;
dataSetCodeFields.setText(builder.toString());
} finally
{
panel.setCursor(cursor);
}
}
private List<DataSet> loadDataSets(ReportDescription description, IQueryApiFacade facade)
{
List<String> dataSetTypes = description.getDataSetTypes();
IGeneralInformationService service = facade.getGeneralInformationService();
List<DataSet> allDataSets = new ArrayList<DataSet>();
for (String dataSetType : dataSetTypes)
{
SearchCriteria searchCriteria = new SearchCriteria();
searchCriteria.setOperator(SearchOperator.MATCH_ANY_CLAUSES);
MatchClause clause =
MatchClause.createAttributeMatch(MatchClauseAttribute.TYPE, dataSetType);
searchCriteria.addMatchClause(clause);
List<DataSet> dataSets = service.searchForDataSets(facade.getSessionToken(), searchCriteria);
logger.info(dataSets.size() + " data sets of type " + dataSetType);
allDataSets.addAll(dataSets);
}
return allDataSets;
}
}
......@@ -120,6 +120,9 @@ public class DataSetRegistrationNodeModelTest extends AbstractFileSystemTestCase
allowing(facadeFactory).createFacade(null, null, null);
will(returnValue(serviceFacade));
allowing(queryFacade).logout();
allowing(serviceFacade).logout();
}
});
flowVariables = new HashMap<String, String>();
......@@ -505,5 +508,4 @@ public class DataSetRegistrationNodeModelTest extends AbstractFileSystemTestCase
}
});
}
}
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