You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by la...@apache.org on 2012/09/26 20:36:10 UTC
svn commit: r1390649 - in
/airavata/trunk/modules/registry/airavata-registry-service: ./
src/main/java/org/apache/airavata/registry/services/
Author: lahiru
Date: Wed Sep 26 18:36:09 2012
New Revision: 1390649
URL: http://svn.apache.org/viewvc?rev=1390649&view=rev
Log:
applying AIRAVATA-556.3.patch
Added:
airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ConfigurationRegistryService.java
airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/DescriptorRegistryService.java
airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProjectsRegistryService.java
airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProvenanceRegistryService.java
airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/PublishedWorkflowRegistryService.java
airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/UserWorkflowRegistryService.java
Modified:
airavata/trunk/modules/registry/airavata-registry-service/pom.xml
Modified: airavata/trunk/modules/registry/airavata-registry-service/pom.xml
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/pom.xml?rev=1390649&r1=1390648&r2=1390649&view=diff
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/pom.xml (original)
+++ airavata/trunk/modules/registry/airavata-registry-service/pom.xml Wed Sep 26 18:36:09 2012
@@ -64,9 +64,31 @@
<artifactId>airavata-jpa-registry</artifactId>
<version>${project.version}</version>
</dependency>
-
-
+ <dependency>
+ <groupId>com.sun.jersey</groupId>
+ <artifactId>jersey-servlet</artifactId>
+ <version>${jersey.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.jersey</groupId>
+ <artifactId>jersey-json</artifactId>
+ <version>${jersey.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.jersey.contribs</groupId>
+ <artifactId>jersey-multipart</artifactId>
+ <version>${jersey.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.jersey</groupId>
+ <artifactId>jersey-server</artifactId>
+ <version>${jersey.version}</version>
+ </dependency>
</dependencies>
+ <properties>
+ <jersey.version>1.13</jersey.version>
+ </properties>
+
<build>
<plugins>
<plugin>
Added: airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ConfigurationRegistryService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ConfigurationRegistryService.java?rev=1390649&view=auto
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ConfigurationRegistryService.java (added)
+++ airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ConfigurationRegistryService.java Wed Sep 26 18:36:09 2012
@@ -0,0 +1,38 @@
+package org.apache.airavata.registry.services;
+
+
+import javax.ws.rs.core.Response;
+import java.net.URI;
+import java.util.Date;
+
+public interface ConfigurationRegistryService{
+ public Response getConfiguration(String key);
+ public Response getConfigurationList(String key);
+ public Response setConfiguration(String key, String value, Date expire);
+ public Response addConfiguration(String key, String value, Date expire);
+ public Response removeAllConfiguration(String key);
+ public Response removeConfiguration(String key, String value);
+
+ public Response getGFacURIs();
+ public Response getWorkflowInterpreterURIs();
+ public Response getEventingServiceURI();
+ public Response getMessageBoxURI();
+
+ public Response addGFacURI(URI uri);
+ public Response addWorkflowInterpreterURI(URI uri);
+ public Response setEventingURI(URI uri);
+ public Response setMessageBoxURI(URI uri);
+
+ public Response addGFacURI(URI uri, Date expire);
+ public Response addWorkflowInterpreterURI(URI uri, Date expire);
+ public Response setEventingURI(URI uri, Date expire);
+ public Response setMessageBoxURI(URI uri, Date expire);
+
+ public Response removeGFacURI(URI uri);
+ public Response removeAllGFacURI();
+ public Response removeWorkflowInterpreterURI(URI uri);
+ public Response removeAllWorkflowInterpreterURI();
+ public Response unsetEventingURI();
+ public Response unsetMessageBoxURI();
+
+}
Added: airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/DescriptorRegistryService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/DescriptorRegistryService.java?rev=1390649&view=auto
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/DescriptorRegistryService.java (added)
+++ airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/DescriptorRegistryService.java Wed Sep 26 18:36:09 2012
@@ -0,0 +1,47 @@
+package org.apache.airavata.registry.services;
+
+import org.apache.airavata.common.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.exception.gateway.DescriptorAlreadyExistsException;
+import org.apache.airavata.registry.api.exception.gateway.DescriptorDoesNotExistsException;
+import org.apache.airavata.registry.api.exception.gateway.MalformedDescriptorException;
+
+import javax.ws.rs.core.Response;
+
+public interface DescriptorRegistryService{
+ /*Note
+ * Name changes of the descriptors should not be allowed
+ */
+
+ //---------Host Descriptor data------------
+ public Response isHostDescriptorExists(String descriptorName)throws RegistryException;
+ public Response addHostDescriptor(String descriptor) throws DescriptorAlreadyExistsException, RegistryException;
+ public Response updateHostDescriptor(String descriptor)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response getHostDescriptor(String hostName)throws DescriptorDoesNotExistsException,MalformedDescriptorException, RegistryException;
+ public Response removeHostDescriptor(String hostName)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response getHostDescriptors()throws MalformedDescriptorException, RegistryException;
+ public Response getHostDescriptorMetadata(String hostName)throws DescriptorDoesNotExistsException, RegistryException;
+
+ //---------Service Descriptor data------------
+ public Response isServiceDescriptorExists(String descriptorName)throws RegistryException;
+ public Response addServiceDescriptor(String descriptor)throws DescriptorAlreadyExistsException, RegistryException;
+ public Response updateServiceDescriptor(String descriptor)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response getServiceDescriptor(String serviceName)throws DescriptorDoesNotExistsException,MalformedDescriptorException, RegistryException;
+ public Response removeServiceDescriptor(String serviceName)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response getServiceDescriptors()throws MalformedDescriptorException, RegistryException;
+ public Response getServiceDescriptorMetadata(String serviceName)throws DescriptorDoesNotExistsException, RegistryException;
+
+ //---------Application Descriptor data------------
+ public Response isApplicationDescriptorExists(String serviceName, String hostName, String descriptorName)throws RegistryException;
+ public Response addApplicationDescriptor(String serviceDescription, String hostDescriptor, String descriptor)throws DescriptorAlreadyExistsException, RegistryException;
+ public Response addApplicationDesc(String serviceName, String hostName, String descriptor)throws DescriptorAlreadyExistsException, RegistryException;
+ public Response udpateApplicationDescriptor(String serviceDescription, String hostDescriptor, String descriptor)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response updateApplicationDescriptor(String serviceName, String hostName, String descriptor)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response getApplicationDescriptor(String serviceName, String hostname, String applicationName)throws DescriptorDoesNotExistsException, MalformedDescriptorException, RegistryException;
+ public Response getApplicationDescriptors(String serviceName, String hostname)throws MalformedDescriptorException, RegistryException;
+ public Response getApplicationDescriptors(String serviceName)throws MalformedDescriptorException, RegistryException;
+ public Response getApplicationDescriptors()throws MalformedDescriptorException, RegistryException;
+ public Response removeApplicationDescriptor(String serviceName, String hostName, String applicationName)throws DescriptorDoesNotExistsException, RegistryException;
+ public Response getApplicationDescriptorMetadata(String serviceName, String hostName, String applicationName)throws DescriptorDoesNotExistsException, RegistryException;
+
+
+}
Added: airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProjectsRegistryService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProjectsRegistryService.java?rev=1390649&view=auto
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProjectsRegistryService.java (added)
+++ airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProjectsRegistryService.java Wed Sep 26 18:36:09 2012
@@ -0,0 +1,30 @@
+package org.apache.airavata.registry.services;
+
+
+import org.apache.airavata.common.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.AiravataExperiment;
+import org.apache.airavata.registry.api.exception.worker.ExperimentDoesNotExistsException;
+import org.apache.airavata.registry.api.exception.worker.WorkspaceProjectAlreadyExistsException;
+import org.apache.airavata.registry.api.exception.worker.WorkspaceProjectDoesNotExistsException;
+
+import javax.ws.rs.core.Response;
+import java.util.Date;
+
+public interface ProjectsRegistryService {
+ //------------Project management
+ public Response isWorkspaceProjectExists(String projectName) throws RegistryException;
+ public Response isWorkspaceProjectExists(String projectName, String createIfNotExists) throws RegistryException;
+ public Response addWorkspaceProject(String projectName) throws WorkspaceProjectAlreadyExistsException, RegistryException;
+ public Response updateWorkspaceProject(String projectName) throws WorkspaceProjectDoesNotExistsException, RegistryException;
+ public Response deleteWorkspaceProject(String projectName) throws WorkspaceProjectDoesNotExistsException, RegistryException;
+ public Response getWorkspaceProject(String projectName) throws WorkspaceProjectDoesNotExistsException, RegistryException;
+ public Response getWorkspaceProjects() throws RegistryException;
+
+ //------------Experiment management
+ public Response addExperiment(String projectName, AiravataExperiment experiment) throws WorkspaceProjectDoesNotExistsException, ExperimentDoesNotExistsException, RegistryException;
+ public Response removeExperiment(String experimentId) throws ExperimentDoesNotExistsException;
+ public Response getExperiments() throws RegistryException;
+ public Response getExperiments(String projectName)throws RegistryException;
+ public Response getExperiments(Date from, Date to)throws RegistryException;
+ public Response getExperiments(String projectName, Date from, Date to) throws RegistryException;
+}
Added: airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProvenanceRegistryService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProvenanceRegistryService.java?rev=1390649&view=auto
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProvenanceRegistryService.java (added)
+++ airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/ProvenanceRegistryService.java Wed Sep 26 18:36:09 2012
@@ -0,0 +1,251 @@
+package org.apache.airavata.registry.services;
+
+import org.apache.airavata.common.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.workflow.WorkflowInstanceNodeStatus;
+import org.apache.airavata.registry.api.workflow.WorkflowNodeGramData;
+
+import javax.ws.rs.core.Response;
+import java.util.Date;
+
+public interface ProvenanceRegistryService {
+ /*------------------------------------------- Experiment data ---------------------------------------------*/
+
+ /**
+ * Returns true if the experiment exists
+ * @param experimentId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response isExperimentExists(String experimentId) throws RegistryException;
+
+ public Response isExperimentExists(String experimentId, boolean createIfNotPresent) throws RegistryException;
+
+ /**
+ * Save the username of the user who runs this experiment
+ * @param experimentId
+ * @param user
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateExperimentExecutionUser(String experimentId, String user) throws RegistryException;
+
+ /**
+ * Retrieve the user who is runing the experiment
+ * @param experimentId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperimentExecutionUser(String experimentId) throws RegistryException;
+
+ /**
+ * Get the name of the workflow intance
+ * @param experimentId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperimentName(String experimentId) throws RegistryException;
+
+ /**
+ * Save a name for this workflow execution
+ * @param experimentId
+ * @param experimentName
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateExperimentName(String experimentId, String experimentName)throws RegistryException;
+
+ /**
+ * Return the metadata information saved for the experiment
+ * @param experimentId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperimentMetadata(String experimentId) throws RegistryException;
+
+ /**
+ * Save the metadata for the experiment
+ * @param experimentId
+ * @param metadata
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateExperimentMetadata(String experimentId, String metadata) throws RegistryException;
+
+ /**
+ * Return the template name of the workflow that this intance was created from
+ * @param workflowInstanceId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getWorkflowExecutionTemplateName(String workflowInstanceId) throws RegistryException;
+
+ /**
+ * Save the template name of the workflow that this intance was created from
+ * @param workflowInstanceId
+ * @param templateName
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response setWorkflowInstanceTemplateName(String workflowInstanceId, String templateName) throws RegistryException;
+
+ public Response getExperimentWorkflowInstances(String experimentId) throws RegistryException;
+
+ /*-------------------------------------- Experiment Workflow instance node data ----------------------------------------*/
+
+ public Response isWorkflowInstanceExists(String instanceId) throws RegistryException;
+
+ public Response isWorkflowInstanceExists(String instanceId, boolean createIfNotPresent) throws RegistryException;
+
+ /**
+ * Save a status for this workflow execution with the current time at the moment
+ * @param instanceId
+ * @param executionStatus - contains the status
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateWorkflowInstanceStatus(String instanceId, String executionStatus)throws RegistryException;
+
+ /**
+ * Save a status for this workflow execution
+ * @param experimentID
+ * @param workflowInstanceID
+ * @param executionStatus
+ * @param statusUpdateTime
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateWorkflowInstanceStatus(String experimentID,
+ String workflowInstanceID,
+ String executionStatus,
+ Date statusUpdateTime)throws RegistryException;
+
+
+ /**
+ * Return the status of the execution
+ * @param instanceId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getWorkflowInstanceStatus(String instanceId)throws RegistryException;
+
+ /**
+ * Save the input data of a node in the workflow instance of an experiment
+ * @param experimentID
+ * @param nodeID
+ * @param workflowInstanceID
+ * @param data
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateWorkflowNodeInput(String experimentID, String nodeID, String workflowInstanceID, String data) throws RegistryException;
+
+
+ /**
+ * Save the output data of a node in the workflow instance of an experiment
+ * @param experimentID
+ * @param nodeID
+ * @param workflowInstanceID
+ * @param data
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateWorkflowNodeOutput(String experimentID, String nodeID, String workflowInstanceID, String data)throws RegistryException;
+
+ /**
+ * Return a list of data passed as input for service node which regex matched nodeId, workflow template id & experiment id
+ * @param experimentIdRegEx
+ * @param workflowNameRegEx - this is the workflowName or workflow template Id of an experiment
+ * @param nodeNameRegEx - nodeId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response searchWorkflowInstanceNodeInput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx)throws RegistryException;
+
+ /**
+ * Return a list of data returned as output from service node which regex matched nodeId, workflow template id & experiment id
+ * @param experimentIdRegEx
+ * @param workflowNameRegEx - this is the workflowName or workflow template Id of an experiment
+ * @param nodeNameRegEx - nodeId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response searchWorkflowInstanceNodeOutput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx)throws RegistryException;
+
+ public Response getWorkflowInstanceNodeInput(String workflowInstanceId, String nodeType)throws RegistryException;
+
+ public Response getWorkflowInstanceNodeOutput(String workflowInstanceId, String nodeType)throws RegistryException;
+
+
+ /*--------------------------------------- Retrieving Experiment ------------------------------------------*/
+ /**
+ * Return workflow execution object fully populated with data currently avaialble for that experiment
+ * @param experimentId
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperiment(String experimentId) throws RegistryException;
+
+ /**
+ * Return experiment ids of experiments launched by the given user
+ * @param user - a regex user id
+ * @return - experiment id list
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperimentIdByUser(String user) throws RegistryException;
+
+ /**
+ * Return experiments launched by the given user
+ * @param user
+ * @return experiment object list each populated by current data of that experiment
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperimentByUser(String user) throws RegistryException;
+
+ /**
+ * Return the pageNo set of experiments launched by the given user if grouped in to pages of size pageSize
+ * @param user
+ * @param pageSize
+ * @param pageNo
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response getExperimentByUser(String user, int pageSize, int pageNo) throws RegistryException;
+
+ /**
+ * This will update the workflowStatus for given experimentID,workflowInstanceID combination.
+ * @param workflowStatusNode
+ * @return
+ * @throws org.apache.airavata.common.registry.api.exception.RegistryException
+ */
+ public Response updateWorkflowNodeStatus(WorkflowInstanceNodeStatus workflowStatusNode)throws RegistryException;
+
+ public Response updateWorkflowNodeStatus(String workflowInstanceId, String nodeId, String executionStatus)throws RegistryException;
+
+ public Response updateWorkflowNodeStatus(String workflowInstanceId, String executionStatus)throws RegistryException;
+
+ public Response getWorkflowNodeStatus(String workflowInstanceId, String nodeId)throws RegistryException;
+
+ public Response getWorkflowNodeStartTime(String workflowInstanceId, String nodeId)throws RegistryException;
+
+ public Response getWorkflowStartTime(String workflowInstanceId)throws RegistryException;
+
+ /**
+ * This will store the gram specific data in to repository, this can be called before submitting the workflow in to Grid
+ * @param workflowNodeGramData
+ * @return
+ */
+ public Response updateWorkflowNodeGramData(WorkflowNodeGramData workflowNodeGramData)throws RegistryException;
+
+ public Response getWorkflowInstanceData(String workflowInstanceId)throws RegistryException;
+
+ public Response isWorkflowInstanceNodePresent(String workflowInstanceId, String nodeId)throws RegistryException;
+
+ public Response isWorkflowInstanceNodePresent(String workflowInstanceId, String nodeId, boolean createIfNotPresent)throws RegistryException;
+
+ public Response getWorkflowInstanceNodeData(String workflowInstanceId, String nodeId)throws RegistryException;
+
+ public Response addWorkflowInstance(String experimentId, String workflowInstanceId, String templateName) throws RegistryException;
+
+ public Response updateWorkflowNodeType(String workflowInstanceId, String nodeId, String nodeType) throws RegistryException;
+
+ public Response addWorkflowInstanceNode(String workflowInstance, String nodeId) throws RegistryException;
+}
Added: airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/PublishedWorkflowRegistryService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/PublishedWorkflowRegistryService.java?rev=1390649&view=auto
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/PublishedWorkflowRegistryService.java (added)
+++ airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/PublishedWorkflowRegistryService.java Wed Sep 26 18:36:09 2012
@@ -0,0 +1,21 @@
+package org.apache.airavata.registry.services;
+
+import org.apache.airavata.common.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.exception.gateway.PublishedWorkflowAlreadyExistsException;
+import org.apache.airavata.registry.api.exception.gateway.PublishedWorkflowDoesNotExistsException;
+import org.apache.airavata.registry.api.exception.worker.UserWorkflowDoesNotExistsException;
+
+import javax.ws.rs.core.Response;
+
+public interface PublishedWorkflowRegistryService {
+ public Response isPublishedWorkflowExists(String workflowName) throws RegistryException;
+ public Response publishWorkflow(String workflowName, String publishWorkflowName) throws PublishedWorkflowAlreadyExistsException, UserWorkflowDoesNotExistsException, RegistryException;
+ public Response publishWorkflow(String workflowName) throws PublishedWorkflowAlreadyExistsException, UserWorkflowDoesNotExistsException, RegistryException;
+
+ public Response getPublishedWorkflowGraphXML(String workflowName) throws PublishedWorkflowDoesNotExistsException, RegistryException;
+ public Response getPublishedWorkflowNames() throws RegistryException;
+ public Response getPublishedWorkflows() throws RegistryException;
+ public Response getPublishedWorkflowMetadata(String workflowName) throws RegistryException;
+
+ public Response removePublishedWorkflow(String workflowName)throws PublishedWorkflowDoesNotExistsException, RegistryException;
+}
Added: airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/UserWorkflowRegistryService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/UserWorkflowRegistryService.java?rev=1390649&view=auto
==============================================================================
--- airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/UserWorkflowRegistryService.java (added)
+++ airavata/trunk/modules/registry/airavata-registry-service/src/main/java/org/apache/airavata/registry/services/UserWorkflowRegistryService.java Wed Sep 26 18:36:09 2012
@@ -0,0 +1,21 @@
+package org.apache.airavata.registry.services;
+
+
+import org.apache.airavata.common.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.exception.worker.UserWorkflowAlreadyExistsException;
+import org.apache.airavata.registry.api.exception.worker.UserWorkflowDoesNotExistsException;
+
+import javax.ws.rs.core.Response;
+
+public interface UserWorkflowRegistryService {
+ public Response isWorkflowExists(String workflowName) throws RegistryException;
+ public Response addWorkflow(String workflowName, String workflowGraphXml) throws UserWorkflowAlreadyExistsException, RegistryException;
+ public Response updateWorkflow(String workflowName, String workflowGraphXml) throws UserWorkflowDoesNotExistsException, RegistryException;
+
+ public Response getWorkflowGraphXML(String workflowName) throws UserWorkflowDoesNotExistsException, RegistryException;
+ public Response getWorkflows() throws RegistryException;
+
+ public Response getWorkflowMetadata(String workflowName) throws RegistryException;
+
+ public Response removeWorkflow(String workflowName) throws UserWorkflowDoesNotExistsException, RegistryException;
+}