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/11/15 16:28:21 UTC
svn commit: r1409835 - in /airavata/trunk/modules:
airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/
airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/client/
airavata-rest-services/src/main/...
Author: chathuri
Date: Thu Nov 15 15:28:20 2012
New Revision: 1409835
URL: http://svn.apache.org/viewvc?rev=1409835&view=rev
Log:
updating provenance related client methods
Modified:
airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/Test.java
airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/client/ProvenanceResourceClient.java
airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/resources/ProvenanceRegistryResource.java
airavata/trunk/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/AiravataJPARegistry.java
Modified: airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/Test.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/Test.java?rev=1409835&r1=1409834&r2=1409835&view=diff
==============================================================================
--- airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/Test.java (original)
+++ airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/Test.java Thu Nov 15 15:28:20 2012
@@ -22,21 +22,37 @@
package org.apache.airavata.services.registry.rest;
+import org.apache.airavata.commons.gfac.type.ApplicationDeploymentDescription;
import org.apache.airavata.commons.gfac.type.HostDescription;
-import org.apache.airavata.schemas.gfac.GlobusHostType;
-import org.apache.airavata.services.registry.rest.client.ConfigurationResourceClient;
-import org.apache.airavata.services.registry.rest.client.DescriptorResourceClient;
-import org.apache.airavata.services.registry.rest.resourcemappings.HostDescriptor;
-
-import java.net.URI;
-import java.util.List;
+import org.apache.airavata.commons.gfac.type.ServiceDescription;
+import org.apache.airavata.registry.api.AiravataExperiment;
+import org.apache.airavata.registry.api.WorkspaceProject;
+import org.apache.airavata.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.workflow.*;
+import org.apache.airavata.schemas.gfac.*;
+import org.apache.airavata.services.registry.rest.client.*;
+
+import java.sql.*;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.Date;
public class Test {
public static void main(String[] args) {
- configurationResourceClientTest();
-// descriptorClientTest();
+// configurationResourceClientTest();
+// hostDescriptorClientTest();
+// serviceDescriptorClientTest();
+// appDescriptorClientTest();
+// projectRegistryClientTest();
+// experimentRegistryClient();
+// userWFClientTest();
+// publishWFClientTest();
+ provenanceClientTest();
}
+
public static void configurationResourceClientTest(){
//configuration resource test
ConfigurationResourceClient configurationResourceClient = new ConfigurationResourceClient();
@@ -47,10 +63,10 @@ public class Test {
//
// System.out.println("###############getConfigurationList###############");
// configurationResourceClient.addWFInterpreterURI("http://192.168.17.1:8080/axis2/services/WorkflowInterpretor2");
- List<Object> configurationList = configurationResourceClient.getConfigurationList("testKey1");
- for(Object object : configurationList){
- System.out.println(object.toString());
- }
+// List<Object> configurationList = configurationResourceClient.getConfigurationList("testKey1");
+// for(Object object : configurationList){
+// System.out.println(object.toString());
+// }
//
// System.out.println("###############setConfiguration###############");
// configurationResourceClient.setConfiguration("testKey1", "testVal1", "2012-11-12 00:12:31");
@@ -123,7 +139,7 @@ public class Test {
// configurationResourceClient.unsetMessageBoxURI();
}
- public static void descriptorClientTest(){
+ public static void hostDescriptorClientTest(){
DescriptorResourceClient descriptorResourceClient = new DescriptorResourceClient();
// boolean localHost = descriptorResourceClient.isHostDescriptorExists("LocalHost");
@@ -135,11 +151,392 @@ public class Test {
// descriptorResourceClient.addHostDescriptor(descriptor);
// HostDescription localHost = descriptorResourceClient.getHostDescriptor("purdue.teragrid.org");
- List<HostDescription> hostDescriptors = descriptorResourceClient.getHostDescriptors();
+// List<HostDescription> hostDescriptors = descriptorResourceClient.getHostDescriptors();
+// for(HostDescription hostDescription : hostDescriptors){
+// System.out.println(hostDescription.getType().getHostName());
+// System.out.println(hostDescription.getType().getHostAddress());
+// }
+//
+// List<String> hostDescriptorNames = descriptorResourceClient.getHostDescriptorNames();
+// for (String hostName : hostDescriptorNames){
+// System.out.println(hostName);
+// }
+
+ descriptorResourceClient.removeHostDescriptor("testHost");
+
// System.out.println(localHost.getType().getHostName());
// System.out.println(localHost.getType().getHostAddress());
}
+ public static void serviceDescriptorClientTest (){
+ DescriptorResourceClient descriptorResourceClient = new DescriptorResourceClient();
+ //service descriptor exists
+// boolean exists = descriptorResourceClient.isServiceDescriptorExists("echo");
+// System.out.println(exists);
+
+ //service descriptor save
+// ServiceDescription serviceDescription = new ServiceDescription();
+// List<InputParameterType> inputParameters = new ArrayList<InputParameterType>();
+// List<OutputParameterType> outputParameters = new ArrayList<OutputParameterType>();
+// serviceDescription.getType().setName("testServiceDesc");
+// serviceDescription.getType().setDescription("testDescription");
+// InputParameterType parameter = InputParameterType.Factory.newInstance();
+// parameter.setParameterName("input1");
+// parameter.setParameterDescription("testDesc");
+// ParameterType parameterType = parameter.addNewParameterType();
+// parameterType.setType(DataType.STRING);
+// parameterType.setName("testParamtype");
+// inputParameters.add(parameter);
+//
+// OutputParameterType outputParameter = OutputParameterType.Factory.newInstance();
+// outputParameter.setParameterName("output1");
+// outputParameter.setParameterDescription("testDesc");
+// ParameterType outputParaType = outputParameter.addNewParameterType();
+// outputParaType.setType(DataType.STRING);
+// outputParaType.setName("testParamtype");
+// outputParameters.add(outputParameter);
+//
+// serviceDescription.getType().setInputParametersArray(inputParameters.toArray(new InputParameterType[]{}));
+// serviceDescription.getType().setOutputParametersArray(outputParameters.toArray(new OutputParameterType[]{}));
+//
+// descriptorResourceClient.saveServiceDescriptor(serviceDescription);
+
+ // Service descriptor update
+// ServiceDescription testServiceDesc = descriptorResourceClient.getServiceDescriptor("testServiceDesc");
+// testServiceDesc.getType().setDescription("testDescription2");
+// List<InputParameterType> inputParameters = new ArrayList<InputParameterType>();
+// List<OutputParameterType> outputParameters = new ArrayList<OutputParameterType>();
+// InputParameterType parameter = InputParameterType.Factory.newInstance();
+// parameter.setParameterName("input2");
+// parameter.setParameterDescription("testDesc2");
+// ParameterType parameterType = parameter.addNewParameterType();
+// parameterType.setType(DataType.STRING);
+// parameterType.setName("testParamtype2");
+// inputParameters.add(parameter);
+//
+// OutputParameterType outputParameter = OutputParameterType.Factory.newInstance();
+// outputParameter.setParameterName("output2");
+// outputParameter.setParameterDescription("testDesc2");
+// ParameterType outputParaType = outputParameter.addNewParameterType();
+// outputParaType.setType(DataType.STRING);
+// outputParaType.setName("testParamtype2");
+// outputParameters.add(outputParameter);
+//
+// testServiceDesc.getType().setInputParametersArray(inputParameters.toArray(new InputParameterType[]{}));
+// testServiceDesc.getType().setOutputParametersArray(outputParameters.toArray(new OutputParameterType[]{}));
+//
+// descriptorResourceClient.updateServiceDescriptor(testServiceDesc);
+
+ //getServiceDescriptor
+// ServiceDescription testServiceDesc = descriptorResourceClient.getServiceDescriptor("testServiceDesc");
+// System.out.println(testServiceDesc.getType().getName());
+// System.out.println(testServiceDesc.getType().getDescription());
+
+ //removeServiceDescriptor
+// descriptorResourceClient.removeServiceDescriptor("testServiceDesc");
+
+ //getServiceDescriptors
+// List<ServiceDescription> serviceDescriptors = descriptorResourceClient.getServiceDescriptors();
+// for (ServiceDescription serviceDescription : serviceDescriptors){
+// System.out.println(serviceDescription.getType().getName());
+// System.out.println(serviceDescription.getType().getDescription());
+// }
+ }
+
+ public static void appDescriptorClientTest (){
+// DescriptorResourceClient descriptorResourceClient = new DescriptorResourceClient();
+
+ //isApplicationDescriptorExist
+// boolean descriptorExist = descriptorResourceClient.isApplicationDescriptorExist("echo", "LocalHost", "LocalHost_application");
+// System.out.println(descriptorExist);
+
+ // addApplicationDescriptor
+// ServiceDescription serviceDescription = new ServiceDescription();
+// List<InputParameterType> inputParameters = new ArrayList<InputParameterType>();
+// List<OutputParameterType> outputParameters = new ArrayList<OutputParameterType>();
+// serviceDescription.getType().setName("testServiceDesc");
+// serviceDescription.getType().setDescription("testDescription");
+// InputParameterType parameter = InputParameterType.Factory.newInstance();
+// parameter.setParameterName("input1");
+// parameter.setParameterDescription("testDesc");
+// ParameterType parameterType = parameter.addNewParameterType();
+// parameterType.setType(DataType.STRING);
+// parameterType.setName("testParamtype");
+// inputParameters.add(parameter);
+//
+// OutputParameterType outputParameter = OutputParameterType.Factory.newInstance();
+// outputParameter.setParameterName("output1");
+// outputParameter.setParameterDescription("testDesc");
+// ParameterType outputParaType = outputParameter.addNewParameterType();
+// outputParaType.setType(DataType.STRING);
+// outputParaType.setName("testParamtype");
+// outputParameters.add(outputParameter);
+//
+// serviceDescription.getType().setInputParametersArray(inputParameters.toArray(new InputParameterType[]{}));
+// serviceDescription.getType().setOutputParametersArray(outputParameters.toArray(new OutputParameterType[]{}));
+//
+// HostDescription hostDescription = new HostDescription(GlobusHostType.type);
+// hostDescription.getType().setHostName("testHost");
+// hostDescription.getType().setHostAddress("testHostAddress");
+// descriptorResourceClient.addHostDescriptor(hostDescription);
+//
+// ApplicationDeploymentDescription applicationDeploymentDescription = new ApplicationDeploymentDescription(ApplicationDeploymentDescriptionType.type);
+// ApplicationDeploymentDescriptionType.ApplicationName applicationName = applicationDeploymentDescription.getType().addNewApplicationName();
+// applicationName.setStringValue("testApplication");
+// applicationDeploymentDescription.getType().setApplicationName(applicationName);
+// applicationDeploymentDescription.getType().setInputDataDirectory("/bin");
+// applicationDeploymentDescription.getType().setExecutableLocation("/bin/echo");
+// applicationDeploymentDescription.getType().setOutputDataDirectory("/tmp");
+//
+// descriptorResourceClient.addApplicationDescriptor(serviceDescription, hostDescription, applicationDeploymentDescription);
+
+ //addApplicationDescriptor(String serviceName, String hostName, ApplicationDeploymentDescription descriptor)
+// ApplicationDeploymentDescription applicationDeploymentDescription = new ApplicationDeploymentDescription(ApplicationDeploymentDescriptionType.type);
+// ApplicationDeploymentDescriptionType.ApplicationName applicationName = applicationDeploymentDescription.getType().addNewApplicationName();
+// applicationName.setStringValue("testApplication2");
+// applicationDeploymentDescription.getType().setApplicationName(applicationName);
+// applicationDeploymentDescription.getType().setInputDataDirectory("/bin");
+// applicationDeploymentDescription.getType().setExecutableLocation("/bin/echo");
+// applicationDeploymentDescription.getType().setOutputDataDirectory("/tmp");
+// descriptorResourceClient.addApplicationDescriptor("testServiceDesc", "testHost", applicationDeploymentDescription);
+
+ //udpateApplicationDescriptor
+// ApplicationDeploymentDescription applicationDescriptor = descriptorResourceClient.getApplicationDescriptor("testServiceDesc", "testHost", "testApplication2");
+// applicationDescriptor.getType().setInputDataDirectory("/bin1");
+// applicationDescriptor.getType().setExecutableLocation("/bin/echo1");
+// applicationDescriptor.getType().setOutputDataDirectory("/tmp1");
+// descriptorResourceClient.updateApplicationDescriptor("testServiceDesc", "testHost", applicationDescriptor);
+
+ //getApplicationDescriptors(String serviceName, String hostname)
+// ApplicationDeploymentDescription applicationDescriptors = descriptorResourceClient.getApplicationDescriptors("testServiceDesc", "testHost");
+// System.out.println(applicationDescriptors.getType().getApplicationName().getStringValue());
+// System.out.println(applicationDescriptors.getType().getExecutableLocation());
+// System.out.println(applicationDescriptors.getType().getOutputDataDirectory());
+
+ //getApplicationDescriptors(String serviceName)
+// Map<String,ApplicationDeploymentDescription> testServiceDesc = descriptorResourceClient.getApplicationDescriptors("testServiceDesc");
+// for (String host : testServiceDesc.keySet()){
+// System.out.println(host);
+// ApplicationDeploymentDescription applicationDeploymentDescription = testServiceDesc.get(host);
+// System.out.println(applicationDeploymentDescription.getType().getApplicationName().getStringValue());
+// }
+ //getApplicationDescriptors()
+// Map<String[], ApplicationDeploymentDescription> applicationDescriptors = descriptorResourceClient.getApplicationDescriptors();
+// for (String[] desc : applicationDescriptors.keySet()){
+// System.out.println(desc[0]);
+// System.out.println(desc[1]);
+// ApplicationDeploymentDescription applicationDeploymentDescription = applicationDescriptors.get(desc);
+// System.out.println(applicationDeploymentDescription.getType().getApplicationName().getStringValue());
+// }
+
+ //getApplicationDescriptorNames ()
+// List<String> applicationDescriptorNames = descriptorResourceClient.getApplicationDescriptorNames();
+// for (String appName : applicationDescriptorNames){
+// System.out.println(appName);
+// }
+ }
+
+ public static void projectRegistryClientTest(){
+ ProjectResourceClient projectResourceClient = new ProjectResourceClient();
+ //isWorkspaceProjectExists
+// boolean projectExists = projectResourceClient.isWorkspaceProjectExists("default");
+// System.out.println(projectExists);
+ //isWorkspaceProjectExists(String projectName, boolean createIfNotExists)
+// projectResourceClient.isWorkspaceProjectExists("testproject", true);
+ // addWorkspaceProject
+// projectResourceClient.addWorkspaceProject("testproject2");
+
+ //updateWorkspaceProject(String projectName)
+// projectResourceClient.updateWorkspaceProject("testproject");
+
+ // deleteWorkspaceProject
+// projectResourceClient.deleteWorkspaceProject("testproject");
+
+ //getWorkspaceProject
+// WorkspaceProject project = projectResourceClient.getWorkspaceProject("default");
+// System.out.println(project.getGateway().getGatewayName());
+
+ //getWorkspaceProjects
+// List<WorkspaceProject> workspaceProjects = projectResourceClient.getWorkspaceProjects();
+// for (WorkspaceProject workspaceProject : workspaceProjects){
+// System.out.println(workspaceProject.getProjectName());
+// }
+
+ }
+
+ public static void experimentRegistryClient(){
+ ExperimentResourceClient experimentResourceClient = new ExperimentResourceClient();
+ //add experiment
+// try {
+// AiravataExperiment experiment = new AiravataExperiment();
+// experiment.setExperimentId("testExperiment2");
+// DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// Date formattedDate = dateFormat.parse("2012-11-13 11:50:32");
+// experiment.setSubmittedDate(formattedDate);
+// experimentResourceClient.addExperiment("default", experiment);
+// } catch (ParseException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+
+ //remove experiment
+// experimentResourceClient.removeExperiment("testExperiment");
+
+// List<AiravataExperiment> experiments = experimentResourceClient.getExperiments();
+// System.out.println(experiments.size());
+ //getExperiments(Date from, Date to)
+// try{
+// DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// Date date1 = dateFormat.parse("2012-11-01 11:50:32");
+// Date date2 = dateFormat.parse("2012-11-15 11:50:32");
+// List<AiravataExperiment> experiments = experimentResourceClient.getExperiments(date1, date2);
+// System.out.println(experiments.size());
+// } catch (ParseException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+
+ //getExperiments(String projectName, Date from, Date to)
+// try{
+// DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// Date date1 = dateFormat.parse("2012-11-01 11:50:32");
+// Date date2 = dateFormat.parse("2012-11-15 11:50:32");
+// List<AiravataExperiment> experiments = experimentResourceClient.getExperiments("default",date1, date2);
+// System.out.println(experiments.size());
+// } catch (ParseException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+
+ //isExperimentExists(String experimentId)
+// boolean exists = experimentResourceClient.isExperimentExists("testExperiment");
+// System.out.println(exists);
+
+
+ //isExperimentExists(String experimentId, boolean createIfNotPresent)
+// experimentResourceClient.isExperimentExists("testExp", true);
+
+
+ }
+
+ public static void userWFClientTest (){
+ UserWorkflowResourceClient userWorkflowResourceClient = new UserWorkflowResourceClient();
+// boolean exists = userWorkflowResourceClient.isWorkflowExists("Workflow1");
+// System.out.println(exists);
+// userWorkflowResourceClient.addWorkflow("workflow5", "testworlflowcontent");
+// userWorkflowResourceClient.updateWorkflow("worklfow5", "updatedtestworlflowcontent");
+// String workflow2 = userWorkflowResourceClient.getWorkflowGraphXML("workflow2");
+// System.out.println(workflow2);
+// Map<String, String> workflows = userWorkflowResourceClient.getWorkflows();
+// System.out.println(workflows.size());
+// userWorkflowResourceClient.removeWorkflow("workflow5");
+ }
+
+ public static void publishWFClientTest () {
+ PublishedWorkflowResourceClient publishedWorkflowResourceClient = new PublishedWorkflowResourceClient();
+// boolean exists = publishedWorkflowResourceClient.isPublishedWorkflowExists("Workflow2");
+// System.out.println(exists);
+
+// publishedWorkflowResourceClient.publishWorkflow("workflow3", "publishedWF3");
+// publishedWorkflowResourceClient.publishWorkflow("workflow4");
+// String workflow1 = publishedWorkflowResourceClient.getPublishedWorkflowGraphXML("Workflow2");
+// System.out.println(workflow1);
+// List<String> publishedWorkflowNames = publishedWorkflowResourceClient.getPublishedWorkflowNames();
+// System.out.println(publishedWorkflowNames.size());
+
+// publishedWorkflowResourceClient.removePublishedWorkflow("workflow4");
+
+ }
+
+ public static void provenanceClientTest() {
+// ProvenanceResourceClient provenanceResourceClient = new ProvenanceResourceClient();
+// provenanceResourceClient.updateExperimentExecutionUser("eb9e67cf-6fe3-46f1-b50b-7b42936d347d", "aaa");
+// String experimentExecutionUser = provenanceResourceClient.getExperimentExecutionUser("eb9e67cf-6fe3-46f1-b50b-7b42936d347d");
+// System.out.println(experimentExecutionUser);
+// boolean nameExist = provenanceResourceClient.isExperimentNameExist("exp1");
+// System.out.println(nameExist);
+// String experimentName = provenanceResourceClient.getExperimentName("eb9e67cf-6fe3-46f1-b50b-7b42936d347d");
+// System.out.println(experimentName);
+// String workflowExecutionTemplateName = provenanceResourceClient.getWorkflowExecutionTemplateName("e00ddc5e-f8d5-4492-9eb2-10372efb103c");
+// System.out.println(workflowExecutionTemplateName);
+// provenanceResourceClient.setWorkflowInstanceTemplateName("eb9e67cf-6fe3-46f1-b50b-7b42936d347d", "wftemplate2");
+// List<WorkflowInstance> experimentWorkflowInstances = provenanceResourceClient.getExperimentWorkflowInstances("e00ddc5e-f8d5-4492-9eb2-10372efb103c");
+// System.out.println(experimentWorkflowInstances.size());
+// System.out.println(provenanceResourceClient.isWorkflowInstanceExists("e00ddc5e-f8d5-4492-9eb2-10372efb103c"));
+// provenanceResourceClient.isWorkflowInstanceExists("testInstance", true);
+
+// try {
+// DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// Date date = dateFormat.parse("2012-11-01 11:50:32");
+// WorkflowInstanceStatus workflowInstanceStatus = new WorkflowInstanceStatus(new WorkflowInstance("testInstance", "testInstance"), WorkflowInstanceStatus.ExecutionStatus.FINISHED, date);
+// provenanceResourceClient.updateWorkflowInstanceStatus(workflowInstanceStatus);
+// } catch (ParseException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+
+// System.out.println(provenanceResourceClient.getWorkflowInstanceStatus("testInstance").getExecutionStatus().name());
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// provenanceResourceClient.updateWorkflowNodeInput(workflowInstanceNode, "testInput2");
+
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// provenanceResourceClient.updateWorkflowNodeOutput(workflowInstanceNode, "testOutput");
+
+// ExperimentData experiment = provenanceResourceClient.getExperiment("ff7338c9-f9ad-4d86-b486-1e8e9c3a9cc4");
+// String experimentName = experiment.getExperimentName();
+// System.out.println(experimentName);
+
+// ExperimentData experiment = provenanceResourceClient.getExperimentMetaInformation("ff7338c9-f9ad-4d86-b486-1e8e9c3a9cc4");
+// String experimentName = experiment.getExperimentName();
+// System.out.println(experimentName);
+
+// List<ExperimentData> admin = provenanceResourceClient.getAllExperimentMetaInformation("admin");
+// System.out.println(admin.size());
+
+// List<ExperimentData> experimentDataList = provenanceResourceClient.searchExperiments("admin", "exp");
+// System.out.println(experimentDataList.size());
+
+// List<String> admin = provenanceResourceClient.getExperimentIdByUser("admin");
+// for (String exp : admin){
+// System.out.println(exp);
+// }
+// List<ExperimentData> experimentByUser = provenanceResourceClient.getExperimentByUser("admin");
+// System.out.println(experimentByUser.size());
+
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// WorkflowInstanceNodeStatus workflowInstanceNodeStatus = new WorkflowInstanceNodeStatus(workflowInstanceNode, WorkflowInstanceStatus.ExecutionStatus.STARTED);
+// provenanceResourceClient.updateWorkflowNodeStatus(workflowInstanceNodeStatus);
+
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// provenanceResourceClient.updateWorkflowNodeStatus(workflowInstanceNode, WorkflowInstanceStatus.ExecutionStatus.FINISHED);
+
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// WorkflowInstanceNodeStatus workflowNodeStatus = provenanceResourceClient.getWorkflowNodeStatus(workflowInstanceNode);
+// System.out.println(workflowNodeStatus.getExecutionStatus().name());
+
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// Date workflowNodeStartTime = provenanceResourceClient.getWorkflowNodeStartTime(workflowInstanceNode);
+// System.out.println(workflowNodeStartTime.toString());
+
+// WorkflowInstance tempConvertSoap_fahrenheitToCelsius = provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance();
+// Date workflowStartTime = provenanceResourceClient.getWorkflowStartTime(tempConvertSoap_fahrenheitToCelsius);
+// System.out.println(workflowStartTime.toString());
+
+// WorkflowNodeGramData workflowNodeGramData = new WorkflowNodeGramData("TempConvertSoap_FahrenheitToCelsius", "TempConvertSoap_FahrenheitToCelsius", "rsl", "invokedHost", "jobID");
+// provenanceResourceClient.updateWorkflowNodeGramData(workflowNodeGramData);
+
+// WorkflowInstanceData instanceData = provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius");
+// System.out.println(instanceData.getWorkflowInstance().getExperimentId());
+
+// System.out.println(provenanceResourceClient.isWorkflowInstanceNodePresent("TempConvertSoap_FahrenheitToCelsius", "TempConvertSoap_FahrenheitToCelsius"));
+
+// provenanceResourceClient.isWorkflowInstanceNodePresent("TempConvertSoap_FahrenheitToCelsius", "TempConvertSoap_FahrenheitToCelsius1", true);
+
+// provenanceResourceClient.addWorkflowInstance("testInstance", "testWF", "testWotrfklow");
+// WorkflowInstanceNode workflowInstanceNode = new WorkflowInstanceNode(provenanceResourceClient.getWorkflowInstanceData("TempConvertSoap_FahrenheitToCelsius").getWorkflowInstance(), "TempConvertSoap_FahrenheitToCelsius");
+// WorkflowNodeType workflowNodeType = new WorkflowNodeType();
+// workflowNodeType.setNodeType(WorkflowNodeType.WorkflowNode.SERVICENODE);
+// provenanceResourceClient.updateWorkflowNodeType(workflowInstanceNode, workflowNodeType);
+
+// provenanceResourceClient.addWorkflowInstanceNode("TempConvertSoap_FahrenheitToCelsius", "testNode");
+ }
+
}
Modified: airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/client/ProvenanceResourceClient.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/client/ProvenanceResourceClient.java?rev=1409835&r1=1409834&r2=1409835&view=diff
==============================================================================
--- airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/client/ProvenanceResourceClient.java (original)
+++ airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/client/ProvenanceResourceClient.java Thu Nov 15 15:28:20 2012
@@ -245,10 +245,10 @@ public class ProvenanceResourceClient {
}
public boolean isWorkflowInstanceExists(String instanceId, boolean createIfNotPresent){
- webResource = getProvenanceRegistryBaseResource().path(ResourcePathConstants.ProvenanceResourcePathConstants.WORKFLOWINSTANCE_NODE_EXIST_CREATE);
+ webResource = getProvenanceRegistryBaseResource().path(ResourcePathConstants.ProvenanceResourcePathConstants.WORKFLOWINSTANCE_EXIST_CREATE);
MultivaluedMap formParams = new MultivaluedMapImpl();
formParams.add("instanceId", instanceId);
- formParams.add("createIfNotPresent", createIfNotPresent);
+ formParams.add("createIfNotPresent", String.valueOf(createIfNotPresent));
ClientResponse response = webResource.accept(MediaType.TEXT_PLAIN).post(ClientResponse.class, formParams);
int status = response.getStatus();
@@ -276,11 +276,13 @@ public class ProvenanceResourceClient {
}
public void updateWorkflowInstanceStatus(WorkflowInstanceStatus workflowInstanceStatus){
+ DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ String statusUpdateDate = dateFormat.format(workflowInstanceStatus.getStatusUpdateTime());
webResource = getProvenanceRegistryBaseResource().path(ResourcePathConstants.ProvenanceResourcePathConstants.UPDATE_WORKFLOWINSTANCESTATUS);
MultivaluedMap formParams = new MultivaluedMapImpl();
formParams.add("workflowInstanceId", workflowInstanceStatus.getWorkflowInstance().getWorkflowInstanceId());
formParams.add("executionStatus", workflowInstanceStatus.getExecutionStatus().name());
- formParams.add("statusUpdateTime", workflowInstanceStatus.getStatusUpdateTime().toString());
+ formParams.add("statusUpdateTime", statusUpdateDate);
ClientResponse response = webResource.accept(MediaType.TEXT_PLAIN).post(ClientResponse.class, formParams);
int status = response.getStatus();
@@ -565,7 +567,7 @@ public class ProvenanceResourceClient {
public void updateWorkflowNodeGramData(WorkflowNodeGramData workflowNodeGramData){
webResource = getProvenanceRegistryBaseResource().path(ResourcePathConstants.ProvenanceResourcePathConstants.UPDATE_WORKFLOWNODE_GRAMDATA);
- ClientResponse response = webResource.type(MediaType.APPLICATION_JSON).accept(MediaType.TEXT_PLAIN).post(ClientResponse.class, workflowNodeGramData);
+ ClientResponse response = webResource.accept(MediaType.TEXT_PLAIN).type(MediaType.APPLICATION_JSON).post(ClientResponse.class, workflowNodeGramData);
int status = response.getStatus();
if (status != 200) {
logger.error(response.getEntity(String.class));
@@ -607,11 +609,11 @@ public class ProvenanceResourceClient {
public boolean isWorkflowInstanceNodePresent(String workflowInstanceId, String nodeId, boolean createIfNotPresent){
webResource = getProvenanceRegistryBaseResource().path(ResourcePathConstants.ProvenanceResourcePathConstants.WORKFLOWINSTANCE_NODE_EXIST_CREATE);
- MultivaluedMap queryParams = new MultivaluedMapImpl();
- queryParams.add("workflowInstanceId", workflowInstanceId);
- queryParams.add("nodeId", nodeId);
- queryParams.add("createIfNotPresent", createIfNotPresent);
- ClientResponse response = webResource.queryParams(queryParams).accept(MediaType.TEXT_PLAIN).get(ClientResponse.class);
+ MultivaluedMap formParams = new MultivaluedMapImpl();
+ formParams.add("workflowInstanceId", workflowInstanceId);
+ formParams.add("nodeId", nodeId);
+ formParams.add("createIfNotPresent", String.valueOf(createIfNotPresent));
+ ClientResponse response = webResource.accept(MediaType.TEXT_PLAIN).post(ClientResponse.class, formParams);
int status = response.getStatus();
if (status != 200) {
logger.error(response.getEntity(String.class));
Modified: airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/resources/ProvenanceRegistryResource.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/resources/ProvenanceRegistryResource.java?rev=1409835&r1=1409834&r2=1409835&view=diff
==============================================================================
--- airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/resources/ProvenanceRegistryResource.java (original)
+++ airavata/trunk/modules/airavata-rest-services/src/main/java/org/apache/airavata/services/registry/rest/resources/ProvenanceRegistryResource.java Thu Nov 15 15:28:20 2012
@@ -337,14 +337,14 @@ public class ProvenanceRegistryResource
* @param createIfNotPresent flag whether to create a new workflow instance or not
* @return HTTP response
*/
- @GET
- @Path(ResourcePathConstants.ProvenanceResourcePathConstants.WORKFLOWINSTANCE_NODE_EXIST_CREATE)
+ @POST
+ @Path(ResourcePathConstants.ProvenanceResourcePathConstants.WORKFLOWINSTANCE_EXIST_CREATE)
@Produces(MediaType.TEXT_PLAIN)
- public Response isWorkflowInstanceExistsThenCreate(@QueryParam("instanceId") String instanceId,
- @QueryParam("createIfNotPresent") boolean createIfNotPresent) {
+ public Response isWorkflowInstanceExistsThenCreate(@FormParam("instanceId") String instanceId,
+ @FormParam("createIfNotPresent") String createIfNotPresent) {
airavataRegistry = (AiravataRegistry2) context.getAttribute(RestServicesConstants.AIRAVATA_REGISTRY);
try {
- Boolean result = airavataRegistry.isWorkflowInstanceExists(instanceId, createIfNotPresent);
+ Boolean result = airavataRegistry.isWorkflowInstanceExists(instanceId, Boolean.valueOf(createIfNotPresent));
if (result) {
Response.ResponseBuilder builder = Response.status(Response.Status.OK);
builder.entity("New workflow instance has been created...");
@@ -691,7 +691,7 @@ public class ProvenanceRegistryResource
*/
@GET
@Path(ResourcePathConstants.ProvenanceResourcePathConstants.GET_EXPERIMENT_ID_USER)
- @Produces(MediaType.APPLICATION_XML)
+ @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
public Response getExperimentIdByUser(@QueryParam("username") String username) {
airavataRegistry = (AiravataRegistry2) context.getAttribute(RestServicesConstants.AIRAVATA_REGISTRY);
try{
@@ -875,7 +875,7 @@ public class ProvenanceRegistryResource
* @param workflowNodeGramData workflow node gram data object as a JSON input
* @return HTTP response
*/
- @GET
+ @POST
@Path(ResourcePathConstants.ProvenanceResourcePathConstants.UPDATE_WORKFLOWNODE_GRAMDATA)
@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
@Produces(MediaType.TEXT_PLAIN)
@@ -966,10 +966,10 @@ public class ProvenanceRegistryResource
@Produces(MediaType.TEXT_PLAIN)
public Response isWorkflowInstanceNodePresentCreate(@FormParam("workflowInstanceId") String workflowInstanceId,
@FormParam("nodeId") String nodeId,
- @FormParam("createIfNotPresent") boolean createIfNotPresent){
+ @FormParam("createIfNotPresent") String createIfNotPresent){
airavataRegistry = (AiravataRegistry2) context.getAttribute(RestServicesConstants.AIRAVATA_REGISTRY);
try{
- boolean workflowInstanceNodePresent = airavataRegistry.isWorkflowInstanceNodePresent(workflowInstanceId, nodeId, createIfNotPresent);
+ boolean workflowInstanceNodePresent = airavataRegistry.isWorkflowInstanceNodePresent(workflowInstanceId, nodeId, Boolean.getBoolean(createIfNotPresent));
if (workflowInstanceNodePresent){
Response.ResponseBuilder builder = Response.status(Response.Status.OK);
builder.entity("Workflow instance node exists...");
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=1409835&r1=1409834&r2=1409835&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 Nov 15 15:28:20 2012
@@ -1021,7 +1021,10 @@ public class AiravataJPARegistry extends
}
WorkflowDataResource wi = jpa.getWorker().getWorkflowInstance(status.getWorkflowInstance().getWorkflowInstanceId());
Timestamp currentTime = new Timestamp(status.getStatusUpdateTime().getTime());
- wi.setStatus(status.getExecutionStatus().toString());
+ if(status.getExecutionStatus() != null){
+ wi.setStatus(status.getExecutionStatus().toString());
+ }
+
if (status.getExecutionStatus()==ExecutionStatus.STARTED){
wi.setStartTime(currentTime);
}