mev-4.0.01/source/org/tigr/microarray/mev/cluster/clusterUtil/submit/SubmissionManager.java

Code
Comments
Other
Rev Date Author Line
2 26 Feb 07 jari 1 /*
2 26 Feb 07 jari 2 Copyright @ 1999-2004, The Institute for Genomic Research (TIGR).
2 26 Feb 07 jari 3 All rights reserved.
2 26 Feb 07 jari 4  */
2 26 Feb 07 jari 5 /*
2 26 Feb 07 jari 6  * $RCSfile: SubmissionManager.java,v $
2 26 Feb 07 jari 7  * $Revision: 1.2 $
2 26 Feb 07 jari 8  * $Date: 2006/02/23 20:59:47 $
2 26 Feb 07 jari 9  * $Author: caliente $
2 26 Feb 07 jari 10  * $State: Exp $
2 26 Feb 07 jari 11  */
2 26 Feb 07 jari 12 /*
2 26 Feb 07 jari 13  * SubmissionManager.java
2 26 Feb 07 jari 14  *
2 26 Feb 07 jari 15  * Created on June 25, 2004, 10:33 AM
2 26 Feb 07 jari 16  */
2 26 Feb 07 jari 17
2 26 Feb 07 jari 18 package org.tigr.microarray.mev.cluster.clusterUtil.submit;
2 26 Feb 07 jari 19
2 26 Feb 07 jari 20 import javax.swing.JOptionPane;
2 26 Feb 07 jari 21
2 26 Feb 07 jari 22 import org.tigr.microarray.mev.cluster.clusterUtil.Cluster;
2 26 Feb 07 jari 23 import org.tigr.microarray.mev.cluster.clusterUtil.ClusterRepository;
2 26 Feb 07 jari 24 import org.tigr.microarray.mev.cluster.gui.IFramework;
2 26 Feb 07 jari 25
2 26 Feb 07 jari 26 /**
2 26 Feb 07 jari 27  *
2 26 Feb 07 jari 28  * @author  braisted
2 26 Feb 07 jari 29  */
2 26 Feb 07 jari 30
2 26 Feb 07 jari 31 public class SubmissionManager {
2 26 Feb 07 jari 32     
2 26 Feb 07 jari 33     private RepositoryConfigParser parser;
2 26 Feb 07 jari 34     private ClusterRepository repository;
2 26 Feb 07 jari 35     private IFramework framework;
2 26 Feb 07 jari 36     
2 26 Feb 07 jari 37     /** Creates a new instance of SubmissionManager */
2 26 Feb 07 jari 38     public SubmissionManager(IFramework framework, ClusterRepository repository) {
2 26 Feb 07 jari 39         this.framework = framework;
2 26 Feb 07 jari 40         this.repository = repository;
2 26 Feb 07 jari 41         parser = new RepositoryConfigParser();        
2 26 Feb 07 jari 42     }
2 26 Feb 07 jari 43     
2 26 Feb 07 jari 44     /** Initiates and completes a cluster submission.  Returns false IF submission
2 26 Feb 07 jari 45      * is KNOWN to have failed, else returns true
2 26 Feb 07 jari 46      */
2 26 Feb 07 jari 47     public boolean submit(Cluster cluster) {
2 26 Feb 07 jari 48         boolean submit = false;
2 26 Feb 07 jari 49         
2 26 Feb 07 jari 50         // check that parser has a root element and rep. info., else return false
2 26 Feb 07 jari 51         if(!parser.parseSubmissionConfigFile()) {
2 26 Feb 07 jari 52             // report error
2 26 Feb 07 jari 53             JOptionPane.showMessageDialog(this.framework.getFrame(), "Error parsing gene cluster submission configuration file, \n"+
2 26 Feb 07 jari 54             "\"config/archive_submission_config.xml\"", "Submission Configuration File", JOptionPane.ERROR_MESSAGE);
2 26 Feb 07 jari 55             return false;
2 26 Feb 07 jari 56         }
2 26 Feb 07 jari 57         
2 26 Feb 07 jari 58         // present archive selection dialog
2 26 Feb 07 jari 59         ClusterArchiveSelectionDialog dialog = new ClusterArchiveSelectionDialog(parser);
2 26 Feb 07 jari 60         if(dialog.showModal() == JOptionPane.OK_OPTION) {
2 26 Feb 07 jari 61         // get the repository Element for the selected name            
2 26 Feb 07 jari 62             String repName = dialog.getSelectedRepositoryName(); 
2 26 Feb 07 jari 63             
2 26 Feb 07 jari 64                     // get the submitter implemenation class name        
2 26 Feb 07 jari 65             String implClassName = parser.getRepositorySubmissionClass(repName);
2 26 Feb 07 jari 66             
2 26 Feb 07 jari 67             try {
2 26 Feb 07 jari 68                 // instantiate the submitter                       
2 26 Feb 07 jari 69                 IClusterSubmitter submitter = (IClusterSubmitter)(this.getClass().forName(implClassName).newInstance());
2 26 Feb 07 jari 70                 submit = submitter.submit(cluster, framework, parser);
2 26 Feb 07 jari 71             } catch ( Exception e) {
2 26 Feb 07 jari 72                 
2 26 Feb 07 jari 73             }
2 26 Feb 07 jari 74         }
2 26 Feb 07 jari 75         
2 26 Feb 07 jari 76         return submit;        
2 26 Feb 07 jari 77     }
2 26 Feb 07 jari 78
2 26 Feb 07 jari 79 }