You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2012/10/18 22:53:15 UTC

svn commit: r1399848 - in /airavata/trunk/modules: airavata-client/src/main/java/org/apache/airavata/client/api/ airavata-client/src/main/java/org/apache/airavata/client/impl/ registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance...

Author: chathuri
Date: Thu Oct 18 20:53:15 2012
New Revision: 1399848

URL: http://svn.apache.org/viewvc?rev=1399848&view=rev
Log:
adding method to registry API to check whether experiment name exist and make experiment name field blank in xbaya 

Modified:
    airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/api/ProvenanceManager.java
    airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/impl/ProvenanceManagerImpl.java
    airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
    airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataRetriever.java
    airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
    airavata/trunk/modules/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProvenanceRegistry.java
    airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java

Modified: airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/api/ProvenanceManager.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/api/ProvenanceManager.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/api/ProvenanceManager.java (original)
+++ airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/api/ProvenanceManager.java Thu Oct 18 20:53:15 2012
@@ -208,6 +208,14 @@ public interface ProvenanceManager {
      */
 	public ExperimentMetadata getExperimentMetadata(String experimentId) throws AiravataAPIInvocationException;
 
+    /**
+     * check whether the experiment exists
+     * @param experimentName
+     * @return
+     * @throws AiravataAPIInvocationException
+     */
+    public boolean isExperimentNameExist(String experimentName) throws AiravataAPIInvocationException;
+
 	   /**
      * Update the instance name of the Workflow
      * @param experimentId

Modified: airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/impl/ProvenanceManagerImpl.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/impl/ProvenanceManagerImpl.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/impl/ProvenanceManagerImpl.java (original)
+++ airavata/trunk/modules/airavata-client/src/main/java/org/apache/airavata/client/impl/ProvenanceManagerImpl.java Thu Oct 18 20:53:15 2012
@@ -228,7 +228,16 @@ public class ProvenanceManagerImpl imple
 		}
 	}
 
-	@Override
+    @Override
+    public boolean isExperimentNameExist(String experimentName) throws AiravataAPIInvocationException {
+        try {
+            return getClient().getRegistry().isExperimentNameExist(experimentName);
+        } catch (RegistryException e) {
+            throw new AiravataAPIInvocationException(e);
+        }
+    }
+
+    @Override
 	public List<String> getExperimentIdList(String owner) throws AiravataAPIInvocationException{
 		try {
 			return getClient().getRegistry().getExperimentIdByUser(owner);

Modified: airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java (original)
+++ airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java Thu Oct 18 20:53:15 2012
@@ -843,8 +843,14 @@ public class AiravataJPARegistry extends
 		return experiment.getData().getUserName();
 	}
 
+    @Override
+    public boolean isExperimentNameExist(String experimentName) throws RegistryException {
+        ExperimentDataRetriever experimentDataRetriever = new ExperimentDataRetriever();
+        return experimentDataRetriever.isExperimentNameExist(experimentName);
+    }
 
-	@Override
+
+    @Override
 	public String getExperimentName(String experimentId)
 			throws RegistryException {
 		if (!isExperimentExists(experimentId)){

Modified: airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataRetriever.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataRetriever.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataRetriever.java (original)
+++ airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentDataRetriever.java Thu Oct 18 20:53:15 2012
@@ -343,6 +343,40 @@ public class ExperimentDataRetriever {
         return experimentData;
     }
 
+    public boolean isExperimentNameExist(String experimentName){
+        String connectionURL =  Utils.getJDBCURL();
+        Connection connection = null;
+        ResultSet rs = null;
+        Statement statement;
+        try{
+            Class.forName(Utils.getJDBCDriver()).newInstance();
+            connection = DriverManager.getConnection(connectionURL, Utils.getJDBCUser(), Utils.getJDBCPassword());
+            statement = connection.createStatement();
+            String queryString = "SELECT name FROM Experiment_Data WHERE name='" + experimentName + "'";
+            rs = statement.executeQuery(queryString);
+            if(rs != null){
+                while (rs.next()) {
+                    return true;
+                }
+            }
+            if(rs != null){
+                rs.close();
+            }
+            statement.close();
+            connection.close();
+        } catch (ClassNotFoundException e) {
+            logger.error(e.getMessage(), e);
+        } catch (SQLException e) {
+            logger.error(e.getMessage(), e);
+        } catch (InstantiationException e) {
+            logger.error(e.getMessage(), e);
+        } catch (IllegalAccessException e) {
+            logger.error(e.getMessage(), e);
+        }
+
+        return false;
+    }
+
     public List<ExperimentData> getAllExperimentMetaInformation(String user){
         String connectionURL =  Utils.getJDBCURL();
         Connection connection = null;

Modified: airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java (original)
+++ airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java Thu Oct 18 20:53:15 2012
@@ -136,8 +136,8 @@ public class ExperimentResource extends 
                 generator = new QueryGenerator(EXPERIMENT_DATA);
                 generator.setParameter(ExperimentDataConstants.EXPERIMENT_ID, name);
                 q = generator.selectQuery(em);
-                Experiment_Data experimentwData = (Experiment_Data)q.getSingleResult();
-                ExperimentDataResource experimentDataResource = (ExperimentDataResource)Utils.getResource(ResourceType.EXPERIMENT_DATA, experimentwData);
+                Experiment_Data experimentData = (Experiment_Data)q.getSingleResult();
+                ExperimentDataResource experimentDataResource = (ExperimentDataResource)Utils.getResource(ResourceType.EXPERIMENT_DATA, experimentData);
                 em.getTransaction().commit();
                 em.close();
                 return experimentDataResource;

Modified: airavata/trunk/modules/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProvenanceRegistry.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProvenanceRegistry.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProvenanceRegistry.java (original)
+++ airavata/trunk/modules/registry/registry-api/src/main/java/org/apache/airavata/registry/api/ProvenanceRegistry.java Thu Oct 18 20:53:15 2012
@@ -68,7 +68,14 @@ public interface ProvenanceRegistry exte
      * @throws RegistryException
      */
 	public abstract String getExperimentExecutionUser(String experimentId) throws RegistryException;
-    
+
+    /**
+     * check whether the experiment name exists
+     * @param experimentName
+     * @return
+     * @throws RegistryException
+     */
+    public boolean isExperimentNameExist(String experimentName) throws  RegistryException;
     /**
      * Get the name of the workflow intance
      * @param experimentId

Modified: airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java?rev=1399848&r1=1399847&r2=1399848&view=diff
==============================================================================
--- airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java (original)
+++ airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java Thu Oct 18 20:53:15 2012
@@ -39,6 +39,8 @@ import javax.xml.namespace.QName;
 import org.apache.airavata.common.utils.StringUtil;
 import org.apache.airavata.common.utils.XMLUtil;
 import org.apache.airavata.common.workflow.execution.context.WorkflowContextHeaderBuilder;
+import org.apache.airavata.registry.api.AiravataRegistry2;
+import org.apache.airavata.registry.api.exception.RegistryException;
 import org.apache.airavata.workflow.model.graph.system.InputNode;
 import org.apache.airavata.workflow.model.graph.util.GraphUtil;
 import org.apache.airavata.workflow.model.graph.ws.WSNode;
@@ -250,9 +252,11 @@ public class WorkflowInterpreterLaunchWi
         		    JOptionPane.ERROR_MESSAGE);
         	return;
         }
-//        if (instanceName.equals("")){
-//        	instanceName=workflow.getName();
-//        }
+
+        //previous instance name
+        if (!instanceNameTextField.getText().equals("")){
+            this.instanceNameTextField.setText("");
+        }
         final String instanceNameFinal=instanceName;
         if (topic.length() == 0) {
             this.engine.getGUI().getErrorWindow().error(ErrorMessages.TOPIC_EMPTY_ERROR);