use of org.cytoscape.task.internal.table.MapTableToNetworkTablesTask.TableType in project cytoscape-impl by cytoscape.
the class MapTableToNetworkTablesTaskFactoryImpl method createTaskIterator.
@Override
public TaskIterator createTaskIterator(CyTable globalTable, boolean selectedNetworksOnly, List<CyNetwork> networksList, Class<? extends CyIdentifiable> type) {
TableType tableType = getTableType(type);
if (tableType == null)
throw new IllegalArgumentException("The specified type " + type + " is not acceptable.");
ListSingleSelection<TableType> tableTypes = new ListSingleSelection<TableType>(tableType);
tableTypes.setSelectedValue(tableType);
List<String> networkNames = new ArrayList<String>();
for (CyNetwork net : networksList) {
networkNames.add(net.getRow(net).get(CyNetwork.NAME, String.class));
}
ListMultipleSelection<String> networksListTunable = new ListMultipleSelection<String>(networkNames);
networksListTunable.setSelectedValues(networkNames);
final Map<String, Object> m = new HashMap<String, Object>();
m.put("dataTypeOptions", tableTypes);
m.put("selectedNetworksOnly", selectedNetworksOnly);
m.put("networkList", networksListTunable);
return tunableSetter.createTaskIterator(createTaskIterator(globalTable), m);
}
use of org.cytoscape.task.internal.table.MapTableToNetworkTablesTask.TableType in project cytoscape-impl by cytoscape.
the class MergeTablesTaskFactoryImpl method createTaskIterator.
@Override
public TaskIterator createTaskIterator(final CyTable sourceTable, final CyTable targetTable, List<String> sourceColumnsList, String sourceKeyColumn, boolean mergeColumnVirtual, boolean mapToNetworks, boolean selectedNetworksOnly, List<CyNetwork> networkList, CyRootNetwork rootNetwork, CyColumn targetJoinColumn, Class<? extends CyIdentifiable> type) {
TableType tableType = getTableType(type);
if (tableType == null)
throw new IllegalArgumentException("The specified type " + type + " is not acceptable.");
ListSingleSelection<TableType> tableTypes = new ListSingleSelection<TableType>(tableType);
tableTypes.setSelectedValue(tableType);
List<String> networkNames = new ArrayList<String>();
if (networkList != null) {
for (CyNetwork net : networkList) {
networkNames.add(net.getRow(net).get(CyNetwork.NAME, String.class));
}
}
ListMultipleSelection<String> networksListTunable = new ListMultipleSelection<String>(networkNames);
networksListTunable.setSelectedValues(networkNames);
List<String> rootNetworkNames = new ArrayList<String>();
ListSingleSelection<String> rootNetworkList = new ListSingleSelection<String>();
if (rootNetwork != null) {
rootNetworkNames.add(rootNetwork.getRow(rootNetwork).get(CyNetwork.NAME, String.class));
rootNetworkList = new ListSingleSelection<String>(rootNetworkNames);
rootNetworkList.setSelectedValue(rootNetworkNames.get(0));
}
List<String> columnNames = new ArrayList<String>();
ListSingleSelection<String> columnNamesList = new ListSingleSelection<String>();
if (targetJoinColumn != null) {
columnNames.add(targetJoinColumn.getName());
columnNamesList = new ListSingleSelection<String>(columnNames);
columnNamesList.setSelectedValue(columnNames.get(0));
}
final Map<String, Object> m = new HashMap<String, Object>();
ListSingleSelection<String> chooser = new ListSingleSelection<String>(MergeTablesTask.NETWORK_COLLECTION, MergeTablesTask.NETWORK_SELECTION, MergeTablesTask.UNASSIGNED_TABLE);
if (mapToNetworks) {
if (selectedNetworksOnly)
chooser.setSelectedValue(MergeTablesTask.NETWORK_SELECTION);
else
chooser.setSelectedValue(MergeTablesTask.NETWORK_COLLECTION);
} else
chooser.setSelectedValue(MergeTablesTask.UNASSIGNED_TABLE);
ListSingleSelection<CyTable> sourceTableList = new ListSingleSelection<CyTable>(sourceTable);
sourceTableList.setSelectedValue(sourceTable);
ListSingleSelection<Object> targetTableList;
if (targetTable != null) {
targetTableList = new ListSingleSelection<Object>(targetTable);
targetTableList.setSelectedValue(targetTable);
} else {
targetTableList = new ListSingleSelection<Object>(MergeTablesTask.NO_TABLES);
targetTableList.setSelectedValue(MergeTablesTask.NO_TABLES);
}
ListMultipleSelection<String> sourceColNames = new ListMultipleSelection<String>(sourceColumnsList);
sourceColNames.setSelectedValues(sourceColumnsList);
ListSingleSelection<String> sourceColumn = new ListSingleSelection<String>(sourceKeyColumn);
sourceColumn.setSelectedValue(sourceKeyColumn);
m.put("MergeType", mergeColumnVirtual);
m.put("SourceMergeKey", sourceColumn);
m.put("TargetMergeKey", columnNamesList);
m.put("SourceTable", sourceTableList);
m.put("UnassignedTable", targetTableList);
m.put("SourceMergeColumns", sourceColNames);
m.put("WhereMergeTable", chooser);
m.put("TargetNetworkList", networksListTunable);
m.put("TargetKeyNetworkCollection", columnNamesList);
m.put("TargetNetworkCollection", rootNetworkList);
m.put("DataTypeTargetForNetworkCollection", tableTypes);
m.put("DataTypeTargetForNetworkList", tableTypes);
return tunableSetter.createTaskIterator(createTaskIterator(), m);
}
use of org.cytoscape.task.internal.table.MapTableToNetworkTablesTask.TableType in project cytoscape-impl by cytoscape.
the class JoinTablesTaskTaskFactoryImpl method createTaskIterator.
@Override
public TaskIterator createTaskIterator(CyTable globalTable, boolean selectedNetworksOnly, List<CyNetwork> networkList, CyRootNetwork rootNetwork, CyColumn targetJoinColumn, Class<? extends CyIdentifiable> type) {
TableType tableType = getTableType(type);
if (tableType == null)
throw new IllegalArgumentException("The specified type " + type + " is not acceptable.");
ListSingleSelection<TableType> tableTypes = new ListSingleSelection<TableType>(tableType);
tableTypes.setSelectedValue(tableType);
List<String> networkNames = new ArrayList<String>();
for (CyNetwork net : networkList) {
networkNames.add(net.getRow(net).get(CyNetwork.NAME, String.class));
}
ListMultipleSelection<String> networksListTunable = new ListMultipleSelection<String>(networkNames);
networksListTunable.setSelectedValues(networkNames);
List<String> rootNetworkNames = new ArrayList<String>();
ListSingleSelection<String> rootNetworkList = new ListSingleSelection<String>();
if (rootNetwork != null) {
rootNetworkNames.add(rootNetwork.getRow(rootNetwork).get(CyNetwork.NAME, String.class));
rootNetworkList = new ListSingleSelection<String>(rootNetworkNames);
rootNetworkList.setSelectedValue(rootNetworkNames.get(0));
}
List<String> columnNames = new ArrayList<String>();
ListSingleSelection<String> columnNamesList = new ListSingleSelection<String>();
if (targetJoinColumn != null) {
columnNames.add(targetJoinColumn.getName());
columnNamesList = new ListSingleSelection<String>(columnNames);
columnNamesList.setSelectedValue(columnNames.get(0));
}
final Map<String, Object> m = new HashMap<String, Object>();
m.put("DataTypeOptions", tableTypes);
m.put("SelectedNetworksOnly", selectedNetworksOnly);
m.put("NetworkList", networksListTunable);
m.put("ColumnList", columnNamesList);
m.put("RootNetworkList", rootNetworkList);
return tunableSetter.createTaskIterator(createTaskIterator(globalTable), m);
}
Aggregations