Author: kono
Date: 2011-03-07 17:01:50 -0800 (Mon, 07 Mar 2011)
New Revision: 24330

Added:
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/MajorIDSets.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkDataSourceTask.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkIdTypeTask.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectTableMappingKeyTask.java
Modified:
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/LoadNetworkTask.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartState.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartTask.java
Log:
Implementing small tasks for the quick start wizard.

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/LoadNetworkTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/LoadNetworkTask.java
        2011-03-08 00:32:37 UTC (rev 24329)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/LoadNetworkTask.java
        2011-03-08 01:01:50 UTC (rev 24330)
@@ -39,11 +39,17 @@
 import org.cytoscape.work.TaskMonitor;
 
 public class LoadNetworkTask extends AbstractTask {
-
+       
+       private QuickStartState state;
+       
        public LoadNetworkTask(QuickStartState state) {
+               this.state = state;
        }
 
        public void run(TaskMonitor e) {
                System.out.println("loading network");
+               // TODO: load actual network here
+               
+               insertTasksAfterCurrentTask(new SelectNetworkIdTypeTask(state));
        }
 }

Added: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/MajorIDSets.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/MajorIDSets.java
                            (rev 0)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/MajorIDSets.java
    2011-03-08 01:01:50 UTC (rev 24330)
@@ -0,0 +1,8 @@
+package org.cytoscape.task.internal.quickstart;
+
+/**
+ * List of major ID types.
+ */
+public enum MajorIDSets {
+       ENSEMBL, ENTREZ_GENE, UNIPROT;
+}
\ No newline at end of file

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartState.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartState.java
        2011-03-08 00:32:37 UTC (rev 24329)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartState.java
        2011-03-08 01:01:50 UTC (rev 24330)
@@ -35,19 +35,37 @@
 
 package org.cytoscape.task.internal.quickstart;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Set;
 import java.util.EnumSet;
 import java.util.Collections;
 
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyTable;
+
 class QuickStartState {
 
        enum Job { 
                LOAD_NETWORK,
                LOAD_TABLE,
+               SELECT_NETWORK_ID_TYPE,
+               SELECT_TABLE_ID_TYPE;
        }
 
-       private Set<Job> completedSoFar = 
Collections.synchronizedSet(EnumSet.noneOf(Job.class));
+       private final Set<Job> completedSoFar = 
Collections.synchronizedSet(EnumSet.noneOf(Job.class));
+       
+       private final List<CyNetwork> networks = new ArrayList<CyNetwork>();
+       private final List<CyTable> tables = new ArrayList<CyTable>();
 
+       List<CyNetwork> getNetworks() {
+               return networks;
+       }
+       
+       List<CyTable> getTables() {
+               return tables;
+       }
+       
        synchronized void finished(Job j) {
                completedSoFar.add(j);  
        }

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartTask.java
 2011-03-08 00:32:37 UTC (rev 24329)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/QuickStartTask.java
 2011-03-08 01:01:50 UTC (rev 24330)
@@ -31,36 +31,37 @@
   You should have received a copy of the GNU Lesser General Public License
   along with this library; if not, write to the Free Software Foundation,
   Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
-*/
+ */
 
 package org.cytoscape.task.internal.quickstart;
 
-import org.cytoscape.work.Task;
 import org.cytoscape.work.AbstractTask;
 import org.cytoscape.work.TaskMonitor;
 import org.cytoscape.work.Tunable;
 import org.cytoscape.work.util.ListSingleSelection;
 
 public class QuickStartTask extends AbstractTask {
-       private static String optionA = "Load a Network";
-       private static String optionB = "Load an Attribute Table";
-       
-//     @Tunable(description="What would you like to do today?\nCytoscape 
requires at the minimum a network to do anything.  A network and attributes 
makes life much better.  If you don't have a network, that's OK, we'll help you 
find one.")
-       @Tunable(description="What would you like to do today?")
-       public ListSingleSelection<String> selection = new 
ListSingleSelection<String>(optionA,optionB);
 
+       private static final String LOAD_NETWORK = "Load a Network";
+       private static final String LOAD_TABLE = "Load an Attribute Table";
+
+       // @Tunable(description="What would you like to do today?\nCytoscape 
requires at the minimum a network to do anything.  A network and attributes 
makes life much better.  If you don't have a network, that's OK, we'll help you 
find one.")
+       @Tunable(description = "What would you like to do today?")
+       public ListSingleSelection<String> selection = new 
ListSingleSelection<String>(
+                       LOAD_NETWORK, LOAD_TABLE);
+
        private final QuickStartState state;
 
-       public QuickStartTask(QuickStartState state) {
+       public QuickStartTask(final QuickStartState state) {
                super();
                this.state = state;
        }
 
        public void run(TaskMonitor e) {
                String selected = selection.getSelectedValue();
-               if ( selected == optionA )
-                       insertTasksAfterCurrentTask( new LoadNetworkTask(state) 
);
-               else if ( selected == optionB )
-                       insertTasksAfterCurrentTask( new LoadTableTask(state) );
+               if (selected == LOAD_NETWORK) {
+                       insertTasksAfterCurrentTask(new LoadNetworkTask(state));
+               } else if (selected == LOAD_TABLE)
+                       insertTasksAfterCurrentTask(new LoadTableTask(state));
        }
 }

Added: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkDataSourceTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkDataSourceTask.java
                            (rev 0)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkDataSourceTask.java
    2011-03-08 01:01:50 UTC (rev 24330)
@@ -0,0 +1,35 @@
+package org.cytoscape.task.internal.quickstart;
+
+import 
org.cytoscape.task.internal.quickstart.SelectNetworkDataSourceTask.DataSourceType;
+import org.cytoscape.work.AbstractTask;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.Tunable;
+import org.cytoscape.work.util.ListSingleSelection;
+
+public class SelectNetworkDataSourceTask extends AbstractTask {
+
+       enum DataSourceType {
+               FILE_OR_URL, WEB_SERVICE;
+       }
+
+       @Tunable(description = "Select Data Source Type")
+       public ListSingleSelection<DataSourceType> dataSource = new 
ListSingleSelection<DataSourceType>(
+                       DataSourceType.FILE_OR_URL, DataSourceType.WEB_SERVICE);
+
+       private final QuickStartState state;
+
+       SelectNetworkDataSourceTask(final QuickStartState state) {
+               this.state = state;
+       }
+
+       @Override
+       public void run(TaskMonitor taskMonitor) throws Exception {
+               final DataSourceType selected = dataSource.getSelectedValue();
+               if(selected == DataSourceType.FILE_OR_URL)
+                       insertTasksAfterCurrentTask(new 
SelectNetworkIdTypeTask(state));
+               else {
+                       
+               }
+       }
+
+}

Added: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkIdTypeTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkIdTypeTask.java
                                (rev 0)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectNetworkIdTypeTask.java
        2011-03-08 01:01:50 UTC (rev 24330)
@@ -0,0 +1,25 @@
+package org.cytoscape.task.internal.quickstart;
+
+import org.cytoscape.work.AbstractTask;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.Tunable;
+import org.cytoscape.work.util.ListSingleSelection;
+
+public class SelectNetworkIdTypeTask extends AbstractTask {
+       
+       @Tunable(description="Select Network ID Type")
+       public ListSingleSelection<MajorIDSets> selection = new 
ListSingleSelection<MajorIDSets>(MajorIDSets.ENSEMBL,MajorIDSets.ENTREZ_GENE, 
MajorIDSets.UNIPROT);
+       
+       private final QuickStartState state;
+
+       public SelectNetworkIdTypeTask(final QuickStartState state) {
+               this.state = state;             
+       }
+
+       @Override
+       public void run(TaskMonitor arg0) throws Exception {
+               System.out.println("ID type selected for network.  Selected 
type = " + selection.getSelectedValue());
+               insertTasksAfterCurrentTask(new LoadTableTask(state));
+       }
+
+}

Added: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectTableMappingKeyTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectTableMappingKeyTask.java
                              (rev 0)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/quickstart/SelectTableMappingKeyTask.java
      2011-03-08 01:01:50 UTC (rev 24330)
@@ -0,0 +1,29 @@
+package org.cytoscape.task.internal.quickstart;
+
+import org.cytoscape.work.AbstractTask;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.Tunable;
+import org.cytoscape.work.util.ListSingleSelection;
+
+public class SelectTableMappingKeyTask extends AbstractTask {
+       
+       @Tunable(description="Select key column")
+       public ListSingleSelection<Integer> keyColumn = new 
ListSingleSelection<Integer>(1, 2, 3);
+       
+       
+       @Tunable(description="Select Column ID Type")
+       public ListSingleSelection<MajorIDSets> selection = new 
ListSingleSelection<MajorIDSets>(MajorIDSets.ENSEMBL,MajorIDSets.ENTREZ_GENE, 
MajorIDSets.UNIPROT);
+       
+       private final QuickStartState state;
+       
+       public SelectTableMappingKeyTask(QuickStartState state) {
+               this.state = state;
+       }
+
+       @Override
+       public void run(TaskMonitor arg0) throws Exception {
+               // TODO Auto-generated method stub
+               
+       }
+
+}

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to