You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2015/05/01 02:55:57 UTC
[01/19] airavata git commit: Adding more support to the registry for
paginated result retrieval of project and experiment data. Renamed all
*searchWithPagination methods to search* with method overloading
Repository: airavata
Updated Branches:
refs/heads/master 20bf020d5 -> 5cc8b43d0
Adding more support to the registry for paginated result retrieval of project and experiment data. Renamed all *searchWithPagination methods to search* with method overloading
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/9f6e30e4
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/9f6e30e4
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/9f6e30e4
Branch: refs/heads/master
Commit: 9f6e30e41d2f4366d4e8cd6f253cc88661a513d2
Parents: cc40cf3
Author: Supun Nakandala <su...@gmail.com>
Authored: Mon Apr 27 20:36:08 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Mon Apr 27 20:36:08 2015 +0530
----------------------------------------------------------------------
.../registry/jpa/impl/ExperimentRegistry.java | 152 ++++++++----
.../registry/jpa/impl/LoggingRegistryImpl.java | 7 +-
.../registry/jpa/impl/ProjectRegistry.java | 33 ++-
.../registry/jpa/impl/RegistryImpl.java | 57 ++++-
.../registry/jpa/resources/ProjectResource.java | 119 +++++++++-
.../registry/jpa/resources/WorkerResource.java | 234 ++++++++++++++++---
.../registry/jpa/utils/QueryGenerator.java | 73 ++++--
.../registry/jpa/RegistryUseCaseTest.java | 15 +-
8 files changed, 569 insertions(+), 121 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
index 7d47762..a0e9ecf 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
@@ -1823,6 +1823,13 @@ public class ExperimentRegistry {
}
}
+ /**
+ * Method to get matching experiment list
+ * @param fieldName
+ * @param value
+ * @return
+ * @throws RegistryException
+ */
public List<Experiment> getExperimentList(String fieldName, Object value) throws RegistryException {
List<Experiment> experiments = new ArrayList<Experiment>();
try {
@@ -1830,7 +1837,6 @@ public class ExperimentRegistry {
WorkerResource resource = (WorkerResource) gatewayResource.create(ResourceType.GATEWAY_WORKER);
resource.setUser((String) value);
List<ExperimentResource> resources = resource.getExperiments();
-// List<ExperimentResource> resources = resource.getExperimentsByCaching((String)value);
for (ExperimentResource experimentResource : resources) {
Experiment experiment = ThriftDataModelConversion.getExperiment(experimentResource);
experiments.add(experiment);
@@ -1876,6 +1882,50 @@ public class ExperimentRegistry {
return experiments;
}
+ /**
+ * Method to get matching experiment list with pagination and ordering
+ * @param fieldName
+ * @param value
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<Experiment> getExperimentList(String fieldName, Object value, int limit, int offset,
+ Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ List<Experiment> experiments = new ArrayList<Experiment>();
+ try {
+ if (fieldName.equals(Constants.FieldConstants.ExperimentConstants.USER_NAME)) {
+ WorkerResource resource = (WorkerResource) gatewayResource.create(ResourceType.GATEWAY_WORKER);
+ resource.setUser((String) value);
+ List<ExperimentResource> resources = resource.getExperiments(limit, offset,
+ orderByIdentifier, resultOrderType);
+ for (ExperimentResource experimentResource : resources) {
+ Experiment experiment = ThriftDataModelConversion.getExperiment(experimentResource);
+ experiments.add(experiment);
+ }
+ return experiments;
+ } else if (fieldName.equals(Constants.FieldConstants.ExperimentConstants.PROJECT_ID)) {
+ ProjectResource project = workerResource.getProject((String) value);
+ List<ExperimentResource> resources = project.getExperiments(limit, offset,
+ Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
+ for (ExperimentResource resource : resources) {
+ Experiment experiment = ThriftDataModelConversion.getExperiment(resource);
+ experiments.add(experiment);
+ }
+ return experiments;
+ }
+ logger.error("Unsupported field name to retrieve experiment list...");
+ } catch (Exception e) {
+ logger.error("Error while getting experiment list...", e);
+ throw new RegistryException(e);
+ }
+ return experiments;
+ }
+
+
public List<WorkflowNodeDetails> getWFNodeDetails(String fieldName, Object value) throws RegistryException {
try {
if (fieldName.equals(Constants.FieldConstants.WorkflowNodeConstants.EXPERIMENT_ID)) {
@@ -2810,7 +2860,7 @@ public class ExperimentRegistry {
* @throws RegistryException
*/
public List<ExperimentSummary> searchExperiments(Map<String, String> filters) throws RegistryException {
- return searchExperimentsWithPagination(filters, -1, -1, null, null);
+ return searchExperiments(filters, -1, -1, null, null);
}
@@ -2827,8 +2877,8 @@ public class ExperimentRegistry {
* @return
* @throws RegistryException
*/
- public List<ExperimentSummary> searchExperimentsWithPagination(Map<String, String> filters, int limit,
- int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ public List<ExperimentSummary> searchExperiments(Map<String, String> filters, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
Map<String, String> fil = new HashMap<String, String>();
if (filters != null && filters.size() != 0) {
List<ExperimentSummary> experimentSummaries = new ArrayList<ExperimentSummary>();
@@ -2847,7 +2897,7 @@ public class ExperimentRegistry {
} else if (field.equals(Constants.FieldConstants.ExperimentConstants.APPLICATION_ID)) {
fil.put(AbstractResource.ExperimentConstants.APPLICATION_ID, filters.get(field));
} else if (field.equals(Constants.FieldConstants.ExperimentConstants.EXPERIMENT_STATUS)) {
- return searchExperimentsByStatus(ExperimentState.valueOf(filters.get(field)));
+ fil.put(AbstractResource.StatusConstants.STATE, filters.get(field));
} else if (field.equals(Constants.FieldConstants.ExperimentConstants.FROM_DATE)) {
fromTime = Long.parseLong(filters.get(field));
} else if (field.equals(Constants.FieldConstants.ExperimentConstants.TO_DATE)) {
@@ -2855,13 +2905,13 @@ public class ExperimentRegistry {
}
}
if (fromTime != 0 && toTime != 0) {
- return searchExperimentsByCreationTime(new Timestamp(fromTime), new Timestamp(toTime));
- }
- if (fil.containsKey(AbstractResource.ExperimentConstants.APPLICATION_ID)) {
- return searchExperimentsByApplication(fil);
+ return searchExperimentsByCreationTime(new Timestamp(fromTime), new Timestamp(toTime)
+ , limit, offset, orderByIdentifier, resultOrderType);
+ } else if(fil.get(AbstractResource.StatusConstants.STATE) != null ) {
+ return searchExperimentsByStatus(fil, limit, offset, orderByIdentifier, resultOrderType);
} else {
List<ExperimentResource> experimentResources = workerResource
- .searchExperimentsWithPagination(fil, limit, offset, orderByIdentifier, resultOrderType);
+ .searchExperiments(fil, limit, offset, orderByIdentifier, resultOrderType);
if (experimentResources != null && !experimentResources.isEmpty()) {
for (ExperimentResource ex : experimentResources) {
experimentSummaries.add(ThriftDataModelConversion.getExperimentSummary(ex));
@@ -2878,10 +2928,33 @@ public class ExperimentRegistry {
return null;
}
- public List<ExperimentSummary> searchExperimentsByStatus(ExperimentState experimentState) throws RegistryException {
+ /**
+ * To get list of experiments of specified state
+ * @param filters
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentSummary> searchExperimentsByStatus(Map<String, String> filters) throws RegistryException {
+ return searchExperimentsByStatus(filters, -1, -1, null, null);
+ }
+
+ /**
+ * To get list of experiments of specified state with pagination and ordering
+ *
+ * @param filters
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentSummary> searchExperimentsByStatus(Map<String, String> filters, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
try {
List<ExperimentSummary> experimentSummaries = new ArrayList<ExperimentSummary>();
- List<ExperimentResource> experimentResources = workerResource.searchExperimentsByState(experimentState.toString());
+ List<ExperimentResource> experimentResources = workerResource.searchExperimentsByState(filters, limit, offset,
+ orderByIdentifier, resultOrderType);
if (experimentResources != null && !experimentResources.isEmpty()) {
for (ExperimentResource ex : experimentResources) {
experimentSummaries.add(ThriftDataModelConversion.getExperimentSummary(ex));
@@ -2895,40 +2968,37 @@ public class ExperimentRegistry {
}
}
- public List<ExperimentSummary> searchExperimentsByApplication(Map<String, String> fil) throws RegistryException {
- try {
- List<ExperimentSummary> experimentSummaries = new ArrayList<ExperimentSummary>();
- List<ExperimentResource> experimentResources = workerResource.searchExperiments(fil);
- if (experimentResources != null && !experimentResources.isEmpty()) {
- for (ExperimentResource ex : experimentResources) {
- String applicationId = ex.getApplicationId();
- String[] splits = applicationId.split("_");
- if (splits.length != 0) {
- for (int i = 0; i < splits.length - 1; i++) {
- String appId = fil.get(AbstractResource.ExperimentConstants.APPLICATION_ID);
- if (!appId.equals("*")) {
- if (splits[i].contains(appId)) {
- experimentSummaries.add(ThriftDataModelConversion.getExperimentSummary(ex));
- }
- } else {
- experimentSummaries.add(ThriftDataModelConversion.getExperimentSummary(ex));
- }
- }
- }
- }
- }
- return experimentSummaries;
- } catch (Exception e) {
- logger.error("Error while retrieving experiment summary from registry", e);
- throw new RegistryException(e);
- }
+ /**
+ * Search experiements based on creation time within specified time interval.
+ * @param fromTime
+ * @param toTime
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentSummary> searchExperimentsByCreationTime(Timestamp fromTime, Timestamp toTime) throws RegistryException {
+ return searchExperimentsByCreationTime(fromTime, toTime, -1, -1, null, null);
}
- public List<ExperimentSummary> searchExperimentsByCreationTime(Timestamp fromTime, Timestamp toTime) throws RegistryException {
+ /**
+ * Search experiements based on creation time within specified time interval with pagination.
+ * @param fromTime
+ * @param toTime
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentSummary> searchExperimentsByCreationTime(
+ Timestamp fromTime, Timestamp toTime, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
try {
List<ExperimentSummary> experimentSummaries = new ArrayList<ExperimentSummary>();
- List<ExperimentResource> experimentResources = workerResource.searchExperimentsByCreationTime(fromTime, toTime);
+ List<ExperimentResource> experimentResources
+ = workerResource.searchExperimentsByCreationTime(fromTime, toTime, limit, offset,
+ orderByIdentifier, resultOrderType);
if (experimentResources != null && !experimentResources.isEmpty()) {
for (ExperimentResource ex : experimentResources) {
experimentSummaries.add(ThriftDataModelConversion.getExperimentSummary(ex));
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/LoggingRegistryImpl.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/LoggingRegistryImpl.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/LoggingRegistryImpl.java
index d7e9c0a..0274518 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/LoggingRegistryImpl.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/LoggingRegistryImpl.java
@@ -61,12 +61,17 @@ public class LoggingRegistryImpl implements Registry {
}
@Override
+ public List<Object> get(RegistryModelType dataType, String fieldName, Object value, int limit, int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ return null;
+ }
+
+ @Override
public List<Object> search(RegistryModelType dataType, Map<String, String> filters) throws RegistryException {
return null;
}
@Override
- public List<Object> searchWithPagination(RegistryModelType dataType, Map<String, String> filters, int limit, int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ public List<Object> search(RegistryModelType dataType, Map<String, String> filters, int limit, int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
return null;
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ProjectRegistry.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ProjectRegistry.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ProjectRegistry.java
index 5bfcc3d..e0e2a46 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ProjectRegistry.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ProjectRegistry.java
@@ -164,7 +164,30 @@ public class ProjectRegistry {
return null;
}
+ /**
+ * Get list of projects of the user
+ * @param fieldName
+ * @param value
+ * @return
+ * @throws RegistryException
+ */
public List<Project> getProjectList (String fieldName, Object value) throws RegistryException{
+ return getProjectList(fieldName, value, -1, -1, null, null);
+ }
+
+ /**
+ * Get projects list with pagination and result ordering
+ * @param fieldName
+ * @param value
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<Project> getProjectList (String fieldName, Object value, int limit, int offset,
+ Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException{
List<Project> projects = new ArrayList<Project>();
try {
if (fieldName.equals(Constants.FieldConstants.ProjectConstants.OWNER)){
@@ -179,7 +202,7 @@ public class ProjectRegistry {
}
}catch (Exception e){
logger.error("Error while retrieving project from registry", e);
- throw new RegistryException(e);
+ throw new RegistryException(e);
}
return projects;
}
@@ -192,7 +215,7 @@ public class ProjectRegistry {
* @throws RegistryException
*/
public List<Project> searchProjects (Map<String, String> filters) throws RegistryException{
- return searchProjectsWithPagination(filters, -1, -1, null, null);
+ return searchProjects(filters, -1, -1, null, null);
}
/**
@@ -208,8 +231,8 @@ public class ProjectRegistry {
* @return
* @throws RegistryException
*/
- public List<Project> searchProjectsWithPagination(Map<String, String> filters, int limit,
- int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ public List<Project> searchProjects(Map<String, String> filters, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
Map<String, String> fil = new HashMap<String, String>();
if (filters != null && filters.size() != 0){
List<Project> projects = new ArrayList<Project>();
@@ -226,7 +249,7 @@ public class ProjectRegistry {
}
}
List<ProjectResource> projectResources = workerResource
- .searchProjectsWithPagination(fil, limit, offset, orderByIdentifier, resultOrderType);
+ .searchProjects(fil, limit, offset, orderByIdentifier, resultOrderType);
if (projectResources != null && !projectResources.isEmpty()){
for (ProjectResource pr : projectResources){
projects.add(ThriftDataModelConversion.getProject(pr));
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
index a2f1e11..953b11e 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
@@ -454,6 +454,51 @@ public class RegistryImpl implements Registry {
}
/**
+ * This method is to retrieve list of objects according to a given criteria with pagination and ordering
+ *
+ * @param dataType Data type is a predefined type which the programmer should choose according to the object he
+ * is going to save in to registry
+ * @param fieldName FieldName is the field that filtering should be done. For example, if we want to retrieve all
+ * the experiments for a given user, filterBy will be "userName"
+ * @param value value for the filtering field. In the experiment case, value for "userName" can be "admin"
+ * @param limit Size of the results to be returned
+ * @param offset Start position of the results to be retrieved
+ * @param orderByIdentifier Named of the column in which the ordering is based
+ * @param resultOrderType Type of ordering i.e ASC or DESC
+ * @return
+ * @throws RegistryException
+ */
+ @Override
+ public List<Object> get(RegistryModelType dataType, String fieldName, Object value, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ try {
+ List<Object> result = new ArrayList<Object>();
+ switch (dataType) {
+ case PROJECT:
+ List<Project> projectList = projectRegistry
+ .getProjectList(fieldName, value, limit, offset, orderByIdentifier, resultOrderType);
+ for (Project project : projectList ){
+ result.add(project);
+ }
+ return result;
+ case EXPERIMENT:
+ List<Experiment> experimentList = experimentRegistry.getExperimentList(fieldName, value,
+ limit, offset, orderByIdentifier, resultOrderType);
+ for (Experiment experiment : experimentList) {
+ result.add(experiment);
+ }
+ return result;
+ default:
+ logger.error("Unsupported data type...", new UnsupportedOperationException());
+ throw new UnsupportedOperationException();
+ }
+ } catch (Exception e) {
+ logger.error("Error while retrieving the resource " + dataType.toString(), new RegistryException(e));
+ throw new RegistryException("Error while retrieving the resource " + dataType.toString(), e);
+ }
+ }
+
+ /**
* This method is to retrieve list of objects according to a given criteria
* @param dataType Data type is a predefined type which the programmer should choose according to the object he
* is going to save in to registry
@@ -462,7 +507,7 @@ public class RegistryImpl implements Registry {
*/
@Override
public List<Object> search(RegistryModelType dataType, Map<String, String> filters) throws RegistryException {
- return searchWithPagination(dataType, filters, -1, -1, null, null);
+ return search(dataType, filters, -1, -1, null, null);
}
/**
@@ -478,23 +523,23 @@ public class RegistryImpl implements Registry {
* @return List of objects according to the given criteria
*/
@Override
- public List<Object> searchWithPagination(RegistryModelType dataType, Map<String, String> filters, int limit,
+ public List<Object> search(RegistryModelType dataType, Map<String, String> filters, int limit,
int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
try {
List<Object> result = new ArrayList<Object>();
switch (dataType) {
case PROJECT:
List<Project> projectList
- = projectRegistry.searchProjectsWithPagination(filters, limit, offset,
- orderByIdentifier, resultOrderType );
+ = projectRegistry.searchProjects(filters, limit, offset,
+ orderByIdentifier, resultOrderType);
for (Project project : projectList ){
result.add(project);
}
return result;
case EXPERIMENT:
List<ExperimentSummary> experimentSummaries = experimentRegistry
- .searchExperimentsWithPagination(filters, limit, offset, orderByIdentifier,
- resultOrderType );
+ .searchExperiments(filters, limit, offset, orderByIdentifier,
+ resultOrderType);
for (ExperimentSummary ex : experimentSummaries){
result.add(ex);
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
index c53b489..4dc4160 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
@@ -20,22 +20,23 @@
*/
package org.apache.airavata.persistance.registry.jpa.resources;
-import java.sql.Timestamp;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
-
import org.apache.airavata.persistance.registry.jpa.Resource;
import org.apache.airavata.persistance.registry.jpa.ResourceType;
import org.apache.airavata.persistance.registry.jpa.ResourceUtils;
import org.apache.airavata.persistance.registry.jpa.model.*;
import org.apache.airavata.persistance.registry.jpa.utils.QueryGenerator;
import org.apache.airavata.registry.cpi.RegistryException;
+import org.apache.airavata.registry.cpi.ResultOrderType;
+import org.apache.airavata.registry.cpi.utils.Constants;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import javax.persistence.EntityManager;
+import javax.persistence.Query;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.List;
+
public class ProjectResource extends AbstractResource {
private final static Logger logger = LoggerFactory.getLogger(ProjectResource.class);
private String name;
@@ -182,6 +183,7 @@ public class ProjectResource extends AbstractResource {
* @param type child resource type
* @return list of child resources
*/
+ @Override
public List<Resource> get(ResourceType type) throws RegistryException{
List<Resource> resourceList = new ArrayList<Resource>();
EntityManager em = null;
@@ -239,6 +241,99 @@ public class ProjectResource extends AbstractResource {
}
/**
+ * Get results with pagination and ordering
+ *
+ * @param type
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @return
+ * @throws RegistryException
+ */
+ public List<Resource> get(ResourceType type, int limit, int offset, Object orderByIdentifier,
+ ResultOrderType resultOrderType) throws RegistryException{
+ List<Resource> resourceList = new ArrayList<Resource>();
+ EntityManager em = null;
+ try {
+ if (type == ResourceType.EXPERIMENT) {
+ em = ResourceUtils.getEntityManager();
+ em.getTransaction().begin();
+ QueryGenerator generator = new QueryGenerator(EXPERIMENT);
+ generator.setParameter(ExperimentConstants.PROJECT_ID, id);
+ Query q;
+ //ordering - supported only by CREATION_TIME
+ if(orderByIdentifier != null && resultOrderType != null
+ && orderByIdentifier.equals(Constants.FieldConstants.ExperimentConstants.CREATION_TIME)) {
+ q = generator.selectQuery(em, ExperimentConstants.CREATION_TIME, resultOrderType);
+ }else{
+ q = generator.selectQuery(em);
+ }
+
+ //pagination
+ if(limit>0 && offset>=0){
+ q.setFirstResult(offset);
+ q.setMaxResults(limit);
+ }
+ List<?> results = q.getResultList();
+ if (results.size() != 0) {
+ for (Object result : results) {
+ Experiment experiment = (Experiment) result;
+ ExperimentResource experimentResource = (ExperimentResource)
+ Utils.getResource(ResourceType.EXPERIMENT, experiment);
+ resourceList.add(experimentResource);
+ }
+ }
+ em.getTransaction().commit();
+ em.close();
+ } else if (type == ResourceType.PROJECT_USER) {
+ em = ResourceUtils.getEntityManager();
+ em.getTransaction().begin();
+ QueryGenerator generator = new QueryGenerator(PROJECT_USER);
+ generator.setParameter(ProjectUserConstants.PROJECT_ID, id);
+ Query q;
+ //ordering - only supported only by CREATION_TIME
+ if(orderByIdentifier != null && resultOrderType != null
+ && orderByIdentifier.equals(Constants.FieldConstants.ProjectConstants.CREATION_TIME)) {
+ q = generator.selectQuery(em, ProjectConstants.CREATION_TIME, resultOrderType);
+ }else{
+ q = generator.selectQuery(em);
+ }
+
+ //pagination
+ if(limit>0 && offset>=0){
+ q.setFirstResult(offset);
+ q.setMaxResults(limit);
+ }
+ List<?> results = q.getResultList();
+ if (results.size() != 0) {
+ for (Object result : results) {
+ ProjectUser projectUser = (ProjectUser) result;
+ ProjectUserResource pr = (ProjectUserResource)
+ Utils.getResource(ResourceType.PROJECT_USER, projectUser);
+ resourceList.add(pr);
+ }
+ }
+ em.getTransaction().commit();
+ em.close();
+ } else {
+ logger.error("Unsupported resource type for project resource.", new IllegalArgumentException());
+ throw new IllegalArgumentException("Unsupported resource type for project resource.");
+ }
+ } catch (Exception e) {
+ logger.error(e.getMessage(), e);
+ throw new RegistryException(e);
+ } finally {
+ if (em != null && em.isOpen()) {
+ if (em.getTransaction().isActive()){
+ em.getTransaction().rollback();
+ }
+ em.close();
+ }
+ }
+ return resourceList;
+ }
+
+ /**
* save project to the database
*/
public void save() throws RegistryException{
@@ -404,6 +499,16 @@ public class ProjectResource extends AbstractResource {
return result;
}
+ public List<ExperimentResource> getExperiments(int limit, int offset, Object orderByIdentifier,
+ ResultOrderType resultOrderType) throws RegistryException{
+ List<Resource> list = get(ResourceType.EXPERIMENT, limit, offset, orderByIdentifier, resultOrderType);
+ List<ExperimentResource> result=new ArrayList<ExperimentResource>();
+ for (Resource resource : list) {
+ result.add((ExperimentResource) resource);
+ }
+ return result;
+ }
+
/**
*
* @param experimentId experiment ID
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
index dfa887f..d3609b8 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
@@ -21,12 +21,14 @@
package org.apache.airavata.persistance.registry.jpa.resources;
+import org.apache.airavata.model.workspace.experiment.ExperimentState;
import org.apache.airavata.persistance.registry.jpa.Resource;
import org.apache.airavata.persistance.registry.jpa.ResourceType;
import org.apache.airavata.persistance.registry.jpa.ResourceUtils;
import org.apache.airavata.persistance.registry.jpa.model.*;
import org.apache.airavata.persistance.registry.jpa.utils.QueryGenerator;
import org.apache.airavata.registry.cpi.ResultOrderType;
+import org.apache.airavata.registry.cpi.utils.Constants;
import org.apache.airavata.registry.cpi.utils.StatusType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -220,11 +222,28 @@ public class WorkerResource extends AbstractResource {
// }
/**
+ * Method get all results of the given child resource type
*
* @param type child resource type
* @return list of child resources
*/
public List<Resource> get(ResourceType type) throws RegistryException{
+ return get(type, -1, -1, null, null);
+ }
+
+ /**
+ * Method get all results of the given child resource type with paginaltion and ordering
+ *
+ * @param type child resource type
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return list of child resources
+ * @throws RegistryException
+ */
+ public List<Resource> get(ResourceType type, int limit, int offset, Object orderByIdentifier,
+ ResultOrderType resultOrderType) throws RegistryException{
List<Resource> result = new ArrayList<Resource>();
EntityManager em = null;
try {
@@ -239,9 +258,21 @@ public class WorkerResource extends AbstractResource {
Gateway gatewayModel = em.find(Gateway.class, gateway.getGatewayId());
generator.setParameter("users", users);
generator.setParameter("gateway", gatewayModel);
-// generator.setParameter(ProjectConstants.USERNAME, getUser());
-// generator.setParameter(ProjectConstants.GATEWAY_NAME, gateway.getGatewayName());
- q = generator.selectQuery(em);
+
+ //ordering - only supported only by CREATION_TIME
+ if(orderByIdentifier != null && resultOrderType != null
+ && orderByIdentifier.equals(Constants.FieldConstants.ProjectConstants.CREATION_TIME)) {
+ q = generator.selectQuery(em, ProjectConstants.CREATION_TIME, resultOrderType);
+ }else{
+ q = generator.selectQuery(em);
+ }
+
+ //pagination
+ if(limit>0 && offset>=0){
+ q.setFirstResult(offset);
+ q.setMaxResults(limit);
+ }
+
for (Object o : q.getResultList()) {
Project project = (Project) o;
ProjectResource projectResource = (ProjectResource) Utils.getResource(ResourceType.PROJECT, project);
@@ -251,12 +282,26 @@ public class WorkerResource extends AbstractResource {
case EXPERIMENT:
generator = new QueryGenerator(EXPERIMENT);
generator.setParameter(ExperimentConstants.EXECUTION_USER, getUser());
- q = generator.selectQuery(em);
+
+ //ordering - only supported only by CREATION_TIME
+ if(orderByIdentifier != null && resultOrderType != null
+ && orderByIdentifier.equals(Constants.FieldConstants.ProjectConstants.CREATION_TIME)) {
+ q = generator.selectQuery(em, ExperimentConstants.CREATION_TIME, resultOrderType);
+ }else{
+ q = generator.selectQuery(em);
+ }
+
+ //pagination
+ if(limit>0 && offset>=0){
+ q.setFirstResult(offset);
+ q.setMaxResults(limit);
+ }
for (Object o : q.getResultList()) {
Experiment experiment = (Experiment) o;
ExperimentResource experimentResource = (ExperimentResource) Utils.getResource(ResourceType.EXPERIMENT, experiment);
result.add(experimentResource);
}
+
break;
default:
logger.error("Unsupported resource type for worker resource.", new IllegalArgumentException());
@@ -396,18 +441,29 @@ public class WorkerResource extends AbstractResource {
}
/**
- *
+ * Get projects list of user
* @return list of projects for the user
*/
public List<ProjectResource> getProjects() throws RegistryException{
- List<ProjectResource> result=new ArrayList<ProjectResource>();
- List<Resource> list = get(ResourceType.PROJECT);
- for (Resource resource : list) {
- result.add((ProjectResource) resource);
- }
- return result;
+ return getProjects(-1, -1, null, null);
}
+
+ /**
+ * Get projects list of user with pagination and ordering
+ *
+ * @return list of projects for the user
+ */
+ public List<ProjectResource> getProjects(int limit, int offset, Object orderByIdentifier,
+ ResultOrderType resultOrderType) throws RegistryException{
+ List<ProjectResource> result=new ArrayList<ProjectResource>();
+ List<Resource> list = get(ResourceType.PROJECT, limit, offset, orderByIdentifier, resultOrderType);
+ for (Resource resource : list) {
+ result.add((ProjectResource) resource);
+ }
+ return result;
+ }
+
/**
*
* @param name experiment name
@@ -432,19 +488,33 @@ public class WorkerResource extends AbstractResource {
// }
/**
- *
+ * Method to get list of expeirments of user
* @return list of experiments for the user
*/
public List<ExperimentResource> getExperiments() throws RegistryException{
- List<ExperimentResource> result=new ArrayList<ExperimentResource>();
- List<Resource> list = get(ResourceType.EXPERIMENT);
- for (Resource resource : list) {
- result.add((ExperimentResource) resource);
- }
- return result;
+ return getExperiments(-1, -1, null, null);
}
/**
+ * Method to get list of experiments of user with pagination and ordering
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentResource> getExperiments(int limit, int offset, Object orderByIdentifier,
+ ResultOrderType resultOrderType) throws RegistryException{
+ List<ExperimentResource> result=new ArrayList<ExperimentResource>();
+ List<Resource> list = get(ResourceType.EXPERIMENT, limit, offset, orderByIdentifier, resultOrderType);
+ for (Resource resource : list) {
+ result.add((ExperimentResource) resource);
+ }
+ return result;
+ }
+
+ /**
*
* @param experimentId experiment name
*/
@@ -460,7 +530,7 @@ public class WorkerResource extends AbstractResource {
* @throws RegistryException
*/
public List<ProjectResource> searchProjects (Map<String, String> filters) throws RegistryException{
- return searchProjectsWithPagination(filters, -1, -1, null, null);
+ return searchProjects(filters, -1, -1, null, null);
}
/**
@@ -477,8 +547,8 @@ public class WorkerResource extends AbstractResource {
* @return
* @throws RegistryException
*/
- public List<ProjectResource> searchProjectsWithPagination(Map<String, String> filters, int limit,
- int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ public List<ProjectResource> searchProjects(Map<String, String> filters, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
List<ProjectResource> result = new ArrayList<ProjectResource>();
EntityManager em = null;
try {
@@ -502,7 +572,7 @@ public class WorkerResource extends AbstractResource {
//ordering
if( orderByIdentifier != null && resultOrderType != null
- && orderByIdentifier.equals(ProjectConstants.CREATION_TIME)){
+ && orderByIdentifier.equals(Constants.FieldConstants.ProjectConstants.CREATION_TIME)){
String order = (resultOrderType == ResultOrderType.ASC) ? "ASC" : "DESC";
query += " ORDER BY p." + ProjectConstants.CREATION_TIME + " " + order;
}
@@ -549,7 +619,7 @@ public class WorkerResource extends AbstractResource {
* @throws RegistryException
*/
public List<ExperimentResource> searchExperiments (Map<String, String> filters) throws RegistryException{
- return searchExperimentsWithPagination(filters, -1, -1, null, null);
+ return searchExperiments(filters, -1, -1, null, null);
}
/**
@@ -565,8 +635,8 @@ public class WorkerResource extends AbstractResource {
* @return
* @throws RegistryException
*/
- public List<ExperimentResource> searchExperimentsWithPagination(Map<String, String> filters, int limit,
- int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
+ public List<ExperimentResource> searchExperiments(Map<String, String> filters, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException {
List<ExperimentResource> result = new ArrayList<ExperimentResource>();
EntityManager em = null;
@@ -579,6 +649,8 @@ public class WorkerResource extends AbstractResource {
query += "e." + field + "= '" + filterVal + "' AND ";
}else if (field.equals(ExperimentConstants.GATEWAY_ID)) {
query += "e." + field + "= '" + filterVal + "' AND ";
+ } else if (field.equals(ExperimentConstants.PROJECT_ID)) {
+ query += "e." + field + "= '" + filterVal + "' AND ";
} else {
if (filterVal.contains("*")){
filterVal = filterVal.replaceAll("\\*", "");
@@ -591,7 +663,7 @@ public class WorkerResource extends AbstractResource {
//ordering
if( orderByIdentifier != null && resultOrderType != null
- && orderByIdentifier.equals(ExperimentConstants.CREATION_TIME)){
+ && orderByIdentifier.equals(Constants.FieldConstants.ExperimentConstants.CREATION_TIME)){
String order = (resultOrderType == ResultOrderType.ASC) ? "ASC" : "DESC";
query += " ORDER BY e." + ExperimentConstants.CREATION_TIME + " " + order;
}
@@ -630,17 +702,75 @@ public class WorkerResource extends AbstractResource {
return result;
}
- public List<ExperimentResource> searchExperimentsByState (String experimentState) throws RegistryException{
+ /**
+ * Method to get experiments by state
+ * @param filters
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentResource> searchExperimentsByState (Map<String, String> filters) throws RegistryException{
+ return searchExperimentsByState(filters, -1, -1, null, null);
+ }
+
+ /**
+ * Method to get experiments of the given state with pagination and ordering
+ * @param filters
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentResource> searchExperimentsByState (Map<String, String> filters, int limit, int offset,
+ Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException{
List<ExperimentResource> result = new ArrayList<ExperimentResource>();
EntityManager em = null;
try {
+ String experimentState = ExperimentState.valueOf(filters.get(StatusConstants.STATE)).toString();
String query = "SELECT e FROM Status s " +
"JOIN s.experiment e " +
"WHERE s.state='" + experimentState + "' " +
- "AND s.statusType='" + StatusType.EXPERIMENT + "'";
+ "AND s.statusType='" + StatusType.EXPERIMENT + "' AND ";
+
+ filters.remove(StatusConstants.STATE);
+ if (filters.size() != 0) {
+ for (String field : filters.keySet()) {
+ String filterVal = filters.get(field);
+ if (field.equals(ExperimentConstants.EXECUTION_USER)) {
+ query += "e." + field + "= '" + filterVal + "' AND ";
+ }else if (field.equals(ExperimentConstants.GATEWAY_ID)) {
+ query += "e." + field + "= '" + filterVal + "' AND ";
+ } else if (field.equals(ExperimentConstants.PROJECT_ID)) {
+ query += "e." + field + "= '" + filterVal + "' AND ";
+ } else {
+ if (filterVal.contains("*")){
+ filterVal = filterVal.replaceAll("\\*", "");
+ }
+ query += "e." + field + " LIKE '%" + filterVal + "%' AND ";
+ }
+ }
+ }
+ query = query.substring(0, query.length() - 5);
+
+ //ordering
+ if( orderByIdentifier != null && resultOrderType != null
+ && orderByIdentifier.equals(Constants.FieldConstants.ExperimentConstants.CREATION_TIME)){
+ String order = (resultOrderType == ResultOrderType.ASC) ? "ASC" : "DESC";
+ query += " ORDER BY e." + ExperimentConstants.CREATION_TIME + " " + order;
+ }
+
em = ResourceUtils.getEntityManager();
em.getTransaction().begin();
- Query q = em.createQuery(query);
+ Query q;
+
+ //pagination
+ if(offset>=0 && limit >=0){
+ q = em.createQuery(query).setFirstResult(offset).setMaxResults(limit);
+ }else{
+ q = em.createQuery(query);
+ }
+
List resultList = q.getResultList();
for (Object o : resultList) {
Experiment experiment = (Experiment) o;
@@ -663,16 +793,60 @@ public class WorkerResource extends AbstractResource {
return result;
}
+ /**
+ * Search experiments from creation time between interval. Returns all results
+ * @param fromTime
+ * @param toTime
+ * @return
+ * @throws RegistryException
+ */
public List<ExperimentResource> searchExperimentsByCreationTime (Timestamp fromTime, Timestamp toTime) throws RegistryException{
+ return searchExperimentsByCreationTime(fromTime, toTime, -1, -1, null, null);
+ }
+
+
+ /**
+ * Search experiments from creation time between interval. Results are ordered creation time DESC.
+ * Supports pagination
+ *
+ * @param fromTime
+ * @param toTime
+ * @param limit
+ * @param offset
+ * @param orderByIdentifier
+ * @param resultOrderType
+ * @return
+ * @throws RegistryException
+ */
+ public List<ExperimentResource> searchExperimentsByCreationTime(
+ Timestamp fromTime, Timestamp toTime, int limit, int offset, Object orderByIdentifier,
+ ResultOrderType resultOrderType) throws RegistryException{
+
List<ExperimentResource> result = new ArrayList<ExperimentResource>();
EntityManager em = null;
try {
String query = "SELECT e FROM Experiment e " +
"WHERE e.creationTime > '" + fromTime + "' " +
"AND e.creationTime <'" + toTime + "'";
+
+ //ordering
+ if( orderByIdentifier != null && resultOrderType != null
+ && orderByIdentifier.equals(Constants.FieldConstants.ExperimentConstants.CREATION_TIME)){
+ String order = (resultOrderType == ResultOrderType.ASC) ? "ASC" : "DESC";
+ query += " ORDER BY e." + ExperimentConstants.CREATION_TIME + " " + order;
+ }
+
em = ResourceUtils.getEntityManager();
em.getTransaction().begin();
- Query q = em.createQuery(query);
+ Query q;
+
+ //pagination
+ if(offset>=0 && limit >=0){
+ q = em.createQuery(query).setFirstResult(offset).setMaxResults(limit);
+ }else{
+ q = em.createQuery(query);
+ }
+
List resultList = q.getResultList();
for (Object o : resultList) {
Experiment experiment = (Experiment) o;
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/QueryGenerator.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/QueryGenerator.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/QueryGenerator.java
index 56594e0..b0ebe45 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/QueryGenerator.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/QueryGenerator.java
@@ -21,11 +21,12 @@
package org.apache.airavata.persistance.registry.jpa.utils;
-import java.util.HashMap;
-import java.util.Map;
+import org.apache.airavata.registry.cpi.ResultOrderType;
import javax.persistence.EntityManager;
import javax.persistence.Query;
+import java.util.HashMap;
+import java.util.Map;
public class QueryGenerator {
private String tableName;
@@ -58,12 +59,32 @@ public class QueryGenerator {
public void setParameter(String colName, Object matchValue){
addMatch(colName, matchValue);
}
-
+
+ /**
+ * Select query
+ * @param entityManager
+ * @return
+ */
public Query selectQuery(EntityManager entityManager){
String queryString="SELECT "+ SELECT_OBJ + " FROM " +getTableName()+" "+TABLE_OBJ;
return generateQueryWithParameters(entityManager, queryString);
}
+ /**
+ * Select query with pagination
+ * @param entityManager
+ * @param orderByColumn
+ * @param resultOrderType
+ * @return
+ */
+ public Query selectQuery(EntityManager entityManager, String orderByColumn,
+ ResultOrderType resultOrderType){
+ String order = (resultOrderType == ResultOrderType.ASC) ? "ASC" : "DESC";
+ String orderByClause = " ORDER BY " + SELECT_OBJ + "." + orderByColumn + " " + order;
+ String queryString="SELECT "+ SELECT_OBJ + " FROM " +getTableName()+" "+TABLE_OBJ;
+ return generateQueryWithParameters(entityManager, queryString, orderByClause);
+ }
+
// public Query countQuery(EntityManager entityManager){
// SELECT COUNT(p.host_descriptor_ID) FROM Host_Descriptor p WHERE p.gateway_name =:gate_ID and p.host_descriptor_ID =:host_desc_name")
// String queryString="SELECT COUNT("+ SELECT_OBJ + " FROM " +getTableName()+" "+TABLE_OBJ;
@@ -77,25 +98,31 @@ public class QueryGenerator {
private Query generateQueryWithParameters(EntityManager entityManager,
String queryString) {
- Map<String,Object> queryParameters=new HashMap<String, Object>();
- if (matches.size()>0){
- String matchString = "";
- int paramCount=0;
- for (String colName : matches.keySet()) {
- String paramName="param"+paramCount;
- queryParameters.put(paramName, matches.get(colName));
- if (!matchString.equals("")){
- matchString+=" AND ";
- }
- matchString+=TABLE_OBJ+"."+colName+" =:"+paramName;
- paramCount++;
- }
- queryString+=" WHERE "+matchString;
- }
- Query query = entityManager.createQuery(queryString);
- for (String paramName : queryParameters.keySet()) {
- query.setParameter(paramName, queryParameters.get(paramName));
- }
- return query;
+ return generateQueryWithParameters(entityManager, queryString, "");
}
+
+ private Query generateQueryWithParameters(EntityManager entityManager,
+ String queryString, String orderByClause) {
+ Map<String,Object> queryParameters=new HashMap<String, Object>();
+ if (matches.size()>0){
+ String matchString = "";
+ int paramCount=0;
+ for (String colName : matches.keySet()) {
+ String paramName="param"+paramCount;
+ queryParameters.put(paramName, matches.get(colName));
+ if (!matchString.equals("")){
+ matchString+=" AND ";
+ }
+ matchString+=TABLE_OBJ+"."+colName+" =:"+paramName;
+ paramCount++;
+ }
+ queryString+=" WHERE "+matchString;
+ }
+ queryString += orderByClause;
+ Query query = entityManager.createQuery(queryString);
+ for (String paramName : queryParameters.keySet()) {
+ query.setParameter(paramName, queryParameters.get(paramName));
+ }
+ return query;
+ }
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/9f6e30e4/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/RegistryUseCaseTest.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/RegistryUseCaseTest.java b/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/RegistryUseCaseTest.java
index 17f4e71..1a78b1e 100644
--- a/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/RegistryUseCaseTest.java
+++ b/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/RegistryUseCaseTest.java
@@ -29,7 +29,6 @@ import org.apache.airavata.model.workspace.experiment.Experiment;
import org.apache.airavata.model.workspace.experiment.ExperimentSummary;
import org.apache.airavata.model.workspace.experiment.UserConfigurationData;
import org.apache.airavata.persistance.registry.jpa.impl.RegistryFactory;
-import org.apache.airavata.persistance.registry.jpa.resources.AbstractResource;
import org.apache.airavata.persistance.registry.jpa.util.Initialize;
import org.apache.airavata.registry.cpi.*;
import org.apache.airavata.registry.cpi.utils.Constants;
@@ -89,7 +88,7 @@ public class RegistryUseCaseTest {
Assert.assertEquals(updatedProject.getName(), retrievedProject.getName());
Assert.assertEquals(updatedProject.getDescription(), retrievedProject.getDescription());
Assert.assertNotNull(retrievedProject.getCreationTime());
- //created users should be in the shared users list
+ //created user should be in the shared users list
Assert.assertTrue(retrievedProject.getSharedUsers().size()==1);
//creating more projects for the same user
@@ -149,8 +148,8 @@ public class RegistryUseCaseTest {
//search projects with pagination
filters = new HashMap<String, String>();
filters.put(Constants.FieldConstants.ProjectConstants.OWNER, "TestUser"+TAG);
- list = registry.searchWithPagination(RegistryModelType.PROJECT, filters, 2, 2,
- AbstractResource.ProjectConstants.CREATION_TIME, ResultOrderType.DESC);
+ list = registry.search(RegistryModelType.PROJECT, filters, 2, 2,
+ Constants.FieldConstants.ProjectConstants.CREATION_TIME, ResultOrderType.DESC);
Assert.assertTrue(list.size()==2);
Project project1 = (Project)list.get(0);
Project project2 = (Project)list.get(1);
@@ -236,7 +235,7 @@ public class RegistryUseCaseTest {
experiment.addToExperimentInputs(inputDataObjectType);
String experimentId2 = (String)registry.add(ParentDataType.EXPERIMENT, experiment, gatewayId);
- Assert.assertNotNull(experimentId1);
+ Assert.assertNotNull(experimentId2);
experiment = new Experiment();
experiment.setProjectID(projectId1);
@@ -248,7 +247,7 @@ public class RegistryUseCaseTest {
experiment.addToExperimentInputs(inputDataObjectType);
String experimentId3 = (String)registry.add(ParentDataType.EXPERIMENT, experiment, gatewayId);
- Assert.assertNotNull(experimentId1);
+ Assert.assertNotNull(experimentId3);
//searching experiments by name
Map<String, String> filters = new HashMap<String, String>();
@@ -274,8 +273,8 @@ public class RegistryUseCaseTest {
filters = new HashMap<String, String>();
filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, "TestUser" + TAG);
filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
- list = registry.searchWithPagination(RegistryModelType.EXPERIMENT, filters, 2, 1,
- AbstractResource.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
+ list = registry.search(RegistryModelType.EXPERIMENT, filters, 2, 1,
+ Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
Assert.assertTrue(list.size()==2);
ExperimentSummary exp1 = (ExperimentSummary)list.get(0);
ExperimentSummary exp2 = (ExperimentSummary)list.get(1);
[08/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
index ac590e3..8c7d1ee 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
@@ -3570,7 +3570,7 @@ uint32_t Airavata_getAllUserProjects_presult::read(::apache::thrift::protocol::T
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -3583,7 +3583,8 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
bool isset_gatewayId = false;
bool isset_userName = false;
- bool isset_projectName = false;
+ bool isset_limit = false;
+ bool isset_offset = false;
while (true)
{
@@ -3610,9 +3611,17 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
}
break;
case 3:
- if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->projectName);
- isset_projectName = true;
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->limit);
+ isset_limit = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 4:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->offset);
+ isset_offset = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -3630,14 +3639,16 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_projectName)
+ if (!isset_limit)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_offset)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_getAllUserProjectsWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_args");
+ xfer += oprot->writeStructBegin("Airavata_getAllUserProjectsWithPagination_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -3647,8 +3658,12 @@ uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::prot
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString(this->projectName);
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 3);
+ xfer += oprot->writeI32(this->limit);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32(this->offset);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -3656,9 +3671,9 @@ uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::prot
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_getAllUserProjectsWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_pargs");
+ xfer += oprot->writeStructBegin("Airavata_getAllUserProjectsWithPagination_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -3668,8 +3683,12 @@ uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::pro
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString((*(this->projectName)));
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 3);
+ xfer += oprot->writeI32((*(this->limit)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32((*(this->offset)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -3677,7 +3696,7 @@ uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::pro
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_getAllUserProjectsWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -3753,11 +3772,11 @@ uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::pro
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_getAllUserProjectsWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_result");
+ xfer += oprot->writeStructBegin("Airavata_getAllUserProjectsWithPagination_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
@@ -3789,7 +3808,7 @@ uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::pr
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_getAllUserProjectsWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -3865,7 +3884,7 @@ uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::pr
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -3878,7 +3897,7 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
bool isset_gatewayId = false;
bool isset_userName = false;
- bool isset_description = false;
+ bool isset_projectName = false;
while (true)
{
@@ -3906,8 +3925,8 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
break;
case 3:
if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->description);
- isset_description = true;
+ xfer += iprot->readString(this->projectName);
+ isset_projectName = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -3925,14 +3944,14 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_description)
+ if (!isset_projectName)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_args");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -3942,8 +3961,8 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::prot
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString(this->description);
+ xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->projectName);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -3951,9 +3970,9 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::prot
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -3963,8 +3982,8 @@ uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::pro
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString((*(this->description)));
+ xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->projectName)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -3972,7 +3991,7 @@ uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::pro
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4048,11 +4067,11 @@ uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::pro
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_result");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
@@ -4084,7 +4103,7 @@ uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::pr
return xfer;
}
-uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4160,7 +4179,7 @@ uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::pr
return xfer;
}
-uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4173,7 +4192,9 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
bool isset_gatewayId = false;
bool isset_userName = false;
- bool isset_expName = false;
+ bool isset_projectName = false;
+ bool isset_limit = false;
+ bool isset_offset = false;
while (true)
{
@@ -4201,8 +4222,24 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
break;
case 3:
if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->expName);
- isset_expName = true;
+ xfer += iprot->readString(this->projectName);
+ isset_projectName = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 4:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->limit);
+ isset_limit = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 5:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->offset);
+ isset_offset = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -4220,14 +4257,18 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_expName)
+ if (!isset_projectName)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_limit)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_offset)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_args");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectNameWithPagination_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -4237,8 +4278,16 @@ uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString(this->expName);
+ xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->projectName);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32(this->limit);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32(this->offset);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -4246,9 +4295,9 @@ uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol
return xfer;
}
-uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectNameWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectNameWithPagination_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -4258,8 +4307,16 @@ uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protoco
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString((*(this->expName)));
+ xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->projectName)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32((*(this->limit)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32((*(this->offset)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -4267,7 +4324,7 @@ uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protoco
return xfer;
}
-uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectNameWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4343,17 +4400,17 @@ uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protoco
return xfer;
}
-uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectNameWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_result");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectNameWithPagination_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter64;
+ std::vector< ::apache::airavata::model::workspace::Project> ::const_iterator _iter64;
for (_iter64 = this->success.begin(); _iter64 != this->success.end(); ++_iter64)
{
xfer += (*_iter64).write(oprot);
@@ -4379,7 +4436,7 @@ uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protoc
return xfer;
}
-uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectNameWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4455,7 +4512,7 @@ uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protoc
return xfer;
}
-uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4520,9 +4577,9 @@ uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol:
return xfer;
}
-uint32_t Airavata_searchExperimentsByDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_args");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -4541,9 +4598,9 @@ uint32_t Airavata_searchExperimentsByDesc_args::write(::apache::thrift::protocol
return xfer;
}
-uint32_t Airavata_searchExperimentsByDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -4562,7 +4619,7 @@ uint32_t Airavata_searchExperimentsByDesc_pargs::write(::apache::thrift::protoco
return xfer;
}
-uint32_t Airavata_searchExperimentsByDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4638,17 +4695,17 @@ uint32_t Airavata_searchExperimentsByDesc_result::read(::apache::thrift::protoco
return xfer;
}
-uint32_t Airavata_searchExperimentsByDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_result");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter75;
+ std::vector< ::apache::airavata::model::workspace::Project> ::const_iterator _iter75;
for (_iter75 = this->success.begin(); _iter75 != this->success.end(); ++_iter75)
{
xfer += (*_iter75).write(oprot);
@@ -4674,7 +4731,7 @@ uint32_t Airavata_searchExperimentsByDesc_result::write(::apache::thrift::protoc
return xfer;
}
-uint32_t Airavata_searchExperimentsByDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4750,7 +4807,7 @@ uint32_t Airavata_searchExperimentsByDesc_presult::read(::apache::thrift::protoc
return xfer;
}
-uint32_t Airavata_searchExperimentsByApplication_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4763,7 +4820,9 @@ uint32_t Airavata_searchExperimentsByApplication_args::read(::apache::thrift::pr
bool isset_gatewayId = false;
bool isset_userName = false;
- bool isset_applicationId = false;
+ bool isset_description = false;
+ bool isset_limit = false;
+ bool isset_offset = false;
while (true)
{
@@ -4791,8 +4850,24 @@ uint32_t Airavata_searchExperimentsByApplication_args::read(::apache::thrift::pr
break;
case 3:
if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->applicationId);
- isset_applicationId = true;
+ xfer += iprot->readString(this->description);
+ isset_description = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 4:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->limit);
+ isset_limit = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 5:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->offset);
+ isset_offset = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -4810,14 +4885,18 @@ uint32_t Airavata_searchExperimentsByApplication_args::read(::apache::thrift::pr
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_applicationId)
+ if (!isset_description)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_limit)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_offset)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_searchExperimentsByApplication_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_args");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDescWithPagination_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -4827,8 +4906,16 @@ uint32_t Airavata_searchExperimentsByApplication_args::write(::apache::thrift::p
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString(this->applicationId);
+ xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->description);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32(this->limit);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32(this->offset);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -4836,9 +4923,9 @@ uint32_t Airavata_searchExperimentsByApplication_args::write(::apache::thrift::p
return xfer;
}
-uint32_t Airavata_searchExperimentsByApplication_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDescWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDescWithPagination_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -4848,8 +4935,16 @@ uint32_t Airavata_searchExperimentsByApplication_pargs::write(::apache::thrift::
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 3);
- xfer += oprot->writeString((*(this->applicationId)));
+ xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->description)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32((*(this->limit)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32((*(this->offset)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -4857,7 +4952,7 @@ uint32_t Airavata_searchExperimentsByApplication_pargs::write(::apache::thrift::
return xfer;
}
-uint32_t Airavata_searchExperimentsByApplication_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDescWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -4933,17 +5028,17 @@ uint32_t Airavata_searchExperimentsByApplication_result::read(::apache::thrift::
return xfer;
}
-uint32_t Airavata_searchExperimentsByApplication_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDescWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_result");
+ xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDescWithPagination_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter86;
+ std::vector< ::apache::airavata::model::workspace::Project> ::const_iterator _iter86;
for (_iter86 = this->success.begin(); _iter86 != this->success.end(); ++_iter86)
{
xfer += (*_iter86).write(oprot);
@@ -4969,7 +5064,7 @@ uint32_t Airavata_searchExperimentsByApplication_result::write(::apache::thrift:
return xfer;
}
-uint32_t Airavata_searchExperimentsByApplication_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDescWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5045,7 +5140,7 @@ uint32_t Airavata_searchExperimentsByApplication_presult::read(::apache::thrift:
return xfer;
}
-uint32_t Airavata_searchExperimentsByStatus_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5058,7 +5153,7 @@ uint32_t Airavata_searchExperimentsByStatus_args::read(::apache::thrift::protoco
bool isset_gatewayId = false;
bool isset_userName = false;
- bool isset_experimentState = false;
+ bool isset_expName = false;
while (true)
{
@@ -5085,11 +5180,9 @@ uint32_t Airavata_searchExperimentsByStatus_args::read(::apache::thrift::protoco
}
break;
case 3:
- if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast92;
- xfer += iprot->readI32(ecast92);
- this->experimentState = ( ::apache::airavata::model::workspace::experiment::ExperimentState::type)ecast92;
- isset_experimentState = true;
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->expName);
+ isset_expName = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -5107,14 +5200,14 @@ uint32_t Airavata_searchExperimentsByStatus_args::read(::apache::thrift::protoco
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_experimentState)
+ if (!isset_expName)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_searchExperimentsByStatus_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByStatus_args");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -5124,8 +5217,8 @@ uint32_t Airavata_searchExperimentsByStatus_args::write(::apache::thrift::protoc
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("experimentState", ::apache::thrift::protocol::T_I32, 3);
- xfer += oprot->writeI32((int32_t)this->experimentState);
+ xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->expName);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -5133,9 +5226,9 @@ uint32_t Airavata_searchExperimentsByStatus_args::write(::apache::thrift::protoc
return xfer;
}
-uint32_t Airavata_searchExperimentsByStatus_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByStatus_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -5145,8 +5238,8 @@ uint32_t Airavata_searchExperimentsByStatus_pargs::write(::apache::thrift::proto
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("experimentState", ::apache::thrift::protocol::T_I32, 3);
- xfer += oprot->writeI32((int32_t)(*(this->experimentState)));
+ xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->expName)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -5154,7 +5247,7 @@ uint32_t Airavata_searchExperimentsByStatus_pargs::write(::apache::thrift::proto
return xfer;
}
-uint32_t Airavata_searchExperimentsByStatus_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5178,14 +5271,14 @@ uint32_t Airavata_searchExperimentsByStatus_result::read(::apache::thrift::proto
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->success.clear();
- uint32_t _size93;
- ::apache::thrift::protocol::TType _etype96;
- xfer += iprot->readListBegin(_etype96, _size93);
- this->success.resize(_size93);
- uint32_t _i97;
- for (_i97 = 0; _i97 < _size93; ++_i97)
+ uint32_t _size92;
+ ::apache::thrift::protocol::TType _etype95;
+ xfer += iprot->readListBegin(_etype95, _size92);
+ this->success.resize(_size92);
+ uint32_t _i96;
+ for (_i96 = 0; _i96 < _size92; ++_i96)
{
- xfer += this->success[_i97].read(iprot);
+ xfer += this->success[_i96].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -5230,20 +5323,20 @@ uint32_t Airavata_searchExperimentsByStatus_result::read(::apache::thrift::proto
return xfer;
}
-uint32_t Airavata_searchExperimentsByStatus_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByStatus_result");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter98;
- for (_iter98 = this->success.begin(); _iter98 != this->success.end(); ++_iter98)
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter97;
+ for (_iter97 = this->success.begin(); _iter97 != this->success.end(); ++_iter97)
{
- xfer += (*_iter98).write(oprot);
+ xfer += (*_iter97).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -5266,7 +5359,7 @@ uint32_t Airavata_searchExperimentsByStatus_result::write(::apache::thrift::prot
return xfer;
}
-uint32_t Airavata_searchExperimentsByStatus_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5290,14 +5383,14 @@ uint32_t Airavata_searchExperimentsByStatus_presult::read(::apache::thrift::prot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
(*(this->success)).clear();
- uint32_t _size99;
- ::apache::thrift::protocol::TType _etype102;
- xfer += iprot->readListBegin(_etype102, _size99);
- (*(this->success)).resize(_size99);
- uint32_t _i103;
- for (_i103 = 0; _i103 < _size99; ++_i103)
+ uint32_t _size98;
+ ::apache::thrift::protocol::TType _etype101;
+ xfer += iprot->readListBegin(_etype101, _size98);
+ (*(this->success)).resize(_size98);
+ uint32_t _i102;
+ for (_i102 = 0; _i102 < _size98; ++_i102)
{
- xfer += (*(this->success))[_i103].read(iprot);
+ xfer += (*(this->success))[_i102].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -5342,7 +5435,7 @@ uint32_t Airavata_searchExperimentsByStatus_presult::read(::apache::thrift::prot
return xfer;
}
-uint32_t Airavata_searchExperimentsByCreationTime_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5355,8 +5448,9 @@ uint32_t Airavata_searchExperimentsByCreationTime_args::read(::apache::thrift::p
bool isset_gatewayId = false;
bool isset_userName = false;
- bool isset_fromTime = false;
- bool isset_toTime = false;
+ bool isset_expName = false;
+ bool isset_limit = false;
+ bool isset_offset = false;
while (true)
{
@@ -5383,17 +5477,25 @@ uint32_t Airavata_searchExperimentsByCreationTime_args::read(::apache::thrift::p
}
break;
case 3:
- if (ftype == ::apache::thrift::protocol::T_I64) {
- xfer += iprot->readI64(this->fromTime);
- isset_fromTime = true;
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->expName);
+ isset_expName = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 4:
- if (ftype == ::apache::thrift::protocol::T_I64) {
- xfer += iprot->readI64(this->toTime);
- isset_toTime = true;
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->limit);
+ isset_limit = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 5:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->offset);
+ isset_offset = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -5411,16 +5513,18 @@ uint32_t Airavata_searchExperimentsByCreationTime_args::read(::apache::thrift::p
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_fromTime)
+ if (!isset_expName)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_toTime)
+ if (!isset_limit)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_offset)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_searchExperimentsByCreationTime_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByNameWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByCreationTime_args");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByNameWithPagination_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -5430,12 +5534,16 @@ uint32_t Airavata_searchExperimentsByCreationTime_args::write(::apache::thrift::
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("fromTime", ::apache::thrift::protocol::T_I64, 3);
- xfer += oprot->writeI64(this->fromTime);
+ xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->expName);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("toTime", ::apache::thrift::protocol::T_I64, 4);
- xfer += oprot->writeI64(this->toTime);
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32(this->limit);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32(this->offset);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -5443,9 +5551,9 @@ uint32_t Airavata_searchExperimentsByCreationTime_args::write(::apache::thrift::
return xfer;
}
-uint32_t Airavata_searchExperimentsByCreationTime_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByNameWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByCreationTime_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByNameWithPagination_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -5455,12 +5563,16 @@ uint32_t Airavata_searchExperimentsByCreationTime_pargs::write(::apache::thrift:
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("fromTime", ::apache::thrift::protocol::T_I64, 3);
- xfer += oprot->writeI64((*(this->fromTime)));
+ xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->expName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("toTime", ::apache::thrift::protocol::T_I64, 4);
- xfer += oprot->writeI64((*(this->toTime)));
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32((*(this->limit)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32((*(this->offset)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -5468,7 +5580,7 @@ uint32_t Airavata_searchExperimentsByCreationTime_pargs::write(::apache::thrift:
return xfer;
}
-uint32_t Airavata_searchExperimentsByCreationTime_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByNameWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5492,14 +5604,14 @@ uint32_t Airavata_searchExperimentsByCreationTime_result::read(::apache::thrift:
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->success.clear();
- uint32_t _size104;
- ::apache::thrift::protocol::TType _etype107;
- xfer += iprot->readListBegin(_etype107, _size104);
- this->success.resize(_size104);
- uint32_t _i108;
- for (_i108 = 0; _i108 < _size104; ++_i108)
+ uint32_t _size103;
+ ::apache::thrift::protocol::TType _etype106;
+ xfer += iprot->readListBegin(_etype106, _size103);
+ this->success.resize(_size103);
+ uint32_t _i107;
+ for (_i107 = 0; _i107 < _size103; ++_i107)
{
- xfer += this->success[_i108].read(iprot);
+ xfer += this->success[_i107].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -5544,20 +5656,20 @@ uint32_t Airavata_searchExperimentsByCreationTime_result::read(::apache::thrift:
return xfer;
}
-uint32_t Airavata_searchExperimentsByCreationTime_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByNameWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_searchExperimentsByCreationTime_result");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByNameWithPagination_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter109;
- for (_iter109 = this->success.begin(); _iter109 != this->success.end(); ++_iter109)
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter108;
+ for (_iter108 = this->success.begin(); _iter108 != this->success.end(); ++_iter108)
{
- xfer += (*_iter109).write(oprot);
+ xfer += (*_iter108).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -5580,7 +5692,7 @@ uint32_t Airavata_searchExperimentsByCreationTime_result::write(::apache::thrift
return xfer;
}
-uint32_t Airavata_searchExperimentsByCreationTime_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByNameWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5604,14 +5716,14 @@ uint32_t Airavata_searchExperimentsByCreationTime_presult::read(::apache::thrift
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
(*(this->success)).clear();
- uint32_t _size110;
- ::apache::thrift::protocol::TType _etype113;
- xfer += iprot->readListBegin(_etype113, _size110);
- (*(this->success)).resize(_size110);
- uint32_t _i114;
- for (_i114 = 0; _i114 < _size110; ++_i114)
+ uint32_t _size109;
+ ::apache::thrift::protocol::TType _etype112;
+ xfer += iprot->readListBegin(_etype112, _size109);
+ (*(this->success)).resize(_size109);
+ uint32_t _i113;
+ for (_i113 = 0; _i113 < _size109; ++_i113)
{
- xfer += (*(this->success))[_i114].read(iprot);
+ xfer += (*(this->success))[_i113].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -5656,7 +5768,7 @@ uint32_t Airavata_searchExperimentsByCreationTime_presult::read(::apache::thrift
return xfer;
}
-uint32_t Airavata_getAllExperimentsInProject_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5667,7 +5779,9 @@ uint32_t Airavata_getAllExperimentsInProject_args::read(::apache::thrift::protoc
using ::apache::thrift::protocol::TProtocolException;
- bool isset_projectId = false;
+ bool isset_gatewayId = false;
+ bool isset_userName = false;
+ bool isset_description = false;
while (true)
{
@@ -5679,8 +5793,24 @@ uint32_t Airavata_getAllExperimentsInProject_args::read(::apache::thrift::protoc
{
case 1:
if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->projectId);
- isset_projectId = true;
+ xfer += iprot->readString(this->gatewayId);
+ isset_gatewayId = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->userName);
+ isset_userName = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->description);
+ isset_description = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -5694,17 +5824,29 @@ uint32_t Airavata_getAllExperimentsInProject_args::read(::apache::thrift::protoc
xfer += iprot->readStructEnd();
- if (!isset_projectId)
+ if (!isset_gatewayId)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_userName)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_description)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_getAllExperimentsInProject_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getAllExperimentsInProject_args");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_args");
- xfer += oprot->writeFieldBegin("projectId", ::apache::thrift::protocol::T_STRING, 1);
- xfer += oprot->writeString(this->projectId);
+ xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString(this->gatewayId);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString(this->userName);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->description);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -5712,12 +5854,20 @@ uint32_t Airavata_getAllExperimentsInProject_args::write(::apache::thrift::proto
return xfer;
}
-uint32_t Airavata_getAllExperimentsInProject_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getAllExperimentsInProject_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_pargs");
- xfer += oprot->writeFieldBegin("projectId", ::apache::thrift::protocol::T_STRING, 1);
- xfer += oprot->writeString((*(this->projectId)));
+ xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString((*(this->gatewayId)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString((*(this->userName)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->description)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -5725,7 +5875,7 @@ uint32_t Airavata_getAllExperimentsInProject_pargs::write(::apache::thrift::prot
return xfer;
}
-uint32_t Airavata_getAllExperimentsInProject_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5749,14 +5899,14 @@ uint32_t Airavata_getAllExperimentsInProject_result::read(::apache::thrift::prot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->success.clear();
- uint32_t _size115;
- ::apache::thrift::protocol::TType _etype118;
- xfer += iprot->readListBegin(_etype118, _size115);
- this->success.resize(_size115);
- uint32_t _i119;
- for (_i119 = 0; _i119 < _size115; ++_i119)
+ uint32_t _size114;
+ ::apache::thrift::protocol::TType _etype117;
+ xfer += iprot->readListBegin(_etype117, _size114);
+ this->success.resize(_size114);
+ uint32_t _i118;
+ for (_i118 = 0; _i118 < _size114; ++_i118)
{
- xfer += this->success[_i119].read(iprot);
+ xfer += this->success[_i118].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -5789,14 +5939,6 @@ uint32_t Airavata_getAllExperimentsInProject_result::read(::apache::thrift::prot
xfer += iprot->skip(ftype);
}
break;
- case 4:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->pnfe.read(iprot);
- this->__isset.pnfe = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
default:
xfer += iprot->skip(ftype);
break;
@@ -5809,20 +5951,20 @@ uint32_t Airavata_getAllExperimentsInProject_result::read(::apache::thrift::prot
return xfer;
}
-uint32_t Airavata_getAllExperimentsInProject_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getAllExperimentsInProject_result");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::Experiment> ::const_iterator _iter120;
- for (_iter120 = this->success.begin(); _iter120 != this->success.end(); ++_iter120)
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter119;
+ for (_iter119 = this->success.begin(); _iter119 != this->success.end(); ++_iter119)
{
- xfer += (*_iter120).write(oprot);
+ xfer += (*_iter119).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -5839,17 +5981,13 @@ uint32_t Airavata_getAllExperimentsInProject_result::write(::apache::thrift::pro
xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
xfer += this->ase.write(oprot);
xfer += oprot->writeFieldEnd();
- } else if (this->__isset.pnfe) {
- xfer += oprot->writeFieldBegin("pnfe", ::apache::thrift::protocol::T_STRUCT, 4);
- xfer += this->pnfe.write(oprot);
- xfer += oprot->writeFieldEnd();
}
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
}
-uint32_t Airavata_getAllExperimentsInProject_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5873,14 +6011,14 @@ uint32_t Airavata_getAllExperimentsInProject_presult::read(::apache::thrift::pro
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
(*(this->success)).clear();
- uint32_t _size121;
- ::apache::thrift::protocol::TType _etype124;
- xfer += iprot->readListBegin(_etype124, _size121);
- (*(this->success)).resize(_size121);
- uint32_t _i125;
- for (_i125 = 0; _i125 < _size121; ++_i125)
+ uint32_t _size120;
+ ::apache::thrift::protocol::TType _etype123;
+ xfer += iprot->readListBegin(_etype123, _size120);
+ (*(this->success)).resize(_size120);
+ uint32_t _i124;
+ for (_i124 = 0; _i124 < _size120; ++_i124)
{
- xfer += (*(this->success))[_i125].read(iprot);
+ xfer += (*(this->success))[_i124].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -5913,14 +6051,6 @@ uint32_t Airavata_getAllExperimentsInProject_presult::read(::apache::thrift::pro
xfer += iprot->skip(ftype);
}
break;
- case 4:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->pnfe.read(iprot);
- this->__isset.pnfe = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
default:
xfer += iprot->skip(ftype);
break;
@@ -5933,7 +6063,7 @@ uint32_t Airavata_getAllExperimentsInProject_presult::read(::apache::thrift::pro
return xfer;
}
-uint32_t Airavata_getAllUserExperiments_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDescWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -5946,6 +6076,9 @@ uint32_t Airavata_getAllUserExperiments_args::read(::apache::thrift::protocol::T
bool isset_gatewayId = false;
bool isset_userName = false;
+ bool isset_description = false;
+ bool isset_limit = false;
+ bool isset_offset = false;
while (true)
{
@@ -5971,6 +6104,30 @@ uint32_t Airavata_getAllUserExperiments_args::read(::apache::thrift::protocol::T
xfer += iprot->skip(ftype);
}
break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->description);
+ isset_description = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 4:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->limit);
+ isset_limit = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 5:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->offset);
+ isset_offset = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
default:
xfer += iprot->skip(ftype);
break;
@@ -5984,12 +6141,18 @@ uint32_t Airavata_getAllUserExperiments_args::read(::apache::thrift::protocol::T
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_userName)
throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_description)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_limit)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_offset)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_getAllUserExperiments_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDescWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getAllUserExperiments_args");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDescWithPagination_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
@@ -5999,14 +6162,26 @@ uint32_t Airavata_getAllUserExperiments_args::write(::apache::thrift::protocol::
xfer += oprot->writeString(this->userName);
xfer += oprot->writeFieldEnd();
+ xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->description);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32(this->limit);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32(this->offset);
+ xfer += oprot->writeFieldEnd();
+
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
}
-uint32_t Airavata_getAllUserExperiments_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDescWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getAllUserExperiments_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDescWithPagination_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
@@ -6016,12 +6191,24 @@ uint32_t Airavata_getAllUserExperiments_pargs::write(::apache::thrift::protocol:
xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
+ xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->description)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32((*(this->limit)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32((*(this->offset)));
+ xfer += oprot->writeFieldEnd();
+
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
}
-uint32_t Airavata_getAllUserExperiments_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDescWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6045,14 +6232,14 @@ uint32_t Airavata_getAllUserExperiments_result::read(::apache::thrift::protocol:
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->success.clear();
- uint32_t _size126;
- ::apache::thrift::protocol::TType _etype129;
- xfer += iprot->readListBegin(_etype129, _size126);
- this->success.resize(_size126);
- uint32_t _i130;
- for (_i130 = 0; _i130 < _size126; ++_i130)
+ uint32_t _size125;
+ ::apache::thrift::protocol::TType _etype128;
+ xfer += iprot->readListBegin(_etype128, _size125);
+ this->success.resize(_size125);
+ uint32_t _i129;
+ for (_i129 = 0; _i129 < _size125; ++_i129)
{
- xfer += this->success[_i130].read(iprot);
+ xfer += this->success[_i129].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -6097,20 +6284,20 @@ uint32_t Airavata_getAllUserExperiments_result::read(::apache::thrift::protocol:
return xfer;
}
-uint32_t Airavata_getAllUserExperiments_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDescWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getAllUserExperiments_result");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDescWithPagination_result");
if (this->__isset.success) {
xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
- std::vector< ::apache::airavata::model::workspace::experiment::Experiment> ::const_iterator _iter131;
- for (_iter131 = this->success.begin(); _iter131 != this->success.end(); ++_iter131)
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter130;
+ for (_iter130 = this->success.begin(); _iter130 != this->success.end(); ++_iter130)
{
- xfer += (*_iter131).write(oprot);
+ xfer += (*_iter130).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -6133,7 +6320,7 @@ uint32_t Airavata_getAllUserExperiments_result::write(::apache::thrift::protocol
return xfer;
}
-uint32_t Airavata_getAllUserExperiments_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDescWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6157,14 +6344,14 @@ uint32_t Airavata_getAllUserExperiments_presult::read(::apache::thrift::protocol
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
(*(this->success)).clear();
- uint32_t _size132;
- ::apache::thrift::protocol::TType _etype135;
- xfer += iprot->readListBegin(_etype135, _size132);
- (*(this->success)).resize(_size132);
- uint32_t _i136;
- for (_i136 = 0; _i136 < _size132; ++_i136)
+ uint32_t _size131;
+ ::apache::thrift::protocol::TType _etype134;
+ xfer += iprot->readListBegin(_etype134, _size131);
+ (*(this->success)).resize(_size131);
+ uint32_t _i135;
+ for (_i135 = 0; _i135 < _size131; ++_i135)
{
- xfer += (*(this->success))[_i136].read(iprot);
+ xfer += (*(this->success))[_i135].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -6209,7 +6396,7 @@ uint32_t Airavata_getAllUserExperiments_presult::read(::apache::thrift::protocol
return xfer;
}
-uint32_t Airavata_createExperiment_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplication_args::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6221,7 +6408,8 @@ uint32_t Airavata_createExperiment_args::read(::apache::thrift::protocol::TProto
using ::apache::thrift::protocol::TProtocolException;
bool isset_gatewayId = false;
- bool isset_experiment = false;
+ bool isset_userName = false;
+ bool isset_applicationId = false;
while (true)
{
@@ -6240,9 +6428,17 @@ uint32_t Airavata_createExperiment_args::read(::apache::thrift::protocol::TProto
}
break;
case 2:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->experiment.read(iprot);
- isset_experiment = true;
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->userName);
+ isset_userName = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->applicationId);
+ isset_applicationId = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -6258,21 +6454,27 @@ uint32_t Airavata_createExperiment_args::read(::apache::thrift::protocol::TProto
if (!isset_gatewayId)
throw TProtocolException(TProtocolException::INVALID_DATA);
- if (!isset_experiment)
+ if (!isset_userName)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_applicationId)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_createExperiment_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplication_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_createExperiment_args");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_args");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->gatewayId);
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("experiment", ::apache::thrift::protocol::T_STRUCT, 2);
- xfer += this->experiment.write(oprot);
+ xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString(this->userName);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->applicationId);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -6280,116 +6482,28 @@ uint32_t Airavata_createExperiment_args::write(::apache::thrift::protocol::TProt
return xfer;
}
-uint32_t Airavata_createExperiment_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplication_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_createExperiment_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_pargs");
xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString((*(this->gatewayId)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldBegin("experiment", ::apache::thrift::protocol::T_STRUCT, 2);
- xfer += (*(this->experiment)).write(oprot);
+ xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString((*(this->userName)));
xfer += oprot->writeFieldEnd();
- xfer += oprot->writeFieldStop();
- xfer += oprot->writeStructEnd();
- return xfer;
-}
-
-uint32_t Airavata_createExperiment_result::read(::apache::thrift::protocol::TProtocol* iprot) {
-
- uint32_t xfer = 0;
- std::string fname;
- ::apache::thrift::protocol::TType ftype;
- int16_t fid;
-
- xfer += iprot->readStructBegin(fname);
-
- using ::apache::thrift::protocol::TProtocolException;
-
-
- while (true)
- {
- xfer += iprot->readFieldBegin(fname, ftype, fid);
- if (ftype == ::apache::thrift::protocol::T_STOP) {
- break;
- }
- switch (fid)
- {
- case 0:
- if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->success);
- this->__isset.success = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
- case 1:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->ire.read(iprot);
- this->__isset.ire = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
- case 2:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->ace.read(iprot);
- this->__isset.ace = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
- case 3:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->ase.read(iprot);
- this->__isset.ase = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
- default:
- xfer += iprot->skip(ftype);
- break;
- }
- xfer += iprot->readFieldEnd();
- }
-
- xfer += iprot->readStructEnd();
-
- return xfer;
-}
-
-uint32_t Airavata_createExperiment_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
-
- uint32_t xfer = 0;
-
- xfer += oprot->writeStructBegin("Airavata_createExperiment_result");
+ xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->applicationId)));
+ xfer += oprot->writeFieldEnd();
- if (this->__isset.success) {
- xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_STRING, 0);
- xfer += oprot->writeString(this->success);
- xfer += oprot->writeFieldEnd();
- } else if (this->__isset.ire) {
- xfer += oprot->writeFieldBegin("ire", ::apache::thrift::protocol::T_STRUCT, 1);
- xfer += this->ire.write(oprot);
- xfer += oprot->writeFieldEnd();
- } else if (this->__isset.ace) {
- xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 2);
- xfer += this->ace.write(oprot);
- xfer += oprot->writeFieldEnd();
- } else if (this->__isset.ase) {
- xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
- xfer += this->ase.write(oprot);
- xfer += oprot->writeFieldEnd();
- }
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
}
-uint32_t Airavata_createExperiment_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplication_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6410,8 +6524,20 @@ uint32_t Airavata_createExperiment_presult::read(::apache::thrift::protocol::TPr
switch (fid)
{
case 0:
- if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString((*(this->success)));
+ if (ftype == ::apache::thrift::protocol::T_LIST) {
+ {
+ this->success.clear();
+ uint32_t _size136;
+ ::apache::thrift::protocol::TType _etype139;
+ xfer += iprot->readListBegin(_etype139, _size136);
+ this->success.resize(_size136);
+ uint32_t _i140;
+ for (_i140 = 0; _i140 < _size136; ++_i140)
+ {
+ xfer += this->success[_i140].read(iprot);
+ }
+ xfer += iprot->readListEnd();
+ }
this->__isset.success = true;
} else {
xfer += iprot->skip(ftype);
@@ -6453,7 +6579,43 @@ uint32_t Airavata_createExperiment_presult::read(::apache::thrift::protocol::TPr
return xfer;
}
-uint32_t Airavata_getExperiment_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplication_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+
+ uint32_t xfer = 0;
+
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_result");
+
+ if (this->__isset.success) {
+ xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
+ {
+ xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter141;
+ for (_iter141 = this->success.begin(); _iter141 != this->success.end(); ++_iter141)
+ {
+ xfer += (*_iter141).write(oprot);
+ }
+ xfer += oprot->writeListEnd();
+ }
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ire) {
+ xfer += oprot->writeFieldBegin("ire", ::apache::thrift::protocol::T_STRUCT, 1);
+ xfer += this->ire.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ace) {
+ xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 2);
+ xfer += this->ace.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.ase) {
+ xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += this->ase.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ }
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+uint32_t Airavata_searchExperimentsByApplication_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6464,7 +6626,87 @@ uint32_t Airavata_getExperiment_args::read(::apache::thrift::protocol::TProtocol
using ::apache::thrift::protocol::TProtocolException;
- bool isset_airavataExperimentId = false;
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 0:
+ if (ftype == ::apache::thrift::protocol::T_LIST) {
+ {
+ (*(this->success)).clear();
+ uint32_t _size142;
+ ::apache::thrift::protocol::TType _etype145;
+ xfer += iprot->readListBegin(_etype145, _size142);
+ (*(this->success)).resize(_size142);
+ uint32_t _i146;
+ for (_i146 = 0; _i146 < _size142; ++_i146)
+ {
+ xfer += (*(this->success))[_i146].read(iprot);
+ }
+ xfer += iprot->readListEnd();
+ }
+ this->__isset.success = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ire.read(iprot);
+ this->__isset.ire = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ace.read(iprot);
+ this->__isset.ace = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->ase.read(iprot);
+ this->__isset.ase = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ return xfer;
+}
+
+uint32_t Airavata_searchExperimentsByApplicationWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+ bool isset_gatewayId = false;
+ bool isset_userName = false;
+ bool isset_applicationId = false;
+ bool isset_limit = false;
+ bool isset_offset = false;
while (true)
{
@@ -6476,8 +6718,40 @@ uint32_t Airavata_getExperiment_args::read(::apache::thrift::protocol::TProtocol
{
case 1:
if (ftype == ::apache::thrift::protocol::T_STRING) {
- xfer += iprot->readString(this->airavataExperimentId);
- isset_airavataExperimentId = true;
+ xfer += iprot->readString(this->gatewayId);
+ isset_gatewayId = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->userName);
+ isset_userName = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->applicationId);
+ isset_applicationId = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 4:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->limit);
+ isset_limit = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 5:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ xfer += iprot->readI32(this->offset);
+ isset_offset = true;
} else {
xfer += iprot->skip(ftype);
}
@@ -6491,17 +6765,41 @@ uint32_t Airavata_getExperiment_args::read(::apache::thrift::protocol::TProtocol
xfer += iprot->readStructEnd();
- if (!isset_airavataExperimentId)
+ if (!isset_gatewayId)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_userName)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_applicationId)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_limit)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_offset)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}
-uint32_t Airavata_getExperiment_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplicationWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getExperiment_args");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplicationWithPagination_args");
- xfer += oprot->writeFieldBegin("airavataExperimentId", ::apache::thrift::protocol::T_STRING, 1);
- xfer += oprot->writeString(this->airavataExperimentId);
+ xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString(this->gatewayId);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString(this->userName);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->applicationId);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32(this->limit);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32(this->offset);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -6509,12 +6807,28 @@ uint32_t Airavata_getExperiment_args::write(::apache::thrift::protocol::TProtoco
return xfer;
}
-uint32_t Airavata_getExperiment_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplicationWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getExperiment_pargs");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplicationWithPagination_pargs");
- xfer += oprot->writeFieldBegin("airavataExperimentId", ::apache::thrift::protocol::T_STRING, 1);
- xfer += oprot->writeString((*(this->airavataExperimentId)));
+ xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString((*(this->gatewayId)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString((*(this->userName)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString((*(this->applicationId)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+ xfer += oprot->writeI32((*(this->limit)));
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32((*(this->offset)));
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
@@ -6522,7 +6836,7 @@ uint32_t Airavata_getExperiment_pargs::write(::apache::thrift::protocol::TProtoc
return xfer;
}
-uint32_t Airavata_getExperiment_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplicationWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6543,8 +6857,20 @@ uint32_t Airavata_getExperiment_result::read(::apache::thrift::protocol::TProtoc
switch (fid)
{
case 0:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->success.read(iprot);
+ if (ftype == ::apache::thrift::protocol::T_LIST) {
+ {
+ this->success.clear();
+ uint32_t _size147;
+ ::apache::thrift::protocol::TType _etype150;
+ xfer += iprot->readListBegin(_etype150, _size147);
+ this->success.resize(_size147);
+ uint32_t _i151;
+ for (_i151 = 0; _i151 < _size147; ++_i151)
+ {
+ xfer += this->success[_i151].read(iprot);
+ }
+ xfer += iprot->readListEnd();
+ }
this->__isset.success = true;
} else {
xfer += iprot->skip(ftype);
@@ -6560,21 +6886,13 @@ uint32_t Airavata_getExperiment_result::read(::apache::thrift::protocol::TProtoc
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += this->enf.read(iprot);
- this->__isset.enf = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
- case 3:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
xfer += this->ace.read(iprot);
this->__isset.ace = true;
} else {
xfer += iprot->skip(ftype);
}
break;
- case 4:
+ case 3:
if (ftype == ::apache::thrift::protocol::T_STRUCT) {
xfer += this->ase.read(iprot);
this->__isset.ase = true;
@@ -6594,30 +6912,34 @@ uint32_t Airavata_getExperiment_result::read(::apache::thrift::protocol::TProtoc
return xfer;
}
-uint32_t Airavata_getExperiment_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplicationWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
- xfer += oprot->writeStructBegin("Airavata_getExperiment_result");
+ xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplicationWithPagination_result");
if (this->__isset.success) {
- xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_STRUCT, 0);
- xfer += this->success.write(oprot);
+ xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
+ {
+ xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> ::const_iterator _iter152;
+ for (_iter152 = this->success.begin(); _iter152 != this->success.end(); ++_iter152)
+ {
+ xfer += (*_iter152).write(oprot);
+ }
+ xfer += oprot->writeListEnd();
+ }
xfer += oprot->writeFieldEnd();
} else if (this->__isset.ire) {
xfer += oprot->writeFieldBegin("ire", ::apache::thrift::protocol::T_STRUCT, 1);
xfer += this->ire.write(oprot);
xfer += oprot->writeFieldEnd();
- } else if (this->__isset.enf) {
- xfer += oprot->writeFieldBegin("enf", ::apache::thrift::protocol::T_STRUCT, 2);
- xfer += this->enf.write(oprot);
- xfer += oprot->writeFieldEnd();
} else if (this->__isset.ace) {
- xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 2);
xfer += this->ace.write(oprot);
xfer += oprot->writeFieldEnd();
} else if (this->__isset.ase) {
- xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 4);
+ xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
xfer += this->ase.write(oprot);
xfer += oprot->writeFieldEnd();
}
@@ -6626,7 +6948,7 @@ uint32_t Airavata_getExperiment_result::write(::apache::thrift::protocol::TProto
return xfer;
}
-uint32_t Airavata_getExperiment_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplicationWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
uint32_t xfer = 0;
std::string fname;
@@ -6647,8 +6969,20 @@ uint32_t Airavata_getExperiment_presult::read(::apache::thrift::protocol::TProto
switch (fid)
{
case 0:
- if (ftype == ::apache::thrift::protocol::T_STRUCT) {
- xfer += (*(this->success)).read(iprot);
+ if (ftype == ::apache::thri
<TRUNCATED>
[03/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
index cab0463..a556289 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
@@ -155,12 +155,35 @@ class Iface:
*
* @param userName
* The Project Object described in the workspaceModel
+ * @deprecated Instead use getAllUserProjectsWithPagination
+ *
+
+ Parameters:
+ - gatewayId
+ - userName
+ """
+ pass
+
+ def getAllUserProjectsWithPagination(self, gatewayId, userName, limit, offset):
+ """
+ * Get all Project by user with pagination. Results will be ordered based
+ * on creation time DESC
*
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
*
Parameters:
- gatewayId
- userName
+ - limit
+ - offset
"""
pass
@@ -168,23 +191,86 @@ class Iface:
"""
Get all Project for user by project name
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param projectName
+ The name of the project on which the results to be fetched
+ @deprecated Instead use searchProjectsByProjectNameWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ - projectName
+ """
+ pass
+
+ def searchProjectsByProjectNameWithPagination(self, gatewayId, userName, projectName, limit, offset):
+ """
+ Get all Project for user by project name with pagination.Results will be ordered based
+ on creation time DESC
+
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param projectName
+ The name of the project on which the results to be fetched
+ @param limit
+ The amount results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- projectName
+ - limit
+ - offset
"""
pass
def searchProjectsByProjectDesc(self, gatewayId, userName, description):
"""
Get all Project for user by project description
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param description
+ The description to be matched
+ @deprecated Instead use searchProjectsByProjectDescWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ - description
+ """
+ pass
+
+ def searchProjectsByProjectDescWithPagination(self, gatewayId, userName, description, limit, offset):
+ """
+ Search and get all Projects for user by project description with pagination. Results
+ will be ordered based on creation time DESC
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param description
+ The description to be matched
+ @param limit
+ The amount results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- description
+ - limit
+ - offset
"""
pass
@@ -192,11 +278,45 @@ class Iface:
"""
Search Experiments by experiment name
+ @param gatewayId
+ Identifier of the requested gateway
+ @param useNname
+ Username of the requested user
+ @param expName
+ Experiment name to be matched
+ @deprecated
+ Instead use searchExperimentsByNameWithPagination
+
+
+ Parameters:
+ - gatewayId
+ - userName
+ - expName
+ """
+ pass
+
+ def searchExperimentsByNameWithPagination(self, gatewayId, userName, expName, limit, offset):
+ """
+ Search Experiments by experiment name with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param expName
+ Experiment name to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- expName
+ - limit
+ - offset
"""
pass
@@ -204,11 +324,44 @@ class Iface:
"""
Search Experiments by experiment name
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param description
+ Experiment description to be matched
+ @deprecated
+ Instead use searchExperimentsByDescWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ - description
+ """
+ pass
+
+ def searchExperimentsByDescWithPagination(self, gatewayId, userName, description, limit, offset):
+ """
+ Search Experiments by experiment name with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param description
+ Experiment description to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- description
+ - limit
+ - offset
"""
pass
@@ -216,11 +369,44 @@ class Iface:
"""
Search Experiments by application id
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param applicationId
+ Application id to be matched
+ @deprecated
+ Instead use searchExperimentsByApplicationWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ - applicationId
+ """
+ pass
+
+ def searchExperimentsByApplicationWithPagination(self, gatewayId, userName, applicationId, limit, offset):
+ """
+ Search Experiments by application id with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param applicationId
+ Application id to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- applicationId
+ - limit
+ - offset
"""
pass
@@ -228,24 +414,95 @@ class Iface:
"""
Search Experiments by experiment status
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param experimentState
+ Experiement state to be matched
+ @deprecated
+ Instead use searchExperimentsByStatusWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ - experimentState
+ """
+ pass
+
+ def searchExperimentsByStatusWithPagination(self, gatewayId, userName, experimentState, limit, offset):
+ """
+ Search Experiments by experiment status with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param experimentState
+ Experiement state to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- experimentState
+ - limit
+ - offset
"""
pass
def searchExperimentsByCreationTime(self, gatewayId, userName, fromTime, toTime):
"""
- Search Experiments by experiment status
+ Search Experiments by experiment creation time
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param fromTime
+ Start time of the experiments creation time
+ @param toTime
+ End time of the experiement creation time
+ @deprecated
+ Instead use searchExperimentsByCreationTimeWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ - fromTime
+ - toTime
+ """
+ pass
+
+ def searchExperimentsByCreationTimeWithPagination(self, gatewayId, userName, fromTime, toTime, limit, offset):
+ """
+ Search Experiments by experiment creation time with pagination. Results will be sorted
+ based on creation time DESC
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param fromTime
+ Start time of the experiments creation time
+ @param toTime
+ End time of the experiement creation time
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- fromTime
- toTime
+ - limit
+ - offset
"""
pass
@@ -253,9 +510,32 @@ class Iface:
"""
Get all Experiments within a Project
+ @param projectId
+ Identifier of the project
+ @deprecated
+ Instead use getAllExperimentsInProjectWithPagination
+
+ Parameters:
+ - projectId
+ """
+ pass
+
+ def getAllExperimentsInProjectWithPagination(self, projectId, limit, offset):
+ """
+ Get all Experiments within project with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param projectId
+ Identifier of the project
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- projectId
+ - limit
+ - offset
"""
pass
@@ -263,10 +543,38 @@ class Iface:
"""
Get all Experiments by user
+ @param gatewayId
+ Identifier of the requesting gateway
+ @param userName
+ Username of the requested user
+ @deprecated
+ Instead use getAllUserExperimentsWithPagination
+
+ Parameters:
+ - gatewayId
+ - userName
+ """
+ pass
+
+ def getAllUserExperimentsWithPagination(self, gatewayId, userName, limit, offset):
+ """
+ Get all Experiments by user pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requesting gateway
+ @param userName
+ Username of the requested user
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
+ - limit
+ - offset
"""
pass
@@ -2358,7 +2666,7 @@ class Client(Iface):
*
* @param userName
* The Project Object described in the workspaceModel
- *
+ * @deprecated Instead use getAllUserProjectsWithPagination
*
Parameters:
@@ -2397,37 +2705,49 @@ class Client(Iface):
raise result.ase
raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllUserProjects failed: unknown result");
- def searchProjectsByProjectName(self, gatewayId, userName, projectName):
+ def getAllUserProjectsWithPagination(self, gatewayId, userName, limit, offset):
"""
- Get all Project for user by project name
-
+ * Get all Project by user with pagination. Results will be ordered based
+ * on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
Parameters:
- gatewayId
- userName
- - projectName
+ - limit
+ - offset
"""
- self.send_searchProjectsByProjectName(gatewayId, userName, projectName)
- return self.recv_searchProjectsByProjectName()
+ self.send_getAllUserProjectsWithPagination(gatewayId, userName, limit, offset)
+ return self.recv_getAllUserProjectsWithPagination()
- def send_searchProjectsByProjectName(self, gatewayId, userName, projectName):
- self._oprot.writeMessageBegin('searchProjectsByProjectName', TMessageType.CALL, self._seqid)
- args = searchProjectsByProjectName_args()
+ def send_getAllUserProjectsWithPagination(self, gatewayId, userName, limit, offset):
+ self._oprot.writeMessageBegin('getAllUserProjectsWithPagination', TMessageType.CALL, self._seqid)
+ args = getAllUserProjectsWithPagination_args()
args.gatewayId = gatewayId
args.userName = userName
- args.projectName = projectName
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchProjectsByProjectName(self):
+ def recv_getAllUserProjectsWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchProjectsByProjectName_result()
+ result = getAllUserProjectsWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2438,39 +2758,46 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchProjectsByProjectName failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllUserProjectsWithPagination failed: unknown result");
- def searchProjectsByProjectDesc(self, gatewayId, userName, description):
+ def searchProjectsByProjectName(self, gatewayId, userName, projectName):
"""
- Get all Project for user by project description
+ Get all Project for user by project name
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param projectName
+ The name of the project on which the results to be fetched
+ @deprecated Instead use searchProjectsByProjectNameWithPagination
Parameters:
- gatewayId
- userName
- - description
+ - projectName
"""
- self.send_searchProjectsByProjectDesc(gatewayId, userName, description)
- return self.recv_searchProjectsByProjectDesc()
+ self.send_searchProjectsByProjectName(gatewayId, userName, projectName)
+ return self.recv_searchProjectsByProjectName()
- def send_searchProjectsByProjectDesc(self, gatewayId, userName, description):
- self._oprot.writeMessageBegin('searchProjectsByProjectDesc', TMessageType.CALL, self._seqid)
- args = searchProjectsByProjectDesc_args()
+ def send_searchProjectsByProjectName(self, gatewayId, userName, projectName):
+ self._oprot.writeMessageBegin('searchProjectsByProjectName', TMessageType.CALL, self._seqid)
+ args = searchProjectsByProjectName_args()
args.gatewayId = gatewayId
args.userName = userName
- args.description = description
+ args.projectName = projectName
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchProjectsByProjectDesc(self):
+ def recv_searchProjectsByProjectName(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchProjectsByProjectDesc_result()
+ result = searchProjectsByProjectName_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2481,39 +2808,54 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchProjectsByProjectDesc failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchProjectsByProjectName failed: unknown result");
- def searchExperimentsByName(self, gatewayId, userName, expName):
+ def searchProjectsByProjectNameWithPagination(self, gatewayId, userName, projectName, limit, offset):
"""
- Search Experiments by experiment name
+ Get all Project for user by project name with pagination.Results will be ordered based
+ on creation time DESC
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param projectName
+ The name of the project on which the results to be fetched
+ @param limit
+ The amount results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- - expName
+ - projectName
+ - limit
+ - offset
"""
- self.send_searchExperimentsByName(gatewayId, userName, expName)
- return self.recv_searchExperimentsByName()
+ self.send_searchProjectsByProjectNameWithPagination(gatewayId, userName, projectName, limit, offset)
+ return self.recv_searchProjectsByProjectNameWithPagination()
- def send_searchExperimentsByName(self, gatewayId, userName, expName):
- self._oprot.writeMessageBegin('searchExperimentsByName', TMessageType.CALL, self._seqid)
- args = searchExperimentsByName_args()
+ def send_searchProjectsByProjectNameWithPagination(self, gatewayId, userName, projectName, limit, offset):
+ self._oprot.writeMessageBegin('searchProjectsByProjectNameWithPagination', TMessageType.CALL, self._seqid)
+ args = searchProjectsByProjectNameWithPagination_args()
args.gatewayId = gatewayId
args.userName = userName
- args.expName = expName
+ args.projectName = projectName
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchExperimentsByName(self):
+ def recv_searchProjectsByProjectNameWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchExperimentsByName_result()
+ result = searchProjectsByProjectNameWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2524,24 +2866,30 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByName failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchProjectsByProjectNameWithPagination failed: unknown result");
- def searchExperimentsByDesc(self, gatewayId, userName, description):
+ def searchProjectsByProjectDesc(self, gatewayId, userName, description):
"""
- Search Experiments by experiment name
-
+ Get all Project for user by project description
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param description
+ The description to be matched
+ @deprecated Instead use searchProjectsByProjectDescWithPagination
Parameters:
- gatewayId
- userName
- description
"""
- self.send_searchExperimentsByDesc(gatewayId, userName, description)
- return self.recv_searchExperimentsByDesc()
+ self.send_searchProjectsByProjectDesc(gatewayId, userName, description)
+ return self.recv_searchProjectsByProjectDesc()
- def send_searchExperimentsByDesc(self, gatewayId, userName, description):
- self._oprot.writeMessageBegin('searchExperimentsByDesc', TMessageType.CALL, self._seqid)
- args = searchExperimentsByDesc_args()
+ def send_searchProjectsByProjectDesc(self, gatewayId, userName, description):
+ self._oprot.writeMessageBegin('searchProjectsByProjectDesc', TMessageType.CALL, self._seqid)
+ args = searchProjectsByProjectDesc_args()
args.gatewayId = gatewayId
args.userName = userName
args.description = description
@@ -2549,14 +2897,14 @@ class Client(Iface):
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchExperimentsByDesc(self):
+ def recv_searchProjectsByProjectDesc(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchExperimentsByDesc_result()
+ result = searchProjectsByProjectDesc_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2567,39 +2915,54 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByDesc failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchProjectsByProjectDesc failed: unknown result");
- def searchExperimentsByApplication(self, gatewayId, userName, applicationId):
+ def searchProjectsByProjectDescWithPagination(self, gatewayId, userName, description, limit, offset):
"""
- Search Experiments by application id
+ Search and get all Projects for user by project description with pagination. Results
+ will be ordered based on creation time DESC
+ @param gatewayId
+ The identifier for the requested gateway.
+ @param userName
+ The identifier of the user
+ @param description
+ The description to be matched
+ @param limit
+ The amount results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- - applicationId
+ - description
+ - limit
+ - offset
"""
- self.send_searchExperimentsByApplication(gatewayId, userName, applicationId)
- return self.recv_searchExperimentsByApplication()
+ self.send_searchProjectsByProjectDescWithPagination(gatewayId, userName, description, limit, offset)
+ return self.recv_searchProjectsByProjectDescWithPagination()
- def send_searchExperimentsByApplication(self, gatewayId, userName, applicationId):
- self._oprot.writeMessageBegin('searchExperimentsByApplication', TMessageType.CALL, self._seqid)
- args = searchExperimentsByApplication_args()
+ def send_searchProjectsByProjectDescWithPagination(self, gatewayId, userName, description, limit, offset):
+ self._oprot.writeMessageBegin('searchProjectsByProjectDescWithPagination', TMessageType.CALL, self._seqid)
+ args = searchProjectsByProjectDescWithPagination_args()
args.gatewayId = gatewayId
args.userName = userName
- args.applicationId = applicationId
+ args.description = description
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchExperimentsByApplication(self):
+ def recv_searchProjectsByProjectDescWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchExperimentsByApplication_result()
+ result = searchProjectsByProjectDescWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2610,39 +2973,48 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByApplication failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchProjectsByProjectDescWithPagination failed: unknown result");
- def searchExperimentsByStatus(self, gatewayId, userName, experimentState):
+ def searchExperimentsByName(self, gatewayId, userName, expName):
"""
- Search Experiments by experiment status
+ Search Experiments by experiment name
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param useNname
+ Username of the requested user
+ @param expName
+ Experiment name to be matched
+ @deprecated
+ Instead use searchExperimentsByNameWithPagination
Parameters:
- gatewayId
- userName
- - experimentState
+ - expName
"""
- self.send_searchExperimentsByStatus(gatewayId, userName, experimentState)
- return self.recv_searchExperimentsByStatus()
+ self.send_searchExperimentsByName(gatewayId, userName, expName)
+ return self.recv_searchExperimentsByName()
- def send_searchExperimentsByStatus(self, gatewayId, userName, experimentState):
- self._oprot.writeMessageBegin('searchExperimentsByStatus', TMessageType.CALL, self._seqid)
- args = searchExperimentsByStatus_args()
- args.gatewayId = gatewayId
+ def send_searchExperimentsByName(self, gatewayId, userName, expName):
+ self._oprot.writeMessageBegin('searchExperimentsByName', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByName_args()
+ args.gatewayId = gatewayId
args.userName = userName
- args.experimentState = experimentState
+ args.expName = expName
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchExperimentsByStatus(self):
+ def recv_searchExperimentsByName(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchExperimentsByStatus_result()
+ result = searchExperimentsByName_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2653,41 +3025,54 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByStatus failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByName failed: unknown result");
- def searchExperimentsByCreationTime(self, gatewayId, userName, fromTime, toTime):
+ def searchExperimentsByNameWithPagination(self, gatewayId, userName, expName, limit, offset):
"""
- Search Experiments by experiment status
+ Search Experiments by experiment name with pagination. Results will be sorted
+ based on creation time DESC
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param expName
+ Experiment name to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
- - fromTime
- - toTime
+ - expName
+ - limit
+ - offset
"""
- self.send_searchExperimentsByCreationTime(gatewayId, userName, fromTime, toTime)
- return self.recv_searchExperimentsByCreationTime()
+ self.send_searchExperimentsByNameWithPagination(gatewayId, userName, expName, limit, offset)
+ return self.recv_searchExperimentsByNameWithPagination()
- def send_searchExperimentsByCreationTime(self, gatewayId, userName, fromTime, toTime):
- self._oprot.writeMessageBegin('searchExperimentsByCreationTime', TMessageType.CALL, self._seqid)
- args = searchExperimentsByCreationTime_args()
+ def send_searchExperimentsByNameWithPagination(self, gatewayId, userName, expName, limit, offset):
+ self._oprot.writeMessageBegin('searchExperimentsByNameWithPagination', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByNameWithPagination_args()
args.gatewayId = gatewayId
args.userName = userName
- args.fromTime = fromTime
- args.toTime = toTime
+ args.expName = expName
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_searchExperimentsByCreationTime(self):
+ def recv_searchExperimentsByNameWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = searchExperimentsByCreationTime_result()
+ result = searchExperimentsByNameWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2698,35 +3083,47 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByCreationTime failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByNameWithPagination failed: unknown result");
- def getAllExperimentsInProject(self, projectId):
+ def searchExperimentsByDesc(self, gatewayId, userName, description):
"""
- Get all Experiments within a Project
+ Search Experiments by experiment name
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param description
+ Experiment description to be matched
+ @deprecated
+ Instead use searchExperimentsByDescWithPagination
Parameters:
- - projectId
+ - gatewayId
+ - userName
+ - description
"""
- self.send_getAllExperimentsInProject(projectId)
- return self.recv_getAllExperimentsInProject()
+ self.send_searchExperimentsByDesc(gatewayId, userName, description)
+ return self.recv_searchExperimentsByDesc()
- def send_getAllExperimentsInProject(self, projectId):
- self._oprot.writeMessageBegin('getAllExperimentsInProject', TMessageType.CALL, self._seqid)
- args = getAllExperimentsInProject_args()
- args.projectId = projectId
+ def send_searchExperimentsByDesc(self, gatewayId, userName, description):
+ self._oprot.writeMessageBegin('searchExperimentsByDesc', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByDesc_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.description = description
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getAllExperimentsInProject(self):
+ def recv_searchExperimentsByDesc(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getAllExperimentsInProject_result()
+ result = searchExperimentsByDesc_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2737,39 +3134,54 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- if result.pnfe is not None:
- raise result.pnfe
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllExperimentsInProject failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByDesc failed: unknown result");
- def getAllUserExperiments(self, gatewayId, userName):
+ def searchExperimentsByDescWithPagination(self, gatewayId, userName, description, limit, offset):
"""
- Get all Experiments by user
+ Search Experiments by experiment name with pagination. Results will be sorted
+ based on creation time DESC
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param description
+ Experiment description to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- gatewayId
- userName
+ - description
+ - limit
+ - offset
"""
- self.send_getAllUserExperiments(gatewayId, userName)
- return self.recv_getAllUserExperiments()
+ self.send_searchExperimentsByDescWithPagination(gatewayId, userName, description, limit, offset)
+ return self.recv_searchExperimentsByDescWithPagination()
- def send_getAllUserExperiments(self, gatewayId, userName):
- self._oprot.writeMessageBegin('getAllUserExperiments', TMessageType.CALL, self._seqid)
- args = getAllUserExperiments_args()
+ def send_searchExperimentsByDescWithPagination(self, gatewayId, userName, description, limit, offset):
+ self._oprot.writeMessageBegin('searchExperimentsByDescWithPagination', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByDescWithPagination_args()
args.gatewayId = gatewayId
args.userName = userName
+ args.description = description
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getAllUserExperiments(self):
+ def recv_searchExperimentsByDescWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getAllUserExperiments_result()
+ result = searchExperimentsByDescWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2780,68 +3192,47 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllUserExperiments failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByDescWithPagination failed: unknown result");
- def createExperiment(self, gatewayId, experiment):
+ def searchExperimentsByApplication(self, gatewayId, userName, applicationId):
"""
- Create an experiment for the specified user belonging to the gateway. The gateway identity is not explicitly passed
- but inferred from the authentication header. This experiment is just a persistent place holder. The client
- has to subsequently configure and launch the created experiment. No action is taken on Airavata Server except
- registering the experiment in a persistent store.
-
- @param basicExperimentMetadata
- The create experiment will require the basic experiment metadata like the name and description, intended user,
- the gateway identifer and if the experiment should be shared public by defualt. During the creation of an experiment
- the ExperimentMetadata is a required field.
-
- @return
- The server-side generated airavata experiment globally unique identifier.
-
- @throws org.apache.airavata.model.error.InvalidRequestException
- For any incorrect forming of the request itself.
-
- @throws org.apache.airavata.model.error.AiravataClientException
- The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
-
- UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
- step, then Airavata Registry will not have a provenance area setup. The client has to follow
- gateway registration steps and retry this request.
-
- AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
- For now this is a place holder.
-
- INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
- is implemented, the authorization will be more substantial.
-
- @throws org.apache.airavata.model.error.AiravataSystemException
- This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
- rather an Airavata Administrator will be notified to take corrective action.
+ Search Experiments by application id
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param applicationId
+ Application id to be matched
+ @deprecated
+ Instead use searchExperimentsByApplicationWithPagination
Parameters:
- gatewayId
- - experiment
+ - userName
+ - applicationId
"""
- self.send_createExperiment(gatewayId, experiment)
- return self.recv_createExperiment()
+ self.send_searchExperimentsByApplication(gatewayId, userName, applicationId)
+ return self.recv_searchExperimentsByApplication()
- def send_createExperiment(self, gatewayId, experiment):
- self._oprot.writeMessageBegin('createExperiment', TMessageType.CALL, self._seqid)
- args = createExperiment_args()
+ def send_searchExperimentsByApplication(self, gatewayId, userName, applicationId):
+ self._oprot.writeMessageBegin('searchExperimentsByApplication', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByApplication_args()
args.gatewayId = gatewayId
- args.experiment = experiment
+ args.userName = userName
+ args.applicationId = applicationId
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_createExperiment(self):
+ def recv_searchExperimentsByApplication(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = createExperiment_result()
+ result = searchExperimentsByApplication_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -2852,585 +3243,571 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "createExperiment failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByApplication failed: unknown result");
- def getExperiment(self, airavataExperimentId):
+ def searchExperimentsByApplicationWithPagination(self, gatewayId, userName, applicationId, limit, offset):
"""
- Fetch previously created experiment metadata.
-
- @param airavataExperimentId
- The identifier for the requested experiment. This is returned during the create experiment step.
-
- @return experimentMetada
- This method will return the previously stored experiment metadata.
-
- @throws org.apache.airavata.model.error.InvalidRequestException
- For any incorrect forming of the request itself.
-
- @throws org.apache.airavata.model.error.ExperimentNotFoundException
- If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
-
- @throws org.apache.airavata.model.error.AiravataClientException
- The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
-
- UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
- step, then Airavata Registry will not have a provenance area setup. The client has to follow
- gateway registration steps and retry this request.
-
- AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
- For now this is a place holder.
-
- INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
- is implemented, the authorization will be more substantial.
-
- @throws org.apache.airavata.model.error.AiravataSystemException
- This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
- rather an Airavata Administrator will be notified to take corrective action.
+ Search Experiments by application id with pagination. Results will be sorted
+ based on creation time DESC
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param applicationId
+ Application id to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- - airavataExperimentId
+ - gatewayId
+ - userName
+ - applicationId
+ - limit
+ - offset
"""
- self.send_getExperiment(airavataExperimentId)
- return self.recv_getExperiment()
+ self.send_searchExperimentsByApplicationWithPagination(gatewayId, userName, applicationId, limit, offset)
+ return self.recv_searchExperimentsByApplicationWithPagination()
- def send_getExperiment(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getExperiment', TMessageType.CALL, self._seqid)
- args = getExperiment_args()
- args.airavataExperimentId = airavataExperimentId
+ def send_searchExperimentsByApplicationWithPagination(self, gatewayId, userName, applicationId, limit, offset):
+ self._oprot.writeMessageBegin('searchExperimentsByApplicationWithPagination', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByApplicationWithPagination_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.applicationId = applicationId
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getExperiment(self):
+ def recv_searchExperimentsByApplicationWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getExperiment_result()
+ result = searchExperimentsByApplicationWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getExperiment failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByApplicationWithPagination failed: unknown result");
- def updateExperiment(self, airavataExperimentId, experiment):
+ def searchExperimentsByStatus(self, gatewayId, userName, experimentState):
"""
- Configure a previously created experiment with required inputs, scheduling and other quality of service
- parameters. This method only updates the experiment object within the registry. The experiment has to be launched
- to make it actionable by the server.
-
- @param airavataExperimentId
- The identifier for the requested experiment. This is returned during the create experiment step.
-
- @param experimentConfigurationData
- The configuration information of the experiment with application input parameters, computational resource scheduling
- information, special input output handling and additional quality of service parameters.
-
- @return
- This method call does not have a return value.
-
- @throws org.apache.airavata.model.error.InvalidRequestException
- For any incorrect forming of the request itself.
-
- @throws org.apache.airavata.model.error.ExperimentNotFoundException
- If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
-
- @throws org.apache.airavata.model.error.AiravataClientException
- The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
-
- UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
- step, then Airavata Registry will not have a provenance area setup. The client has to follow
- gateway registration steps and retry this request.
-
- AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
- For now this is a place holder.
-
- INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
- is implemented, the authorization will be more substantial.
-
- @throws org.apache.airavata.model.error.AiravataSystemException
- This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
- rather an Airavata Administrator will be notified to take corrective action.
+ Search Experiments by experiment status
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param experimentState
+ Experiement state to be matched
+ @deprecated
+ Instead use searchExperimentsByStatusWithPagination
Parameters:
- - airavataExperimentId
- - experiment
+ - gatewayId
+ - userName
+ - experimentState
"""
- self.send_updateExperiment(airavataExperimentId, experiment)
- self.recv_updateExperiment()
+ self.send_searchExperimentsByStatus(gatewayId, userName, experimentState)
+ return self.recv_searchExperimentsByStatus()
- def send_updateExperiment(self, airavataExperimentId, experiment):
- self._oprot.writeMessageBegin('updateExperiment', TMessageType.CALL, self._seqid)
- args = updateExperiment_args()
- args.airavataExperimentId = airavataExperimentId
- args.experiment = experiment
+ def send_searchExperimentsByStatus(self, gatewayId, userName, experimentState):
+ self._oprot.writeMessageBegin('searchExperimentsByStatus', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByStatus_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.experimentState = experimentState
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_updateExperiment(self):
+ def recv_searchExperimentsByStatus(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = updateExperiment_result()
+ result = searchExperimentsByStatus_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
+ if result.success is not None:
+ return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- return
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByStatus failed: unknown result");
- def updateExperimentConfiguration(self, airavataExperimentId, userConfiguration):
+ def searchExperimentsByStatusWithPagination(self, gatewayId, userName, experimentState, limit, offset):
"""
+ Search Experiments by experiment status with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param experimentState
+ Experiement state to be matched
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
+
Parameters:
- - airavataExperimentId
- - userConfiguration
+ - gatewayId
+ - userName
+ - experimentState
+ - limit
+ - offset
"""
- self.send_updateExperimentConfiguration(airavataExperimentId, userConfiguration)
- self.recv_updateExperimentConfiguration()
+ self.send_searchExperimentsByStatusWithPagination(gatewayId, userName, experimentState, limit, offset)
+ return self.recv_searchExperimentsByStatusWithPagination()
- def send_updateExperimentConfiguration(self, airavataExperimentId, userConfiguration):
- self._oprot.writeMessageBegin('updateExperimentConfiguration', TMessageType.CALL, self._seqid)
- args = updateExperimentConfiguration_args()
- args.airavataExperimentId = airavataExperimentId
- args.userConfiguration = userConfiguration
+ def send_searchExperimentsByStatusWithPagination(self, gatewayId, userName, experimentState, limit, offset):
+ self._oprot.writeMessageBegin('searchExperimentsByStatusWithPagination', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByStatusWithPagination_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.experimentState = experimentState
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_updateExperimentConfiguration(self):
+ def recv_searchExperimentsByStatusWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = updateExperimentConfiguration_result()
+ result = searchExperimentsByStatusWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
- return
+ if result.success is not None:
+ return result.success
+ if result.ire is not None:
+ raise result.ire
+ if result.ace is not None:
+ raise result.ace
+ if result.ase is not None:
+ raise result.ase
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByStatusWithPagination failed: unknown result");
- def updateResourceScheduleing(self, airavataExperimentId, resourceScheduling):
+ def searchExperimentsByCreationTime(self, gatewayId, userName, fromTime, toTime):
"""
+ Search Experiments by experiment creation time
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param fromTime
+ Start time of the experiments creation time
+ @param toTime
+ End time of the experiement creation time
+ @deprecated
+ Instead use searchExperimentsByCreationTimeWithPagination
+
Parameters:
- - airavataExperimentId
- - resourceScheduling
+ - gatewayId
+ - userName
+ - fromTime
+ - toTime
"""
- self.send_updateResourceScheduleing(airavataExperimentId, resourceScheduling)
- self.recv_updateResourceScheduleing()
+ self.send_searchExperimentsByCreationTime(gatewayId, userName, fromTime, toTime)
+ return self.recv_searchExperimentsByCreationTime()
- def send_updateResourceScheduleing(self, airavataExperimentId, resourceScheduling):
- self._oprot.writeMessageBegin('updateResourceScheduleing', TMessageType.CALL, self._seqid)
- args = updateResourceScheduleing_args()
- args.airavataExperimentId = airavataExperimentId
- args.resourceScheduling = resourceScheduling
+ def send_searchExperimentsByCreationTime(self, gatewayId, userName, fromTime, toTime):
+ self._oprot.writeMessageBegin('searchExperimentsByCreationTime', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByCreationTime_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.fromTime = fromTime
+ args.toTime = toTime
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_updateResourceScheduleing(self):
+ def recv_searchExperimentsByCreationTime(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = updateResourceScheduleing_result()
+ result = searchExperimentsByCreationTime_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
- return
+ if result.success is not None:
+ return result.success
+ if result.ire is not None:
+ raise result.ire
+ if result.ace is not None:
+ raise result.ace
+ if result.ase is not None:
+ raise result.ase
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByCreationTime failed: unknown result");
- def validateExperiment(self, airavataExperimentId):
+ def searchExperimentsByCreationTimeWithPagination(self, gatewayId, userName, fromTime, toTime, limit, offset):
"""
- *
- * Validate experiment configuration. A true in general indicates, the experiment is ready to be launched.
- *
- * @param experimentID
- * @return sucess/failure
- *
- *
+ Search Experiments by experiment creation time with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requested gateway
+ @param userName
+ Username of the requested user
+ @param fromTime
+ Start time of the experiments creation time
+ @param toTime
+ End time of the experiement creation time
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
Parameters:
- - airavataExperimentId
+ - gatewayId
+ - userName
+ - fromTime
+ - toTime
+ - limit
+ - offset
"""
- self.send_validateExperiment(airavataExperimentId)
- return self.recv_validateExperiment()
+ self.send_searchExperimentsByCreationTimeWithPagination(gatewayId, userName, fromTime, toTime, limit, offset)
+ return self.recv_searchExperimentsByCreationTimeWithPagination()
- def send_validateExperiment(self, airavataExperimentId):
- self._oprot.writeMessageBegin('validateExperiment', TMessageType.CALL, self._seqid)
- args = validateExperiment_args()
- args.airavataExperimentId = airavataExperimentId
+ def send_searchExperimentsByCreationTimeWithPagination(self, gatewayId, userName, fromTime, toTime, limit, offset):
+ self._oprot.writeMessageBegin('searchExperimentsByCreationTimeWithPagination', TMessageType.CALL, self._seqid)
+ args = searchExperimentsByCreationTimeWithPagination_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.fromTime = fromTime
+ args.toTime = toTime
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_validateExperiment(self):
+ def recv_searchExperimentsByCreationTimeWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = validateExperiment_result()
+ result = searchExperimentsByCreationTimeWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "validateExperiment failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "searchExperimentsByCreationTimeWithPagination failed: unknown result");
- def launchExperiment(self, airavataExperimentId, airavataCredStoreToken):
+ def getAllExperimentsInProject(self, projectId):
"""
- Launch a previously created and configured experiment. Airavata Server will then start processing the request and appropriate
- notifications and intermediate and output data will be subsequently available for this experiment.
-
- @param airavataExperimentId
- The identifier for the requested experiment. This is returned during the create experiment step.
-
- @param airavataCredStoreToken:
- A requirement to execute experiments within Airavata is to first register the targeted remote computational account
- credentials with Airavata Credential Store. The administrative API (related to credential store) will return a
- generated token associated with the registered credentials. The client has to security posses this token id and is
- required to pass it to Airavata Server for all execution requests.
- Note: At this point only the credential store token is required so the string is directly passed here. In future if
- if more security credentials are enables, then the structure ExecutionSecurityParameters should be used.
- Note: This parameter is not persisted within Airavata Registry for security reasons.
-
- @return
- This method call does not have a return value.
-
- @throws org.apache.airavata.model.error.InvalidRequestException
- For any incorrect forming of the request itself.
-
- @throws org.apache.airavata.model.error.ExperimentNotFoundException
- If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
-
- @throws org.apache.airavata.model.error.AiravataClientException
- The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
-
- UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
- step, then Airavata Registry will not have a provenance area setup. The client has to follow
- gateway registration steps and retry this request.
-
- AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
- For now this is a place holder.
-
- INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
- is implemented, the authorization will be more substantial.
-
- @throws org.apache.airavata.model.error.AiravataSystemException
- This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
- rather an Airavata Administrator will be notified to take corrective action.
+ Get all Experiments within a Project
+ @param projectId
+ Identifier of the project
+ @deprecated
+ Instead use getAllExperimentsInProjectWithPagination
Parameters:
- - airavataExperimentId
- - airavataCredStoreToken
+ - projectId
"""
- self.send_launchExperiment(airavataExperimentId, airavataCredStoreToken)
- self.recv_launchExperiment()
+ self.send_getAllExperimentsInProject(projectId)
+ return self.recv_getAllExperimentsInProject()
- def send_launchExperiment(self, airavataExperimentId, airavataCredStoreToken):
- self._oprot.writeMessageBegin('launchExperiment', TMessageType.CALL, self._seqid)
- args = launchExperiment_args()
- args.airavataExperimentId = airavataExperimentId
- args.airavataCredStoreToken = airavataCredStoreToken
+ def send_getAllExperimentsInProject(self, projectId):
+ self._oprot.writeMessageBegin('getAllExperimentsInProject', TMessageType.CALL, self._seqid)
+ args = getAllExperimentsInProject_args()
+ args.projectId = projectId
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_launchExperiment(self):
+ def recv_getAllExperimentsInProject(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = launchExperiment_result()
+ result = getAllExperimentsInProject_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
+ if result.success is not None:
+ return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- if result.lve is not None:
- raise result.lve
- return
+ if result.pnfe is not None:
+ raise result.pnfe
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllExperimentsInProject failed: unknown result");
- def getExperimentStatus(self, airavataExperimentId):
+ def getAllExperimentsInProjectWithPagination(self, projectId, limit, offset):
"""
+ Get all Experiments within project with pagination. Results will be sorted
+ based on creation time DESC
+
+ @param projectId
+ Identifier of the project
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
+
Parameters:
- - airavataExperimentId
+ - projectId
+ - limit
+ - offset
"""
- self.send_getExperimentStatus(airavataExperimentId)
- return self.recv_getExperimentStatus()
+ self.send_getAllExperimentsInProjectWithPagination(projectId, limit, offset)
+ return self.recv_getAllExperimentsInProjectWithPagination()
- def send_getExperimentStatus(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getExperimentStatus', TMessageType.CALL, self._seqid)
- args = getExperimentStatus_args()
- args.airavataExperimentId = airavataExperimentId
+ def send_getAllExperimentsInProjectWithPagination(self, projectId, limit, offset):
+ self._oprot.writeMessageBegin('getAllExperimentsInProjectWithPagination', TMessageType.CALL, self._seqid)
+ args = getAllExperimentsInProjectWithPagination_args()
+ args.projectId = projectId
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getExperimentStatus(self):
+ def recv_getAllExperimentsInProjectWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getExperimentStatus_result()
+ result = getAllExperimentsInProjectWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getExperimentStatus failed: unknown result");
+ if result.pnfe is not None:
+ raise result.pnfe
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllExperimentsInProjectWithPagination failed: unknown result");
- def getExperimentOutputs(self, airavataExperimentId):
+ def getAllUserExperiments(self, gatewayId, userName):
"""
+ Get all Experiments by user
+
+ @param gatewayId
+ Identifier of the requesting gateway
+ @param userName
+ Username of the requested user
+ @deprecated
+ Instead use getAllUserExperimentsWithPagination
+
Parameters:
- - airavataExperimentId
+ - gatewayId
+ - userName
"""
- self.send_getExperimentOutputs(airavataExperimentId)
- return self.recv_getExperimentOutputs()
+ self.send_getAllUserExperiments(gatewayId, userName)
+ return self.recv_getAllUserExperiments()
- def send_getExperimentOutputs(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getExperimentOutputs', TMessageType.CALL, self._seqid)
- args = getExperimentOutputs_args()
- args.airavataExperimentId = airavataExperimentId
+ def send_getAllUserExperiments(self, gatewayId, userName):
+ self._oprot.writeMessageBegin('getAllUserExperiments', TMessageType.CALL, self._seqid)
+ args = getAllUserExperiments_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getExperimentOutputs(self):
+ def recv_getAllUserExperiments(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getExperimentOutputs_result()
+ result = getAllUserExperiments_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getExperimentOutputs failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllUserExperiments failed: unknown result");
- def getIntermediateOutputs(self, airavataExperimentId):
+ def getAllUserExperimentsWithPagination(self, gatewayId, userName, limit, offset):
"""
+ Get all Experiments by user pagination. Results will be sorted
+ based on creation time DESC
+
+ @param gatewayId
+ Identifier of the requesting gateway
+ @param userName
+ Username of the requested user
+ @param limit
+ Amount of results to be fetched
+ @param offset
+ The starting point of the results to be fetched
+
Parameters:
- - airavataExperimentId
+ - gatewayId
+ - userName
+ - limit
+ - offset
"""
- self.send_getIntermediateOutputs(airavataExperimentId)
- return self.recv_getIntermediateOutputs()
+ self.send_getAllUserExperimentsWithPagination(gatewayId, userName, limit, offset)
+ return self.recv_getAllUserExperimentsWithPagination()
- def send_getIntermediateOutputs(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getIntermediateOutputs', TMessageType.CALL, self._seqid)
- args = getIntermediateOutputs_args()
- args.airavataExperimentId = airavataExperimentId
+ def send_getAllUserExperimentsWithPagination(self, gatewayId, userName, limit, offset):
+ self._oprot.writeMessageBegin('getAllUserExperimentsWithPagination', TMessageType.CALL, self._seqid)
+ args = getAllUserExperimentsWithPagination_args()
+ args.gatewayId = gatewayId
+ args.userName = userName
+ args.limit = limit
+ args.offset = offset
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getIntermediateOutputs(self):
+ def recv_getAllUserExperimentsWithPagination(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getIntermediateOutputs_result()
+ result = getAllUserExperimentsWithPagination_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getIntermediateOutputs failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllUserExperimentsWithPagination failed: unknown result");
- def getJobStatuses(self, airavataExperimentId):
- """
- Parameters:
- - airavataExperimentId
+ def createExperiment(self, gatewayId, experiment):
"""
- self.send_getJobStatuses(airavataExperimentId)
- return self.recv_getJobStatuses()
+ Create an experiment for the specified user belonging to the gateway. The gateway identity is not explicitly passed
+ but inferred from the authentication header. This experiment is just a persistent place holder. The client
+ has to subsequently configure and launch the created experiment. No action is taken on Airavata Server except
+ registering the experiment in a persistent store.
- def send_getJobStatuses(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getJobStatuses', TMessageType.CALL, self._seqid)
- args = getJobStatuses_args()
- args.airavataExperimentId = airavataExperimentId
- args.write(self._oprot)
- self._oprot.writeMessageEnd()
- self._oprot.trans.flush()
+ @param basicExperimentMetadata
+ The create experiment will require the basic experiment metadata like the name and description, intended user,
+ the gateway identifer and if the experiment should be shared public by defualt. During the creation of an experiment
+ the ExperimentMetadata is a required field.
- def recv_getJobStatuses(self):
- (fname, mtype, rseqid) = self._iprot.readMessageBegin()
- if mtype == TMessageType.EXCEPTION:
- x = TApplicationException()
- x.read(self._iprot)
- self._iprot.readMessageEnd()
- raise x
- result = getJobStatuses_result()
- result.read(self._iprot)
- self._iprot.readMessageEnd()
- if result.success is not None:
- return result.success
- if result.ire is not None:
- raise result.ire
- if result.enf is not None:
- raise result.enf
- if result.ace is not None:
- raise result.ace
- if result.ase is not None:
- raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getJobStatuses failed: unknown result");
+ @return
+ The server-side generated airavata experiment globally unique identifier.
- def getJobDetails(self, airavataExperimentId):
- """
- Parameters:
- - airavataExperimentId
- """
- self.send_getJobDetails(airavataExperimentId)
- return self.recv_getJobDetails()
+ @throws org.apache.airavata.model.error.InvalidRequestException
+ For any incorrect forming of the request itself.
- def send_getJobDetails(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getJobDetails', TMessageType.CALL, self._seqid)
- args = getJobDetails_args()
- args.airavataExperimentId = airavataExperimentId
- args.write(self._oprot)
- self._oprot.writeMessageEnd()
- self._oprot.trans.flush()
+ @throws org.apache.airavata.model.error.AiravataClientException
+ The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+
+ UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+ step, then Airavata Registry will not have a provenance area setup. The client has to follow
+ gateway registration steps and retry this request.
+
+ AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ For now this is a place holder.
+
+ INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+ is implemented, the authorization will be more substantial.
+
+ @throws org.apache.airavata.model.error.AiravataSystemException
+ This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+ rather an Airavata Administrator will be notified to take corrective action.
- def recv_getJobDetails(self):
- (fname, mtype, rseqid) = self._iprot.readMessageBegin()
- if mtype == TMessageType.EXCEPTION:
- x = TApplicationException()
- x.read(self._iprot)
- self._iprot.readMessageEnd()
- raise x
- result = getJobDetails_result()
- result.read(self._iprot)
- self._iprot.readMessageEnd()
- if result.success is not None:
- return result.success
- if result.ire is not None:
- raise result.ire
- if result.enf is not None:
- raise result.enf
- if result.ace is not None:
- raise result.ace
- if result.ase is not None:
- raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getJobDetails failed: unknown result");
- def getDataTransferDetails(self, airavataExperimentId):
- """
Parameters:
- - airavataExperimentId
+ - gatewayId
+ - experiment
"""
- self.send_getDataTransferDetails(airavataExperimentId)
- return self.recv_getDataTransferDetails()
+ self.send_createExperiment(gatewayId, experiment)
+ return self.recv_createExperiment()
- def send_getDataTransferDetails(self, airavataExperimentId):
- self._oprot.writeMessageBegin('getDataTransferDetails', TMessageType.CALL, self._seqid)
- args = getDataTransferDetails_args()
- args.airavataExperimentId = airavataExperimentId
+ def send_createExperiment(self, gatewayId, experiment):
+ self._oprot.writeMessageBegin('createExperiment', TMessageType.CALL, self._seqid)
+ args = createExperiment_args()
+ args.gatewayId = gatewayId
+ args.experiment = experiment
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getDataTransferDetails(self):
+ def recv_createExperiment(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getDataTransferDetails_result()
+ result = createExperiment_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
- if result.enf is not None:
- raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getDataTransferDetails failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "createExperiment failed: unknown result");
- def cloneExperiment(self, existingExperimentID, newExperimentName):
+ def getExperiment(self, airavataExperimentId):
"""
- Clone an specified experiment with a new name. A copy of the experiment configuration is made and is persisted with new metadata.
- The client has to subsequently update this configuration if needed and launch the cloned experiment.
-
- @param newExperimentName
- experiment name that should be used in the cloned experiment
+ Fetch previously created experiment metadata.
- @param updatedExperiment
- Once an experiment is cloned, to disambiguate, the users are suggested to provide new metadata. This will again require
- the basic experiment metadata like the name and description, intended user, the gateway identifier and if the experiment
- should be shared public by default.
+ @param airavataExperimentId
+ The identifier for the requested experiment. This is returned during the create experiment step.
- @return
- The server-side generated airavata experiment globally unique identifier for the newly cloned experiment.
+ @return experimentMetada
+ This method will return the previously stored experiment metadata.
@throws org.apache.airavata.model.error.InvalidRequestException
For any incorrect forming of the request itself.
@@ -3457,29 +3834,27 @@ class Client(Iface):
Parameters:
- - existingExperimentID
- - newExperimentName
+ - airavataExperimentId
"""
- self.send_cloneExperiment(existingExperimentID, newExperimentName)
- return self.recv_cloneExperiment()
+ self.send_getExperiment(airavataExperimentId)
+ return self.recv_getExperiment()
- def send_cloneExperiment(self, existingExperimentID, newExperimentName):
- self._oprot.writeMessageBegin('cloneExperiment', TMessageType.CALL, self._seqid)
- args = cloneExperiment_args()
- args.existingExperimentID = existingExperimentID
- args.newExperimentName = newExperimentName
+ def send_getExperiment(self, airavataExperimentId):
+ self._oprot.writeMessageBegin('getExperiment', TMessageType.CALL, self._seqid)
+ args = getExperiment_args()
+ args.airavataExperimentId = airavataExperimentId
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_cloneExperiment(self):
+ def recv_getExperiment(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = cloneExperiment_result()
+ result = getExperiment_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
@@ -3492,15 +3867,21 @@ class Client(Iface):
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "cloneExperiment failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getExperiment failed: unknown result");
- def terminateExperiment(self, airavataExperimentId, tokenId):
+ def updateExperiment(self, airavataExperimentId, experiment):
"""
- Terminate a running experiment.
+ Configure a previously created experiment with required inputs, scheduling and other quality of service
+ parameters. This method only updates the experiment object within the registry. The experiment has to be launched
+ to make it actionable by the server.
@param airavataExperimentId
The identifier for the requested experiment. This is returned during the create experiment step.
+ @param experimentConfigurationData
+ The configuration information of the experiment with application input parameters, computational resource scheduling
+ information, special input output handling and additional quality of service parameters.
+
@return
This method call does not have a return value.
@@ -3530,28 +3911,28 @@ class Client(Iface):
Parameters:
- airavataExperimentId
- - tokenId
+ - experiment
"""
- self.send_terminateExperiment(airavataExperimentId, tokenId)
- self.recv_terminateExperiment()
+ self.send_updateExperiment(airavataExperimentId, experiment)
+ self.recv_updateExperiment()
- def send_terminateExperiment(self, airavataExperimentId, tokenId):
- self._oprot.writeMessageBegin('terminateExperiment', TMessageType.CALL, self._seqid)
- args = terminateExperiment_args()
+ def send_updateExperiment(self, airavataExperimentId, experiment):
+ self._oprot.writeMessageBegin('updateExperiment', TMessageType.CALL, self._seqid)
+ args = updateExperiment_args()
args.airavataExperimentId = airavataExperimentId
- args.tokenId = tokenId
+ args.experiment = experiment
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_terminateExperiment(self):
+ def recv_updateExperiment(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = terminateExperiment_result()
+ result = updateExperiment_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.ire is not None:
@@ -3564,538 +3945,605 @@ class Client(Iface):
raise result.ase
return
- def registerApplicationModule(self, gatewayId, applicationModule):
+ def updateExperimentConfiguration(self, airavataExperimentId, userConfiguration):
"""
- Register a Application Module.
-
- @param applicationModule
- Application Module Object created from the datamodel.
-
- @return appModuleId
- Returns a server-side generated airavata appModule globally unique identifier.
-
-
Parameters:
- - gatewayId
- - applicationModule
+ - airavataExperimentId
+ - userConfiguration
"""
- self.send_registerApplicationModule(gatewayId, applicationModule)
- return self.recv_registerApplicationModule()
+ self.send_updateExperimentConfiguration(airavataExperimentId, userConfiguration)
+ self.recv_updateExperimentConfiguration()
- def send_registerApplicationModule(self, gatewayId, applicationModule):
- self._oprot.writeMessageBegin('registerApplicationModule', TMessageType.CALL, self._seqid)
- args = registerApplicationModule_args()
- args.gatewayId = gatewayId
- args.applicationModule = applicationModule
+ def send_updateExperimentConfiguration(self, airavataExperimentId, userConfiguration):
+ self._oprot.writeMessageBegin('updateExperimentConfiguration', TMessageType.CALL, self._seqid)
+ args = updateExperimentConfiguration_args()
+ args.airavataExperimentId = airavataExperimentId
+ args.userConfiguration = userConfiguration
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_registerApplicationModule(self):
+ def recv_updateExperimentConfiguration(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = registerApplicationModule_result()
+ result = updateExperimentConfiguration_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
- if result.success is not None:
- return result.success
- if result.ire is not None:
- raise result.ire
- if result.ace is not None:
- raise result.ace
- if result.ase is not None:
- raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "registerApplicationModule failed: unknown result");
+ return
- def getApplicationModule(self, appModuleId):
+ def updateResourceScheduleing(self, airavataExperimentId, resourceScheduling):
"""
- Fetch a Application Module.
-
- @param appModuleId
- The identifier for the requested application module
-
- @return applicationModule
- Returns a application Module Object.
-
-
Parameters:
- - appModuleId
+ - airavataExperimentId
+ - resourceScheduling
"""
- self.send_getApplicationModule(appModuleId)
- return self.recv_getApplicationModule()
+ self.send_updateResourceScheduleing(airavataExperimentId, resourceScheduling)
+ self.recv_updateResourceScheduleing()
- def send_getApplicationModule(self, appModuleId):
- self._oprot.writeMessageBegin('getApplicationModule', TMessageType.CALL, self._seqid)
- args = getApplicationModule_args()
- args.appModuleId = appModuleId
+ def send_updateResourceScheduleing(self, airavataExperimentId, resourceScheduling):
+ self._oprot.writeMessageBegin('updateResourceScheduleing', TMessageType.CALL, self._seqid)
+ args = updateResourceScheduleing_args()
+ args.airavataExperimentId = airavataExperimentId
+ args.resourceScheduling = resourceScheduling
args.write(self._oprot)
self._oprot.writeMessageEnd()
self._oprot.trans.flush()
- def recv_getApplicationModule(self):
+ def recv_updateResourceScheduleing(self):
(fname, mtype, rseqid) = self._iprot.readMessageBegin()
if mtype == TMessageType.EXCEPTION:
x = TApplicationException()
x.read(self._iprot)
self._iprot.readMessageEnd()
raise x
- result = getApplicationModule_result()
+ result = updateResourceScheduleing_result()
+ result.read(self._iprot)
+ self._iprot.readMessageEnd()
+ return
+
+ def validateExperiment(self, airavataExperimentId):
+ """
+ *
+ * Validate experiment configuration. A true in general indicates, the experiment is ready to be launched.
+ *
+ * @param experimentID
+ * @return sucess/failure
+ *
+ *
+
+ Parameters:
+ - airavataExperimentId
+ """
+ self.send_validateExperiment(airavataExperimentId)
+ return self.recv_validateExperiment()
+
+ def send_validateExperiment(self, airavataExperimentId):
+ self._oprot.writeMessageBegin('validateExperiment', TMessageType.CALL, self._seqid)
+ args = validateExperiment_args()
+ args.airavataExperimentId = airavataExperimentId
+ args.write(self._oprot)
+ self._oprot.writeMessageEnd()
+ self._oprot.trans.flush()
+
+ def recv_validateExperiment(self):
+ (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+ if mtype == TMessageType.EXCEPTION:
+ x = TApplicationException()
+ x.read(self._iprot)
+ self._iprot.readMessageEnd()
+ raise x
+ result = validateExperiment_result()
result.read(self._iprot)
self._iprot.readMessageEnd()
if result.success is not None:
return result.success
if result.ire is not None:
raise result.ire
+ if result.enf is not None:
+ raise result.enf
if result.ace is not None:
raise result.ace
if result.ase is not None:
raise result.ase
- raise TApplicationException(TApplicationException.MISSING_RESULT, "getApplicationModule failed: unknown result");
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "validateExperiment failed: unknown result");
- def updateApplicationModule(self, appModuleId, applicationModule):
+ def launchExperiment(self, airavataExperimentId, airavataCredStoreToken):
"""
- Update a Application Module.
+ Launch a previously created and configured experiment. Airavata Server will then start processing the request and appropriate
+ notifications and intermediate and output data will be subsequently available for this experiment.
- @param appModuleId
- The identifier for the requested application module to be updated.
+ @param airavataExperimentId
+ The identifier for the requested experiment. This is returned during the create experiment step.
- @param applicationModule
- Application Module Object created from the datamodel.
+ @param airavataCredStoreToken:
+ A requirement to execute experiments within Airavata is to first register the targeted remote computational account
+
<TRUNCATED>
[19/19] airavata git commit: Merge branch 'master' of
https://github.com/apache/airavata
Posted by sm...@apache.org.
Merge branch 'master' of https://github.com/apache/airavata
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/5cc8b43d
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/5cc8b43d
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/5cc8b43d
Branch: refs/heads/master
Commit: 5cc8b43d0ab0cfa977c777f425174c3f1bcf9c95
Parents: 5d940d3 20bf020
Author: Supun Nakandala <su...@gmail.com>
Authored: Thu Apr 30 22:31:45 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Thu Apr 30 22:31:45 2015 +0530
----------------------------------------------------------------------
INSTALL | 6 +++---
README | 7 -------
2 files changed, 3 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
[15/19] airavata git commit: Removing use of duplicate database
scripts in tests
Posted by sm...@apache.org.
Removing use of duplicate database scripts in tests
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/6e94c35c
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/6e94c35c
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/6e94c35c
Branch: refs/heads/master
Commit: 6e94c35c0e9e01321aff2b0ce64eca74f3dc249a
Parents: 6bf56d3
Author: Supun Nakandala <su...@gmail.com>
Authored: Wed Apr 29 15:55:31 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Wed Apr 29 15:55:31 2015 +0530
----------------------------------------------------------------------
.../api/server/util/DatabaseCreator.java | 6 +-
.../src/main/resources/registry-derby.sql | 391 ------------------
.../src/main/resources/registry-mysql.sql | 392 -------------------
3 files changed, 4 insertions(+), 785 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/6e94c35c/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
index 4bc3c72..0d857ba 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
@@ -265,9 +265,11 @@ public class DatabaseCreator {
logger.info("Script file not found at " + dbscriptName + ". Uses default database script file");
DatabaseType databaseType = DatabaseCreator.getDatabaseType(conn);
if(databaseType.equals(DatabaseType.derby)){
- is = DatabaseCreator.class.getClassLoader().getResourceAsStream("registry-derby.sql");
+ is = Thread.currentThread().getContextClassLoader()
+ .getResourceAsStream("registry-derby.sql");
}else if(databaseType.equals(DatabaseType.derby)){
- is = DatabaseCreator.class.getClassLoader().getResourceAsStream("registry-mysql.sql");
+ is = Thread.currentThread().getContextClassLoader()
+ .getResourceAsStream("registry-mysql.sql");
}
}
reader = new BufferedReader(new InputStreamReader(is));
http://git-wip-us.apache.org/repos/asf/airavata/blob/6e94c35c/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql b/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql
deleted file mode 100644
index 7ab3755..0000000
--- a/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql
+++ /dev/null
@@ -1,391 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-CREATE TABLE GATEWAY
-(
- GATEWAY_ID VARCHAR (255),
- GATEWAY_NAME VARCHAR(255),
- DOMAIN VARCHAR(255),
- EMAIL_ADDRESS VARCHAR(255),
- PRIMARY KEY (GATEWAY_ID)
-);
-
-CREATE TABLE CONFIGURATION
-(
- CONFIG_KEY VARCHAR(255),
- CONFIG_VAL VARCHAR(255),
- EXPIRE_DATE TIMESTAMP DEFAULT '0000-00-00 00:00:00',
- CATEGORY_ID VARCHAR (255),
- PRIMARY KEY(CONFIG_KEY, CONFIG_VAL, CATEGORY_ID)
-);
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL, EXPIRE_DATE, CATEGORY_ID) VALUES('registry.version', '0.15', CURRENT_TIMESTAMP ,'SYSTEM');
-
-CREATE TABLE USERS
-(
- USER_NAME VARCHAR(255),
- PASSWORD VARCHAR(255),
- PRIMARY KEY(USER_NAME)
-);
-
-CREATE TABLE GATEWAY_WORKER
-(
- GATEWAY_ID VARCHAR(255),
- USER_NAME VARCHAR(255),
- PRIMARY KEY (GATEWAY_ID, USER_NAME),
- FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
- FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
-);
-
-CREATE TABLE PROJECT
-(
- GATEWAY_ID VARCHAR(255),
- USER_NAME VARCHAR(255) NOT NULL,
- PROJECT_ID VARCHAR(255),
- PROJECT_NAME VARCHAR(255) NOT NULL,
- DESCRIPTION VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- PRIMARY KEY (PROJECT_ID),
- FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
- FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
-);
-
-CREATE TABLE PROJECT_USER
-(
- PROJECT_ID VARCHAR(255),
- USER_NAME VARCHAR(255),
- PRIMARY KEY (PROJECT_ID,USER_NAME),
- FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE,
- FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT
-(
- EXPERIMENT_ID VARCHAR(255),
- GATEWAY_ID VARCHAR(255),
- EXECUTION_USER VARCHAR(255) NOT NULL,
- PROJECT_ID VARCHAR(255) NOT NULL,
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- EXPERIMENT_NAME VARCHAR(255) NOT NULL,
- EXPERIMENT_DESCRIPTION VARCHAR(255),
- APPLICATION_ID VARCHAR(255),
- APPLICATION_VERSION VARCHAR(255),
- WORKFLOW_TEMPLATE_ID VARCHAR(255),
- WORKFLOW_TEMPLATE_VERSION VARCHAR(255),
- WORKFLOW_EXECUTION_ID VARCHAR(255),
- ALLOW_NOTIFICATION SMALLINT,
- GATEWAY_EXECUTION_ID VARCHAR(255),
- PRIMARY KEY(EXPERIMENT_ID),
- FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
- FOREIGN KEY (EXECUTION_USER) REFERENCES USERS(USER_NAME) ON DELETE CASCADE,
- FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT_INPUT
-(
- EXPERIMENT_ID VARCHAR(255),
- INPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- METADATA VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- STANDARD_INPUT SMALLINT,
- USER_FRIENDLY_DESC VARCHAR(255),
- VALUE CLOB,
- INPUT_ORDER INTEGER,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_STAGED SMALLINT,
- PRIMARY KEY(EXPERIMENT_ID,INPUT_KEY),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT_OUTPUT
-(
- EXPERIMENT_ID VARCHAR(255),
- OUTPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- VALUE CLOB,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_MOVEMENT SMALLINT,
- DATA_NAME_LOCATION VARCHAR(255),
- SEARCH_QUERY VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- PRIMARY KEY(EXPERIMENT_ID,OUTPUT_KEY),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-
-CREATE TABLE WORKFLOW_NODE_DETAIL
-(
- EXPERIMENT_ID VARCHAR(255) NOT NULL,
- NODE_INSTANCE_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- NODE_NAME VARCHAR(255) NOT NULL,
- EXECUTION_UNIT VARCHAR(255) NOT NULL,
- EXECUTION_UNIT_DATA VARCHAR(255),
- PRIMARY KEY(NODE_INSTANCE_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE TASK_DETAIL
-(
- TASK_ID VARCHAR(255),
- NODE_INSTANCE_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- APPLICATION_ID VARCHAR(255),
- APPLICATION_VERSION VARCHAR(255),
- APPLICATION_DEPLOYMENT_ID VARCHAR(255),
- ALLOW_NOTIFICATION SMALLINT,
- PRIMARY KEY(TASK_ID),
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NOTIFICATION_EMAIL
-(
- EMAIL_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- EMAIL_ADDRESS VARCHAR(255),
- PRIMARY KEY(EMAIL_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE ERROR_DETAIL
-(
- ERROR_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- NODE_INSTANCE_ID VARCHAR(255),
- JOB_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- ACTUAL_ERROR_MESSAGE CLOB,
- USER_FRIEDNLY_ERROR_MSG VARCHAR(255),
- TRANSIENT_OR_PERSISTENT SMALLINT,
- ERROR_CATEGORY VARCHAR(255),
- CORRECTIVE_ACTION VARCHAR(255),
- ACTIONABLE_GROUP VARCHAR(255),
- PRIMARY KEY(ERROR_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_INPUT
-(
- TASK_ID VARCHAR(255),
- INPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- METADATA VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- STANDARD_INPUT SMALLINT,
- USER_FRIENDLY_DESC VARCHAR(255),
- VALUE CLOB,
- INPUT_ORDER INTEGER,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_STAGED SMALLINT,
- PRIMARY KEY(TASK_ID,INPUT_KEY),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_OUTPUT
-(
- TASK_ID VARCHAR(255),
- OUTPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- VALUE CLOB,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_MOVEMENT SMALLINT,
- DATA_NAME_LOCATION VARCHAR(255),
- SEARCH_QUERY VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- PRIMARY KEY(TASK_ID,OUTPUT_KEY),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NODE_INPUT
-(
- NODE_INSTANCE_ID VARCHAR(255),
- INPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- METADATA VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- STANDARD_INPUT SMALLINT,
- USER_FRIENDLY_DESC VARCHAR(255),
- VALUE VARCHAR(255),
- INPUT_ORDER INTEGER,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_STAGED SMALLINT,
- PRIMARY KEY(NODE_INSTANCE_ID,INPUT_KEY),
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NODE_OUTPUT
-(
- NODE_INSTANCE_ID VARCHAR(255),
- OUTPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- VALUE VARCHAR(255),
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_MOVEMENT SMALLINT,
- DATA_NAME_LOCATION VARCHAR(255),
- SEARCH_QUERY VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- PRIMARY KEY(NODE_INSTANCE_ID,OUTPUT_KEY),
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE JOB_DETAIL
-(
- JOB_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- JOB_DESCRIPTION CLOB NOT NULL,
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- COMPUTE_RESOURCE_CONSUMED VARCHAR(255),
- JOBNAME VARCHAR (255),
- WORKING_DIR VARCHAR(255),
- PRIMARY KEY (TASK_ID, JOB_ID),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE DATA_TRANSFER_DETAIL
-(
- TRANSFER_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- TRANSFER_DESC VARCHAR(255) NOT NULL,
- PRIMARY KEY(TRANSFER_ID),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE STATUS
-(
- STATUS_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- NODE_INSTANCE_ID VARCHAR(255),
- TRANSFER_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- JOB_ID VARCHAR(255),
- STATE VARCHAR(255),
- STATUS_UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
- STATUS_TYPE VARCHAR(255),
- PRIMARY KEY(STATUS_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE,
- FOREIGN KEY (TRANSFER_ID) REFERENCES DATA_TRANSFER_DETAIL(TRANSFER_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE CONFIG_DATA
-(
- EXPERIMENT_ID VARCHAR(255),
- AIRAVATA_AUTO_SCHEDULE SMALLINT NOT NULL,
- OVERRIDE_MANUAL_SCHEDULE_PARAMS SMALLINT NOT NULL,
- SHARE_EXPERIMENT SMALLINT,
- USER_DN VARCHAR(255),
- GENERATE_CERT SMALLINT,
- PRIMARY KEY(EXPERIMENT_ID)
-);
-
-CREATE TABLE COMPUTATIONAL_RESOURCE_SCHEDULING
-(
- RESOURCE_SCHEDULING_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- RESOURCE_HOST_ID VARCHAR(255),
- CPU_COUNT INTEGER,
- NODE_COUNT INTEGER,
- NO_OF_THREADS INTEGER,
- QUEUE_NAME VARCHAR(255),
- WALLTIME_LIMIT INTEGER,
- JOB_START_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
- TOTAL_PHYSICAL_MEMORY INTEGER,
- COMPUTATIONAL_PROJECT_ACCOUNT VARCHAR(255),
- CHESSIS_NAME VARCHAR(255),
- PRIMARY KEY(RESOURCE_SCHEDULING_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE ADVANCE_INPUT_DATA_HANDLING
-(
- INPUT_DATA_HANDLING_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- WORKING_DIR_PARENT VARCHAR(255),
- UNIQUE_WORKING_DIR VARCHAR(255),
- STAGE_INPUT_FILES_TO_WORKING_DIR SMALLINT,
- CLEAN_AFTER_JOB SMALLINT,
- PRIMARY KEY(INPUT_DATA_HANDLING_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE ADVANCE_OUTPUT_DATA_HANDLING
-(
- OUTPUT_DATA_HANDLING_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- OUTPUT_DATA_DIR VARCHAR(255),
- DATA_REG_URL VARCHAR (255),
- PERSIST_OUTPUT_DATA SMALLINT,
- PRIMARY KEY(OUTPUT_DATA_HANDLING_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE QOS_PARAM
-(
- QOS_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- START_EXECUTION_AT VARCHAR(255),
- EXECUTE_BEFORE VARCHAR(255),
- NO_OF_RETRIES INTEGER,
- PRIMARY KEY(QOS_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMMUNITY_USER
-(
- GATEWAY_ID VARCHAR(256) NOT NULL,
- COMMUNITY_USER_NAME VARCHAR(256) NOT NULL,
- TOKEN_ID VARCHAR(256) NOT NULL,
- COMMUNITY_USER_EMAIL VARCHAR(256) NOT NULL,
- PRIMARY KEY (GATEWAY_ID, COMMUNITY_USER_NAME, TOKEN_ID)
-);
-
-CREATE TABLE CREDENTIALS
-(
- GATEWAY_ID VARCHAR(256) NOT NULL,
- TOKEN_ID VARCHAR(256) NOT NULL,
- CREDENTIAL BLOB NOT NULL,
- PORTAL_USER_ID VARCHAR(256) NOT NULL,
- TIME_PERSISTED TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- PRIMARY KEY (GATEWAY_ID, TOKEN_ID)
-);
-
-
http://git-wip-us.apache.org/repos/asf/airavata/blob/6e94c35c/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql b/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql
deleted file mode 100644
index 14d7fc8..0000000
--- a/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql
+++ /dev/null
@@ -1,392 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-CREATE TABLE GATEWAY
-(
- GATEWAY_ID VARCHAR(255),
- GATEWAY_NAME VARCHAR(255),
- DOMAIN VARCHAR(255),
- EMAIL_ADDRESS VARCHAR(255),
- PRIMARY KEY (GATEWAY_ID)
-);
-
-CREATE TABLE CONFIGURATION
-(
- CONFIG_KEY VARCHAR(255),
- CONFIG_VAL VARCHAR(255),
- EXPIRE_DATE TIMESTAMP DEFAULT '0000-00-00 00:00:00',
- CATEGORY_ID VARCHAR (255),
- PRIMARY KEY(CONFIG_KEY, CONFIG_VAL, CATEGORY_ID)
-);
-
-INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL, EXPIRE_DATE, CATEGORY_ID) VALUES('registry.version', '0.15', CURRENT_TIMESTAMP ,'SYSTEM');
-
-CREATE TABLE USERS
-(
- USER_NAME VARCHAR(255),
- PASSWORD VARCHAR(255),
- PRIMARY KEY(USER_NAME)
-);
-
-CREATE TABLE GATEWAY_WORKER
-(
- GATEWAY_ID VARCHAR(255),
- USER_NAME VARCHAR(255),
- PRIMARY KEY (GATEWAY_ID, USER_NAME),
- FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
- FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
-);
-
-CREATE TABLE PROJECT
-(
- GATEWAY_ID VARCHAR(255),
- USER_NAME VARCHAR(255),
- PROJECT_NAME VARCHAR(255) NOT NULL,
- PROJECT_ID VARCHAR(255),
- DESCRIPTION VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- PRIMARY KEY (PROJECT_ID),
- FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
- FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
-);
-
-CREATE TABLE PROJECT_USER
-(
- PROJECT_ID VARCHAR(255),
- USER_NAME VARCHAR(255),
- PRIMARY KEY (PROJECT_ID,USER_NAME),
- FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE,
- FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT
-(
- EXPERIMENT_ID VARCHAR(255),
- GATEWAY_ID VARCHAR(255),
- EXECUTION_USER VARCHAR(255) NOT NULL,
- PROJECT_ID VARCHAR(255) NOT NULL,
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- EXPERIMENT_NAME VARCHAR(255) NOT NULL,
- EXPERIMENT_DESCRIPTION VARCHAR(255),
- APPLICATION_ID VARCHAR(255),
- APPLICATION_VERSION VARCHAR(255),
- WORKFLOW_TEMPLATE_ID VARCHAR(255),
- WORKFLOW_TEMPLATE_VERSION VARCHAR(255),
- WORKFLOW_EXECUTION_ID VARCHAR(255),
- ALLOW_NOTIFICATION SMALLINT,
- GATEWAY_EXECUTION_ID VARCHAR(255),
- PRIMARY KEY(EXPERIMENT_ID),
- FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
- FOREIGN KEY (EXECUTION_USER) REFERENCES USERS(USER_NAME) ON DELETE CASCADE,
- FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT_INPUT
-(
- EXPERIMENT_ID VARCHAR(255),
- INPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- STANDARD_INPUT SMALLINT,
- USER_FRIENDLY_DESC VARCHAR(255),
- METADATA VARCHAR(255),
- VALUE LONGTEXT,
- INPUT_ORDER INTEGER,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_STAGED SMALLINT,
- PRIMARY KEY(EXPERIMENT_ID,INPUT_KEY),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE EXPERIMENT_OUTPUT
-(
- EXPERIMENT_ID VARCHAR(255),
- OUTPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- VALUE LONGTEXT,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_MOVEMENT SMALLINT,
- DATA_NAME_LOCATION VARCHAR(255),
- SEARCH_QUERY VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- PRIMARY KEY(EXPERIMENT_ID,OUTPUT_KEY),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE WORKFLOW_NODE_DETAIL
-(
- EXPERIMENT_ID VARCHAR(255) NOT NULL,
- NODE_INSTANCE_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- NODE_NAME VARCHAR(255) NOT NULL,
- EXECUTION_UNIT VARCHAR(255) NOT NULL,
- EXECUTION_UNIT_DATA VARCHAR(255),
- PRIMARY KEY(NODE_INSTANCE_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE TASK_DETAIL
-(
- TASK_ID VARCHAR(255),
- NODE_INSTANCE_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- APPLICATION_ID VARCHAR(255),
- APPLICATION_VERSION VARCHAR(255),
- APPLICATION_DEPLOYMENT_ID VARCHAR(255),
- ALLOW_NOTIFICATION SMALLINT,
- PRIMARY KEY(TASK_ID),
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NOTIFICATION_EMAIL
-(
- EMAIL_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- EMAIL_ADDRESS VARCHAR(255),
- PRIMARY KEY(EMAIL_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_INPUT
-(
- TASK_ID VARCHAR(255),
- INPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- STANDARD_INPUT SMALLINT,
- USER_FRIENDLY_DESC VARCHAR(255),
- METADATA VARCHAR(255),
- VALUE LONGTEXT,
- INPUT_ORDER INTEGER,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_STAGED SMALLINT,
- PRIMARY KEY(TASK_ID,INPUT_KEY),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE APPLICATION_OUTPUT
-(
- TASK_ID VARCHAR(255),
- OUTPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- VALUE LONGTEXT,
- DATA_MOVEMENT SMALLINT,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_NAME_LOCATION VARCHAR(255),
- SEARCH_QUERY VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- PRIMARY KEY(TASK_ID,OUTPUT_KEY),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NODE_INPUT
-(
- NODE_INSTANCE_ID VARCHAR(255),
- INPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- STANDARD_INPUT SMALLINT,
- USER_FRIENDLY_DESC VARCHAR(255),
- METADATA VARCHAR(255),
- VALUE VARCHAR(255),
- INPUT_ORDER INTEGER,
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_STAGED SMALLINT,
- PRIMARY KEY(NODE_INSTANCE_ID,INPUT_KEY),
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE NODE_OUTPUT
-(
- NODE_INSTANCE_ID VARCHAR(255),
- OUTPUT_KEY VARCHAR(255) NOT NULL,
- DATA_TYPE VARCHAR(255),
- VALUE VARCHAR(255),
- IS_REQUIRED SMALLINT,
- REQUIRED_TO_COMMANDLINE SMALLINT,
- DATA_MOVEMENT SMALLINT,
- DATA_NAME_LOCATION VARCHAR(255),
- SEARCH_QUERY VARCHAR(255),
- APP_ARGUMENT VARCHAR(255),
- PRIMARY KEY(NODE_INSTANCE_ID,OUTPUT_KEY),
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE JOB_DETAIL
-(
- JOB_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- JOB_DESCRIPTION LONGTEXT NOT NULL,
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- COMPUTE_RESOURCE_CONSUMED VARCHAR(255),
- JOBNAME VARCHAR (255),
- WORKING_DIR VARCHAR(255),
- PRIMARY KEY (TASK_ID, JOB_ID),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE DATA_TRANSFER_DETAIL
-(
- TRANSFER_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- TRANSFER_DESC VARCHAR(255) NOT NULL,
- PRIMARY KEY(TRANSFER_ID),
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE ERROR_DETAIL
-(
- ERROR_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- NODE_INSTANCE_ID VARCHAR(255),
- JOB_ID VARCHAR(255),
- CREATION_TIME TIMESTAMP DEFAULT NOW(),
- ACTUAL_ERROR_MESSAGE LONGTEXT,
- USER_FRIEDNLY_ERROR_MSG VARCHAR(255),
- TRANSIENT_OR_PERSISTENT SMALLINT,
- ERROR_CATEGORY VARCHAR(255),
- CORRECTIVE_ACTION VARCHAR(255),
- ACTIONABLE_GROUP VARCHAR(255),
- PRIMARY KEY(ERROR_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE STATUS
-(
- STATUS_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- NODE_INSTANCE_ID VARCHAR(255),
- TRANSFER_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- JOB_ID VARCHAR(255),
- STATE VARCHAR(255),
- STATUS_UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ON UPDATE now(),
- STATUS_TYPE VARCHAR(255),
- PRIMARY KEY(STATUS_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
- FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE,
- FOREIGN KEY (TRANSFER_ID) REFERENCES DATA_TRANSFER_DETAIL(TRANSFER_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE CONFIG_DATA
-(
- EXPERIMENT_ID VARCHAR(255),
- AIRAVATA_AUTO_SCHEDULE SMALLINT NOT NULL,
- OVERRIDE_MANUAL_SCHEDULE_PARAMS SMALLINT NOT NULL,
- SHARE_EXPERIMENT SMALLINT,
- USER_DN VARCHAR(255),
- GENERATE_CERT SMALLINT,
- PRIMARY KEY(EXPERIMENT_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
-
-);
-
-CREATE TABLE COMPUTATIONAL_RESOURCE_SCHEDULING
-(
- RESOURCE_SCHEDULING_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- RESOURCE_HOST_ID VARCHAR(255),
- CPU_COUNT INTEGER,
- NODE_COUNT INTEGER,
- NO_OF_THREADS INTEGER,
- QUEUE_NAME VARCHAR(255),
- WALLTIME_LIMIT INTEGER,
- JOB_START_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
- TOTAL_PHYSICAL_MEMORY INTEGER,
- COMPUTATIONAL_PROJECT_ACCOUNT VARCHAR(255),
- CHESSIS_NAME VARCHAR(255),
- PRIMARY KEY(RESOURCE_SCHEDULING_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE ADVANCE_INPUT_DATA_HANDLING
-(
- INPUT_DATA_HANDLING_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- WORKING_DIR_PARENT VARCHAR(255),
- UNIQUE_WORKING_DIR VARCHAR(255),
- STAGE_INPUT_FILES_TO_WORKING_DIR SMALLINT,
- CLEAN_AFTER_JOB SMALLINT,
- PRIMARY KEY(INPUT_DATA_HANDLING_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE ADVANCE_OUTPUT_DATA_HANDLING
-(
- OUTPUT_DATA_HANDLING_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- OUTPUT_DATA_DIR VARCHAR(255),
- DATA_REG_URL VARCHAR (255),
- PERSIST_OUTPUT_DATA SMALLINT,
- PRIMARY KEY(OUTPUT_DATA_HANDLING_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE QOS_PARAM
-(
- QOS_ID INTEGER NOT NULL AUTO_INCREMENT,
- EXPERIMENT_ID VARCHAR(255),
- TASK_ID VARCHAR(255),
- START_EXECUTION_AT VARCHAR(255),
- EXECUTE_BEFORE VARCHAR(255),
- NO_OF_RETRIES INTEGER,
- PRIMARY KEY(QOS_ID),
- FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
- FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
-);
-
-CREATE TABLE COMMUNITY_USER
-(
- GATEWAY_ID VARCHAR(256) NOT NULL,
- COMMUNITY_USER_NAME VARCHAR(256) NOT NULL,
- TOKEN_ID VARCHAR(256) NOT NULL,
- COMMUNITY_USER_EMAIL VARCHAR(256) NOT NULL,
- PRIMARY KEY (GATEWAY_ID, COMMUNITY_USER_NAME, TOKEN_ID)
-);
-
-CREATE TABLE CREDENTIALS
-(
- GATEWAY_ID VARCHAR(256) NOT NULL,
- TOKEN_ID VARCHAR(256) NOT NULL,
- CREDENTIAL BLOB NOT NULL,
- PORTAL_USER_ID VARCHAR(256) NOT NULL,
- TIME_PERSISTED TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
- PRIMARY KEY (GATEWAY_ID, TOKEN_ID)
-);
-
-
[10/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
Changing Airavata API to support paginated result retrieval of Project and Experiment data
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/0a3d857b
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/0a3d857b
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/0a3d857b
Branch: refs/heads/master
Commit: 0a3d857b746d27a7a8cccf4f26923b163fcb9965
Parents: 9f6e30e
Author: Supun Nakandala <su...@gmail.com>
Authored: Mon Apr 27 20:46:56 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Mon Apr 27 20:46:56 2015 +0530
----------------------------------------------------------------------
.../server/handler/AiravataServerHandler.java | 375 +-
.../api/server/util/DatabaseCreator.java | 15 +-
.../handler/AiravataServerHandlerTest.java | 324 +
.../java/org/apache/airavata/api/Airavata.java | 21816 ++++++++++++++---
.../main/resources/lib/airavata/Airavata.cpp | 12982 ++++++----
.../src/main/resources/lib/airavata/Airavata.h | 2398 +-
.../lib/airavata/Airavata_server.skeleton.cpp | 50 +
.../resources/lib/Airavata/API/Airavata.php | 4756 +++-
.../lib/apache/airavata/api/Airavata-remote | 70 +
.../lib/apache/airavata/api/Airavata.py | 12786 ++++++----
.../airavataAPI.thrift | 332 +-
.../apache/airavata/registry/cpi/Registry.java | 19 +-
.../airavata/registry/cpi/utils/Constants.java | 1 +
13 files changed, 43430 insertions(+), 12494 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index e2b402e..c3039d9 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -21,12 +21,7 @@
package org.apache.airavata.api.server.handler;
-import org.airavata.appcatalog.cpi.AppCatalog;
-import org.airavata.appcatalog.cpi.AppCatalogException;
-import org.airavata.appcatalog.cpi.ApplicationDeployment;
-import org.airavata.appcatalog.cpi.ComputeResource;
-import org.airavata.appcatalog.cpi.GwyResourceProfile;
-import org.airavata.appcatalog.cpi.WorkflowCatalog;
+import org.airavata.appcatalog.cpi.*;
import org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
import org.apache.aiaravata.application.catalog.data.resources.*;
import org.apache.aiaravata.application.catalog.data.util.AppCatalogThriftConversion;
@@ -50,38 +45,18 @@ import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
import org.apache.airavata.model.appcatalog.computeresource.*;
import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
-import org.apache.airavata.model.error.AiravataClientConnectException;
-import org.apache.airavata.model.error.AiravataClientException;
-import org.apache.airavata.model.error.AiravataErrorType;
-import org.apache.airavata.model.error.AiravataSystemException;
-import org.apache.airavata.model.error.ExperimentNotFoundException;
-import org.apache.airavata.model.error.InvalidRequestException;
-import org.apache.airavata.model.error.ProjectNotFoundException;
+import org.apache.airavata.model.error.*;
import org.apache.airavata.model.messaging.event.ExperimentStatusChangeEvent;
import org.apache.airavata.model.messaging.event.MessageType;
import org.apache.airavata.model.workspace.Gateway;
import org.apache.airavata.model.workspace.Project;
-import org.apache.airavata.model.workspace.experiment.ComputationalResourceScheduling;
-import org.apache.airavata.model.workspace.experiment.DataTransferDetails;
-import org.apache.airavata.model.workspace.experiment.Experiment;
-import org.apache.airavata.model.workspace.experiment.ExperimentState;
-import org.apache.airavata.model.workspace.experiment.ExperimentStatus;
-import org.apache.airavata.model.workspace.experiment.ExperimentSummary;
-import org.apache.airavata.model.workspace.experiment.JobDetails;
-import org.apache.airavata.model.workspace.experiment.JobStatus;
-import org.apache.airavata.model.workspace.experiment.TaskDetails;
-import org.apache.airavata.model.workspace.experiment.UserConfigurationData;
-import org.apache.airavata.model.workspace.experiment.WorkflowNodeDetails;
+import org.apache.airavata.model.workspace.experiment.*;
import org.apache.airavata.orchestrator.client.OrchestratorClientFactory;
import org.apache.airavata.orchestrator.cpi.OrchestratorService;
import org.apache.airavata.orchestrator.cpi.OrchestratorService.Client;
import org.apache.airavata.persistance.registry.jpa.ResourceUtils;
import org.apache.airavata.persistance.registry.jpa.impl.RegistryFactory;
-import org.apache.airavata.registry.cpi.ChildDataType;
-import org.apache.airavata.registry.cpi.ParentDataType;
-import org.apache.airavata.registry.cpi.Registry;
-import org.apache.airavata.registry.cpi.RegistryException;
-import org.apache.airavata.registry.cpi.RegistryModelType;
+import org.apache.airavata.registry.cpi.*;
import org.apache.airavata.registry.cpi.utils.Constants;
import org.apache.thrift.TException;
@@ -343,10 +318,34 @@ public class AiravataServerHandler implements Airavata.Iface {
/**
* Get all Project by user
*
+ * @param gatewayId
+ * The identifier for the requested gateway.
* @param userName
+ * The identifier of the user
+ * @deprecated Instead use getAllUserProjectsWithPagination method
*/
+ @Deprecated
@Override
public List<Project> getAllUserProjects(String gatewayId, String userName) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ return getAllUserProjectsWithPagination(gatewayId, userName, -1, -1);
+ }
+
+ /**
+ * Get all Project by user with pagination. Results will be ordered based
+ * on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ **/
+ @Override
+ public List<Project> getAllUserProjectsWithPagination(String gatewayId, String userName,
+ int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -371,7 +370,8 @@ public class AiravataServerHandler implements Airavata.Iface {
Map<String, String> filters = new HashMap<String, String>();
filters.put(Constants.FieldConstants.ProjectConstants.OWNER, userName);
filters.put(Constants.FieldConstants.ProjectConstants.GATEWAY_ID, gatewayId);
- List<Object> list = registry.search(RegistryModelType.PROJECT,filters);
+ List<Object> list = registry.search(RegistryModelType.PROJECT, filters, limit, offset,
+ Constants.FieldConstants.ProjectConstants.CREATION_TIME, ResultOrderType.DESC);
if (list != null && !list.isEmpty()){
for (Object o : list){
projects.add((Project) o);
@@ -387,10 +387,43 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Get all Project for user by project name
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param projectName
+ * The name of the project on which the results to be fetched
+ * @deprecated Instead use searchProjectsByProjectNameWithPagination
+ */
+ @Deprecated
+ @Override
public List<Project> searchProjectsByProjectName(String gatewayId, String userName, String projectName) throws InvalidRequestException,
AiravataClientException,
AiravataSystemException,
TException {
+ return searchProjectsByProjectNameWithPagination(gatewayId, userName, projectName, -1, -1);
+ }
+
+ /**
+ * Get all Project for user by project name with pagination. Results will be ordered based
+ * on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param projectName
+ * The name of the project on which the results to be fetched
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<Project> searchProjectsByProjectNameWithPagination(String gatewayId, String userName, String projectName, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -416,7 +449,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ProjectConstants.OWNER, userName);
filters.put(Constants.FieldConstants.ProjectConstants.GATEWAY_ID, gatewayId);
filters.put(Constants.FieldConstants.ProjectConstants.PROJECT_NAME, projectName);
- List<Object> results = registry.search(RegistryModelType.PROJECT, filters);
+ List<Object> results = registry.search(RegistryModelType.PROJECT, filters, limit, offset,
+ Constants.FieldConstants.ProjectConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
projects.add((Project)object);
}
@@ -430,10 +464,42 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Get all Project for user by project description
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param description
+ * The description to be matched
+ * @deprecated Instead use searchProjectsByProjectDescWithPagination
+ */
+ @Deprecated
+ @Override
public List<Project> searchProjectsByProjectDesc(String gatewayId, String userName, String description) throws InvalidRequestException,
AiravataClientException,
AiravataSystemException,
TException {
+ return searchProjectsByProjectDescWithPagination(gatewayId, userName, description, -1, -1);
+ }
+
+ /**
+ * Search and get all Projects for user by project description with pagination. Results
+ * will be ordered based on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param description
+ * The description to be matched
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<Project> searchProjectsByProjectDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -459,7 +525,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ProjectConstants.OWNER, userName);
filters.put(Constants.FieldConstants.ProjectConstants.GATEWAY_ID, gatewayId);
filters.put(Constants.FieldConstants.ProjectConstants.DESCRIPTION, description);
- List<Object> results = registry.search(RegistryModelType.PROJECT, filters);
+ List<Object> results = registry.search(RegistryModelType.PROJECT, filters, limit, offset,
+ Constants.FieldConstants.ProjectConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
projects.add((Project)object);
}
@@ -473,10 +540,45 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Search Experiments by experiment name
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param expName
+ * Experiment name to be matched
+ * @deprecated
+ * Instead use searchExperimentsByNameWithPagination
+ *
+ */
+ @Deprecated
+ @Override
public List<ExperimentSummary> searchExperimentsByName(String gatewayId, String userName, String expName) throws InvalidRequestException,
AiravataClientException,
AiravataSystemException,
TException {
+ return searchExperimentsByNameWithPagination(gatewayId, userName, expName, -1, -1);
+ }
+
+ /**
+ * Search Experiments by experiment name with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param expName
+ * Experiment name to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<ExperimentSummary> searchExperimentsByNameWithPagination(String gatewayId, String userName, String expName, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -502,7 +604,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
filters.put(Constants.FieldConstants.ExperimentConstants.EXPERIMENT_NAME, expName);
- List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters, limit,
+ offset, Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
summaries.add((ExperimentSummary) object);
}
@@ -516,10 +619,44 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Search Experiments by experiment name
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param description
+ * Experiment description to be matched
+ * @deprecated
+ * Instead use searchExperimentsByDescWithPagination
+ */
+ @Deprecated
+ @Override
public List<ExperimentSummary> searchExperimentsByDesc(String gatewayId, String userName, String description) throws InvalidRequestException,
AiravataClientException,
AiravataSystemException,
TException {
+ return searchExperimentsByDescWithPagination(gatewayId, userName, description, -1, -1);
+ }
+
+ /**
+ * Search Experiments by experiment name with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param description
+ * Experiment description to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<ExperimentSummary> searchExperimentsByDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -545,7 +682,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
filters.put(Constants.FieldConstants.ExperimentConstants.EXPERIMENT_DESC, description);
- List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters, limit,
+ offset, Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
summaries.add((ExperimentSummary) object);
}
@@ -559,7 +697,41 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Search Experiments by application id
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param applicationId
+ * Application id to be matched
+ * @deprecated
+ * Instead use searchExperimentsByApplication
+ */
+ @Deprecated
+ @Override
public List<ExperimentSummary> searchExperimentsByApplication(String gatewayId, String userName, String applicationId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ return searchExperimentsByApplicationWithPagination(gatewayId, userName, applicationId, -1, -1);
+ }
+
+ /**
+ * Search Experiments by application id with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param applicationId
+ * Application id to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<ExperimentSummary> searchExperimentsByApplicationWithPagination(String gatewayId, String userName, String applicationId, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -585,7 +757,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
filters.put(Constants.FieldConstants.ExperimentConstants.APPLICATION_ID, applicationId);
filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
- List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters, limit,
+ offset, Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
summaries.add((ExperimentSummary) object);
}
@@ -599,8 +772,41 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Search Experiments by experiment status
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param experimentState
+ * Experiment state to be matched
+ * @deprecated
+ * Instead use searchExperimentsByStatusWithPagination
+ */
+ @Deprecated
@Override
public List<ExperimentSummary> searchExperimentsByStatus(String gatewayId, String userName, ExperimentState experimentState) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ return searchExperimentsByStatusWithPagination(gatewayId, userName, experimentState, -1, -1);
+ }
+
+ /**
+ * Search Experiments by experiment status with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param experimentState
+ * Experiement state to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<ExperimentSummary> searchExperimentsByStatusWithPagination(String gatewayId, String userName, ExperimentState experimentState, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -626,7 +832,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
filters.put(Constants.FieldConstants.ExperimentConstants.EXPERIMENT_STATUS, experimentState.toString());
filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
- List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters, limit,
+ offset, Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
summaries.add((ExperimentSummary) object);
}
@@ -640,8 +847,45 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ /**
+ * Search Experiments by experiment creation time
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param fromTime
+ * Start time of the experiments creation time
+ * @param toTime
+ * End time of the experiement creation time
+ * @deprecated
+ * Instead use searchExperimentsByCreationTime
+ */
+ @Deprecated
@Override
public List<ExperimentSummary> searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ return searchExperimentsByCreationTimeWithPagination(gatewayId, userName, fromTime, toTime, -1, -1);
+ }
+
+ /**
+ * Search Experiments by experiment creation time with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param fromTime
+ * Start time of the experiments creation time
+ * @param toTime
+ * End time of the experiement creation time
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<ExperimentSummary> searchExperimentsByCreationTimeWithPagination(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -668,7 +912,8 @@ public class AiravataServerHandler implements Airavata.Iface {
filters.put(Constants.FieldConstants.ExperimentConstants.FROM_DATE, String.valueOf(fromTime));
filters.put(Constants.FieldConstants.ExperimentConstants.TO_DATE, String.valueOf(toTime));
filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
- List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters, limit,
+ offset, Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
for (Object object : results) {
summaries.add((ExperimentSummary) object);
}
@@ -686,13 +931,34 @@ public class AiravataServerHandler implements Airavata.Iface {
* Get all Experiments within a Project
*
* @param projectId
+ * Identifier of the project
+ * @deprecated
+ * Instead use getAllExperimentsInProjectWithPagination
*/
+ @Deprecated
@Override
public List<Experiment> getAllExperimentsInProject(String projectId) throws InvalidRequestException,
AiravataClientException,
AiravataSystemException,
ProjectNotFoundException,
TException {
+ return getAllExperimentsInProjectWithPagination(projectId, -1, -1);
+ }
+
+ /**
+ * Get all Experiments within project with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param projectId
+ * Identifier of the project
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<Experiment> getAllExperimentsInProjectWithPagination(String projectId, int limit, int offset)
+ throws InvalidRequestException, AiravataClientException, AiravataSystemException, ProjectNotFoundException, TException {
if (!validateString(projectId)){
logger.error("Project id cannot be empty. Please provide a valid project ID...");
AiravataSystemException exception = new AiravataSystemException();
@@ -709,7 +975,9 @@ public class AiravataServerHandler implements Airavata.Iface {
throw exception;
}
List<Experiment> experiments = new ArrayList<Experiment>();
- List<Object> list = registry.get(RegistryModelType.EXPERIMENT, Constants.FieldConstants.ExperimentConstants.PROJECT_ID, projectId);
+ List<Object> list = registry.get(RegistryModelType.EXPERIMENT,
+ Constants.FieldConstants.ExperimentConstants.PROJECT_ID, projectId, limit, offset,
+ Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
if (list != null && !list.isEmpty()) {
for (Object o : list) {
experiments.add((Experiment) o);
@@ -728,10 +996,34 @@ public class AiravataServerHandler implements Airavata.Iface {
/**
* Get all Experiments by user
*
+ * @param gatewayId
+ * Identifier of the requesting gateway
* @param userName
+ * Username of the requested user
+ * @deprecated
+ * Instead use getAllUserExperimentsWithPagination
*/
+ @Deprecated
@Override
public List<Experiment> getAllUserExperiments(String gatewayId, String userName) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
+ return getAllUserExperimentsWithPagination(gatewayId, userName, -1, -1);
+ }
+
+ /**
+ * Get all Experiments by user pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requesting gateway
+ * @param userName
+ * Username of the requested user
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ @Override
+ public List<Experiment> getAllUserExperimentsWithPagination(String gatewayId, String userName, int limit, int offset) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
if (!validateString(userName)){
logger.error("Username cannot be empty. Please provide a valid user..");
AiravataSystemException exception = new AiravataSystemException();
@@ -753,10 +1045,9 @@ public class AiravataServerHandler implements Airavata.Iface {
}
List<Experiment> experiments = new ArrayList<Experiment>();
registry = RegistryFactory.getRegistry(gatewayId);
- Map<String, String> filters = new HashMap<String, String>();
- filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
- filters.put(Constants.FieldConstants.ExperimentConstants.GATEWAY, gatewayId);
- List<Object> list = registry.search(RegistryModelType.EXPERIMENT, filters);
+ List<Object> list = registry.get(RegistryModelType.EXPERIMENT,
+ Constants.FieldConstants.ExperimentConstants.USER_NAME, userName, limit, offset,
+ Constants.FieldConstants.ExperimentConstants.CREATION_TIME, ResultOrderType.DESC);
if (list != null && !list.isEmpty()){
for (Object o : list){
experiments.add((Experiment)o);
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
index 4833f2c..4bc3c72 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/util/DatabaseCreator.java
@@ -23,7 +23,10 @@ package org.apache.airavata.api.server.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.*;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
import java.sql.*;
import java.util.StringTokenizer;
@@ -33,6 +36,7 @@ import java.util.StringTokenizer;
* properties files.
*/
public class DatabaseCreator {
+ private final static Logger logger = LoggerFactory.getLogger(DatabaseCreator.class);
public enum DatabaseType {
derby("(?i).*derby.*"), mysql("(?i).*mysql.*"), other("");
@@ -257,6 +261,15 @@ public class DatabaseCreator {
try {
InputStream is = DatabaseCreator.class.getClassLoader().getResourceAsStream(dbscriptName);
+ if(is == null) {
+ logger.info("Script file not found at " + dbscriptName + ". Uses default database script file");
+ DatabaseType databaseType = DatabaseCreator.getDatabaseType(conn);
+ if(databaseType.equals(DatabaseType.derby)){
+ is = DatabaseCreator.class.getClassLoader().getResourceAsStream("registry-derby.sql");
+ }else if(databaseType.equals(DatabaseType.derby)){
+ is = DatabaseCreator.class.getClassLoader().getResourceAsStream("registry-mysql.sql");
+ }
+ }
reader = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = reader.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java b/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
new file mode 100644
index 0000000..799f8e9
--- /dev/null
+++ b/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
@@ -0,0 +1,324 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+package org.apache.airavata.api.server.handler;
+
+import junit.framework.Assert;
+import org.apache.airavata.api.server.util.RegistryInitUtil;
+import org.apache.airavata.common.utils.AiravataUtils;
+import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
+import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
+import org.apache.airavata.model.workspace.Gateway;
+import org.apache.airavata.model.workspace.Project;
+import org.apache.airavata.model.workspace.experiment.*;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.List;
+import java.util.UUID;
+
+/**
+ * Test methods for Airavata Service Handler
+ */
+public class AiravataServerHandlerTest {
+ private final static Logger logger = LoggerFactory.getLogger(AiravataServerHandlerTest.class);
+
+ private static AiravataServerHandler airavataServerHandler;
+ private static String gatewayId = "default";
+
+ @BeforeClass
+ public static void setupBeforeClass() throws Exception{
+ AiravataUtils.setExecutionAsServer();
+ RegistryInitUtil.initializeDB();
+ airavataServerHandler = new AiravataServerHandler();
+
+ Gateway gateway = new Gateway();
+ gateway.setGatewayId(gatewayId);
+ airavataServerHandler.addGateway(gateway);
+ }
+
+ @AfterClass
+ public static void tearDown(){
+ RegistryInitUtil.stopDerbyInServerMode();
+ }
+
+ /**
+ * Testing for project related API methods
+ */
+ @Test
+ public void testProject(){
+ try {
+ String TAG = System.currentTimeMillis() + "";
+
+ //testing the creation of a project
+ Project project = new Project();
+ project.setOwner("TestUser"+TAG);
+ project.setName("TestProject"+TAG);
+ project.setDescription("This is a test project"+TAG);
+ String projectId1 = airavataServerHandler.createProject(gatewayId, project);
+ Assert.assertNotNull(projectId1);
+
+ //testing the update of a project
+ Project updatedProject = new Project();
+ updatedProject.setProjectID(projectId1);
+ updatedProject.setOwner("TestUser"+TAG);
+ updatedProject.setName("UpdatedTestProject"+TAG);
+ updatedProject.setDescription("This is an updated test project"+TAG);
+ airavataServerHandler.updateProject(projectId1, updatedProject);
+
+ //testing project retrieval
+ Project retrievedProject = airavataServerHandler.getProject(projectId1);
+ Assert.assertEquals(updatedProject.getProjectID(), retrievedProject.getProjectID());
+ Assert.assertEquals(updatedProject.getOwner(), retrievedProject.getOwner());
+ Assert.assertEquals(updatedProject.getName(), retrievedProject.getName());
+ Assert.assertEquals(updatedProject.getDescription(), retrievedProject.getDescription());
+ Assert.assertNotNull(retrievedProject.getCreationTime());
+ //created user should be in the shared users list
+ Assert.assertTrue(retrievedProject.getSharedUsers().size()==1);
+
+ //creating more projects for the same user
+ project = new Project();
+ project.setOwner("TestUser"+TAG);
+ project.setName("Project Terrible"+TAG);
+ project.setDescription("This is a test project_2"+TAG);
+ String projectId2 = airavataServerHandler.createProject(gatewayId, project);
+ Assert.assertNotNull(projectId2);
+
+ project = new Project();
+ project.setOwner("TestUser"+TAG);
+ project.setName("Project Funny"+TAG);
+ project.setDescription("This is a test project_3"+TAG);
+ String projectId3 = airavataServerHandler.createProject(gatewayId, project);
+ Assert.assertNotNull(projectId3);
+
+ project = new Project();
+ project.setOwner("TestUser"+TAG);
+ project.setName("Project Stupid"+TAG);
+ project.setDescription("This is a test project_4"+TAG);
+ String projectId4 = airavataServerHandler.createProject(gatewayId, project);
+ Assert.assertNotNull(projectId4);
+
+ project = new Project();
+ project.setOwner("TestUser"+TAG);
+ project.setName("Project Boring"+TAG);
+ project.setDescription("This is a test project_5"+TAG);
+ String projectId5 = airavataServerHandler.createProject(gatewayId, project);
+ Assert.assertNotNull(projectId5);
+
+ //search project by project name
+ List<Project> list = airavataServerHandler.searchProjectsByProjectName(gatewayId,
+ "TestUser"+TAG, "Terrible"+TAG);
+ Assert.assertTrue(list.size()==1);
+ //with pagination
+ list = airavataServerHandler.searchProjectsByProjectNameWithPagination(gatewayId,
+ "TestUser" + TAG, "Project", 2, 1);
+ Assert.assertTrue(list.size()==2);
+
+ //search project by project description
+ list = airavataServerHandler.searchProjectsByProjectDesc(gatewayId, "TestUser"+TAG,
+ "test project_2"+TAG);
+ Assert.assertTrue(list.size()==1);
+ //with pagination
+ list = airavataServerHandler.searchProjectsByProjectDescWithPagination(gatewayId,
+ "TestUser" + TAG, "test", 2, 1);
+ Assert.assertTrue(list.size()==2);
+
+ //get all projects of user
+ list = airavataServerHandler.getAllUserProjects(gatewayId, "TestUser"+TAG);
+ Assert.assertTrue(list.size()==5);
+ //with pagination
+ list = airavataServerHandler.getAllUserProjectsWithPagination(gatewayId, "TestUser" + TAG, 2, 2);
+ Assert.assertTrue(list.size()==2);
+ Project project1 = list.get(0);
+ Project project2 = list.get(1);
+ Assert.assertTrue(project1.getCreationTime()-project2.getCreationTime() > 0);
+ } catch (Exception e) {
+ e.printStackTrace();
+ Assert.fail();
+ }
+ }
+
+ /**
+ * Testing for project related API methods
+ */
+ @Test
+ public void testExperiment(){
+ try {
+ String TAG = System.currentTimeMillis() + "";
+
+ String applicationId = "Echo_" + UUID.randomUUID().toString();
+
+ //creating project
+ Project project = new Project();
+ project.setOwner("TestUser"+TAG);
+ project.setName("TestProject"+TAG);
+ project.setDescription("This is a test project"+TAG);
+ String projectId1 = airavataServerHandler.createProject(gatewayId,project);
+ Assert.assertNotNull(projectId1);
+
+ //creating sample echo experiment. assumes echo application is already defined
+ InputDataObjectType inputDataObjectType = new InputDataObjectType();
+ inputDataObjectType.setName("Input_to_Echo");
+ inputDataObjectType.setValue("Hello World");
+
+ ComputationalResourceScheduling scheduling = new ComputationalResourceScheduling();
+ scheduling.setResourceHostId(UUID.randomUUID().toString());
+ scheduling.setComputationalProjectAccount("TG-STA110014S");
+ scheduling.setTotalCPUCount(1);
+ scheduling.setNodeCount(1);
+ scheduling.setWallTimeLimit(15);
+ scheduling.setQueueName("normal");
+
+ UserConfigurationData userConfigurationData = new UserConfigurationData();
+ userConfigurationData.setAiravataAutoSchedule(false);
+ userConfigurationData.setOverrideManualScheduledParams(false);
+ userConfigurationData.setComputationalResourceScheduling(scheduling);
+
+ Experiment experiment = new Experiment();
+ experiment.setProjectID(projectId1);
+ experiment.setUserName("TestUser" + TAG);
+ experiment.setName("TestExperiment"+TAG);
+ experiment.setDescription("experiment");
+ experiment.setApplicationId(applicationId);
+ experiment.setUserConfigurationData(userConfigurationData);
+ experiment.addToExperimentInputs(inputDataObjectType);
+
+ String experimentId1 = airavataServerHandler.createExperiment(gatewayId, experiment);
+ Assert.assertNotNull(experimentId1);
+
+ //retrieving the stored experiment
+ Experiment retrievedExperiment = airavataServerHandler.getExperiment(experimentId1);
+ Assert.assertNotNull(retrievedExperiment);
+ Assert.assertEquals(retrievedExperiment.getProjectID(), experiment.getProjectID());
+ Assert.assertEquals(retrievedExperiment.getDescription(), experiment.getDescription());
+ Assert.assertEquals(retrievedExperiment.getName(), experiment.getName());
+ Assert.assertEquals(retrievedExperiment.getApplicationId(), experiment.getApplicationId());
+ Assert.assertNotNull(retrievedExperiment.getUserConfigurationData());
+ Assert.assertNotNull(retrievedExperiment.getExperimentInputs());
+
+ //updating an existing experiment
+ experiment.setName("NewExperimentName"+TAG);
+ OutputDataObjectType outputDataObjectType = new OutputDataObjectType();
+ outputDataObjectType.setName("Output_to_Echo");
+ outputDataObjectType.setValue("Hello World");
+ experiment.addToExperimentOutputs(outputDataObjectType);
+ airavataServerHandler.updateExperiment(experimentId1, experiment);
+
+ //creating more experiments
+ experiment = new Experiment();
+ experiment.setProjectID(projectId1);
+ experiment.setUserName("TestUser" + TAG);
+ experiment.setName("TestExperiment2" + TAG);
+ experiment.setDescription("experiment");
+ experiment.setApplicationId(applicationId);
+ experiment.setUserConfigurationData(userConfigurationData);
+ experiment.addToExperimentInputs(inputDataObjectType);
+
+ String experimentId2 = airavataServerHandler.createExperiment(gatewayId, experiment);
+ Assert.assertNotNull(experimentId2);
+
+ experiment = new Experiment();
+ experiment.setProjectID(projectId1);
+ experiment.setUserName("TestUser" + TAG);
+ experiment.setName("TestExperiment3"+TAG);
+ experiment.setDescription("experiment");
+ experiment.setApplicationId(applicationId);
+ experiment.setUserConfigurationData(userConfigurationData);
+ experiment.addToExperimentInputs(inputDataObjectType);
+
+ String experimentId3 = airavataServerHandler.createExperiment(gatewayId, experiment);
+ Assert.assertNotNull(experimentId3);
+
+ //searching experiments by name
+ List<ExperimentSummary> results = airavataServerHandler.searchExperimentsByName(gatewayId,
+ "TestUser" + TAG, "Experiment2");
+ Assert.assertTrue(results.size()==1);
+ //with pagination
+ results = airavataServerHandler.searchExperimentsByNameWithPagination(gatewayId,
+ "TestUser" + TAG, "Experi", 2, 0);
+ Assert.assertTrue(results.size()==2);
+
+ //searching experiments by creation time
+ long time = System.currentTimeMillis();
+ results = airavataServerHandler.searchExperimentsByCreationTime(
+ gatewayId, "TestUser" + TAG, time-10000, time+1000);
+ Assert.assertTrue(results.size()==3);
+ //with pagination
+ results = airavataServerHandler.searchExperimentsByCreationTimeWithPagination(
+ gatewayId, "TestUser" + TAG, time-10000, time+1000, 2, 1);
+ Assert.assertTrue(results.size()==2);
+
+ //searching based on experiment state
+ ExperimentState experimentState = ExperimentState.findByValue(0);
+ results = airavataServerHandler.searchExperimentsByStatus(
+ gatewayId, "TestUser" + TAG, experimentState);
+ Assert.assertTrue(results.size() > 0);
+ //with pagination
+ results = airavataServerHandler.searchExperimentsByStatusWithPagination(
+ gatewayId, "TestUser" + TAG, experimentState, 2, 0);
+ Assert.assertTrue(results.size()==2);
+
+ //searching based on application
+ results = airavataServerHandler.searchExperimentsByApplication(
+ gatewayId, "TestUser" + TAG, "Ech");
+ Assert.assertTrue(results.size() > 0);
+ //with pagination
+ results = airavataServerHandler.searchExperimentsByApplicationWithPagination(
+ gatewayId, "TestUser" + TAG, "Ech", 2, 0);
+ Assert.assertTrue(results.size()==2);
+
+ //searching experiments by description
+ results = airavataServerHandler.searchExperimentsByDesc(
+ gatewayId, "TestUser" + TAG, "exp");
+ Assert.assertTrue(results.size() > 0);
+ //with pagination
+ results = airavataServerHandler.searchExperimentsByDescWithPagination(
+ gatewayId, "TestUser" + TAG, "exp", 2, 0);
+ Assert.assertTrue(results.size()==2);
+
+
+ //retrieving all experiments in project
+ List<Experiment> list = airavataServerHandler.getAllExperimentsInProject(projectId1);
+ Assert.assertTrue(list.size()==3);
+ //with pagination
+ list = airavataServerHandler.getAllExperimentsInProjectWithPagination(projectId1, 2, 1);
+ Assert.assertTrue(list.size()==2);
+
+ //getting all user experiments
+ list = airavataServerHandler.getAllUserExperiments(gatewayId, "TestUser" + TAG);
+ Assert.assertTrue(list.size() == 3);
+ //with pagination
+ list = airavataServerHandler.getAllUserExperimentsWithPagination(
+ gatewayId, "TestUser" + TAG, 2, 0);
+ //testing time ordering
+ Assert.assertTrue(list.size()==2);
+ Experiment exp1 = list.get(0);
+ Experiment exp2 = list.get(1);
+ Assert.assertTrue(exp1.getCreationTime()-exp2.getCreationTime() > 0);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ Assert.fail();
+ }
+ }
+}
\ No newline at end of file
[09/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
index 44f1e60..dd73b61 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
@@ -138,7 +138,7 @@ import org.slf4j.LoggerFactory;
* *
* * @param userName
* * The Project Object described in the workspaceModel
- * *
+ * * @deprecated Instead use getAllUserProjectsWithPagination
* *
*
* @param gatewayId
@@ -147,8 +147,36 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.Project> getAllUserProjects(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * * Get all Project by user with pagination. Results will be ordered based
+ * * on creation time DESC
+ * *
+ * * @param gatewayId
+ * * The identifier for the requested gateway.
+ * * @param userName
+ * * The identifier of the user
+ * * @param limit
+ * * The amount results to be fetched
+ * * @param offset
+ * * The starting point of the results to be fetched
+ * *
+ *
+ * @param gatewayId
+ * @param userName
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.Project> getAllUserProjectsWithPagination(String gatewayId, String userName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Get all Project for user by project name
*
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param projectName
+ * The name of the project on which the results to be fetched
+ * @deprecated Instead use searchProjectsByProjectNameWithPagination
*
* @param gatewayId
* @param userName
@@ -157,8 +185,37 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectName(String gatewayId, String userName, String projectName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
- * Get all Project for user by project description
+ * Get all Project for user by project name with pagination.Results will be ordered based
+ * on creation time DESC
*
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param projectName
+ * The name of the project on which the results to be fetched
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param projectName
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectNameWithPagination(String gatewayId, String userName, String projectName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
+ * Get all Project for user by project description
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param description
+ * The description to be matched
+ * @deprecated Instead use searchProjectsByProjectDescWithPagination
*
* @param gatewayId
* @param userName
@@ -167,8 +224,40 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Search and get all Projects for user by project description with pagination. Results
+ * will be ordered based on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param description
+ * The description to be matched
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param description
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Search Experiments by experiment name
*
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param useNname
+ * Username of the requested user
+ * @param expName
+ * Experiment name to be matched
+ * @deprecated
+ * Instead use searchExperimentsByNameWithPagination
+ *
*
* @param gatewayId
* @param userName
@@ -177,8 +266,39 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByName(String gatewayId, String userName, String expName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Search Experiments by experiment name with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param expName
+ * Experiment name to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param expName
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByNameWithPagination(String gatewayId, String userName, String expName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Search Experiments by experiment name
*
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param description
+ * Experiment description to be matched
+ * @deprecated
+ * Instead use searchExperimentsByDescWithPagination
*
* @param gatewayId
* @param userName
@@ -187,8 +307,39 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Search Experiments by experiment name with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param description
+ * Experiment description to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param description
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Search Experiments by application id
*
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param applicationId
+ * Application id to be matched
+ * @deprecated
+ * Instead use searchExperimentsByApplicationWithPagination
*
* @param gatewayId
* @param userName
@@ -197,8 +348,39 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplication(String gatewayId, String userName, String applicationId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Search Experiments by application id with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param applicationId
+ * Application id to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param applicationId
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplicationWithPagination(String gatewayId, String userName, String applicationId, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Search Experiments by experiment status
*
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param experimentState
+ * Experiement state to be matched
+ * @deprecated
+ * Instead use searchExperimentsByStatusWithPagination
*
* @param gatewayId
* @param userName
@@ -207,8 +389,41 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
- * Search Experiments by experiment status
+ * Search Experiments by experiment status with pagination. Results will be sorted
+ * based on creation time DESC
*
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param experimentState
+ * Experiement state to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param experimentState
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatusWithPagination(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
+ * Search Experiments by experiment creation time
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param fromTime
+ * Start time of the experiments creation time
+ * @param toTime
+ * End time of the experiement creation time
+ * @deprecated
+ * Instead use searchExperimentsByCreationTimeWithPagination
*
* @param gatewayId
* @param userName
@@ -218,16 +433,69 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Search Experiments by experiment creation time with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param fromTime
+ * Start time of the experiments creation time
+ * @param toTime
+ * End time of the experiement creation time
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param fromTime
+ * @param toTime
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTimeWithPagination(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Get all Experiments within a Project
*
+ * @param projectId
+ * Identifier of the project
+ * @deprecated
+ * Instead use getAllExperimentsInProjectWithPagination
*
* @param projectId
*/
public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllExperimentsInProject(String projectId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException;
/**
+ * Get all Experiments within project with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param projectId
+ * Identifier of the project
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param projectId
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllExperimentsInProjectWithPagination(String projectId, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException;
+
+ /**
* Get all Experiments by user
*
+ * @param gatewayId
+ * Identifier of the requesting gateway
+ * @param userName
+ * Username of the requested user
+ * @deprecated
+ * Instead use getAllUserExperimentsWithPagination
*
* @param gatewayId
* @param userName
@@ -235,6 +503,26 @@ import org.slf4j.LoggerFactory;
public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperiments(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
/**
+ * Get all Experiments by user pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requesting gateway
+ * @param userName
+ * Username of the requested user
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ *
+ * @param gatewayId
+ * @param userName
+ * @param limit
+ * @param offset
+ */
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperimentsWithPagination(String gatewayId, String userName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException;
+
+ /**
* Create an experiment for the specified user belonging to the gateway. The gateway identity is not explicitly passed
* but inferred from the authentication header. This experiment is just a persistent place holder. The client
* has to subsequently configure and launch the created experiment. No action is taken on Airavata Server except
@@ -1534,24 +1822,44 @@ import org.slf4j.LoggerFactory;
public void getAllUserProjects(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void getAllUserProjectsWithPagination(String gatewayId, String userName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchProjectsByProjectName(String gatewayId, String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchProjectsByProjectNameWithPagination(String gatewayId, String userName, String projectName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchProjectsByProjectDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchProjectsByProjectDescWithPagination(String gatewayId, String userName, String description, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchExperimentsByName(String gatewayId, String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchExperimentsByNameWithPagination(String gatewayId, String userName, String expName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchExperimentsByDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchExperimentsByDescWithPagination(String gatewayId, String userName, String description, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchExperimentsByApplication(String gatewayId, String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchExperimentsByApplicationWithPagination(String gatewayId, String userName, String applicationId, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchExperimentsByStatusWithPagination(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void searchExperimentsByCreationTimeWithPagination(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void getAllExperimentsInProject(String projectId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void getAllExperimentsInProjectWithPagination(String projectId, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void getAllUserExperiments(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void getAllUserExperimentsWithPagination(String gatewayId, String userName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
public void createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
public void getExperiment(String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
@@ -2244,6 +2552,41 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserProjects failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.Project> getAllUserProjectsWithPagination(String gatewayId, String userName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_getAllUserProjectsWithPagination(gatewayId, userName, limit, offset);
+ return recv_getAllUserProjectsWithPagination();
+ }
+
+ public void send_getAllUserProjectsWithPagination(String gatewayId, String userName, int limit, int offset) throws org.apache.thrift.TException
+ {
+ getAllUserProjectsWithPagination_args args = new getAllUserProjectsWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("getAllUserProjectsWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.Project> recv_getAllUserProjectsWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ getAllUserProjectsWithPagination_result result = new getAllUserProjectsWithPagination_result();
+ receiveBase(result, "getAllUserProjectsWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserProjectsWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectName(String gatewayId, String userName, String projectName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchProjectsByProjectName(gatewayId, userName, projectName);
@@ -2278,6 +2621,42 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchProjectsByProjectName failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectNameWithPagination(String gatewayId, String userName, String projectName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchProjectsByProjectNameWithPagination(gatewayId, userName, projectName, limit, offset);
+ return recv_searchProjectsByProjectNameWithPagination();
+ }
+
+ public void send_searchProjectsByProjectNameWithPagination(String gatewayId, String userName, String projectName, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchProjectsByProjectNameWithPagination_args args = new searchProjectsByProjectNameWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setProjectName(projectName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchProjectsByProjectNameWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.Project> recv_searchProjectsByProjectNameWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchProjectsByProjectNameWithPagination_result result = new searchProjectsByProjectNameWithPagination_result();
+ receiveBase(result, "searchProjectsByProjectNameWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchProjectsByProjectNameWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchProjectsByProjectDesc(gatewayId, userName, description);
@@ -2312,6 +2691,42 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchProjectsByProjectDesc failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.Project> searchProjectsByProjectDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchProjectsByProjectDescWithPagination(gatewayId, userName, description, limit, offset);
+ return recv_searchProjectsByProjectDescWithPagination();
+ }
+
+ public void send_searchProjectsByProjectDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchProjectsByProjectDescWithPagination_args args = new searchProjectsByProjectDescWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setDescription(description);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchProjectsByProjectDescWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.Project> recv_searchProjectsByProjectDescWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchProjectsByProjectDescWithPagination_result result = new searchProjectsByProjectDescWithPagination_result();
+ receiveBase(result, "searchProjectsByProjectDescWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchProjectsByProjectDescWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByName(String gatewayId, String userName, String expName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchExperimentsByName(gatewayId, userName, expName);
@@ -2346,6 +2761,42 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByName failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByNameWithPagination(String gatewayId, String userName, String expName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchExperimentsByNameWithPagination(gatewayId, userName, expName, limit, offset);
+ return recv_searchExperimentsByNameWithPagination();
+ }
+
+ public void send_searchExperimentsByNameWithPagination(String gatewayId, String userName, String expName, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchExperimentsByNameWithPagination_args args = new searchExperimentsByNameWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setExpName(expName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchExperimentsByNameWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> recv_searchExperimentsByNameWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchExperimentsByNameWithPagination_result result = new searchExperimentsByNameWithPagination_result();
+ receiveBase(result, "searchExperimentsByNameWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByNameWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDesc(String gatewayId, String userName, String description) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchExperimentsByDesc(gatewayId, userName, description);
@@ -2380,6 +2831,42 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByDesc failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchExperimentsByDescWithPagination(gatewayId, userName, description, limit, offset);
+ return recv_searchExperimentsByDescWithPagination();
+ }
+
+ public void send_searchExperimentsByDescWithPagination(String gatewayId, String userName, String description, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchExperimentsByDescWithPagination_args args = new searchExperimentsByDescWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setDescription(description);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchExperimentsByDescWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> recv_searchExperimentsByDescWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchExperimentsByDescWithPagination_result result = new searchExperimentsByDescWithPagination_result();
+ receiveBase(result, "searchExperimentsByDescWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByDescWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplication(String gatewayId, String userName, String applicationId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchExperimentsByApplication(gatewayId, userName, applicationId);
@@ -2414,6 +2901,42 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByApplication failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByApplicationWithPagination(String gatewayId, String userName, String applicationId, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchExperimentsByApplicationWithPagination(gatewayId, userName, applicationId, limit, offset);
+ return recv_searchExperimentsByApplicationWithPagination();
+ }
+
+ public void send_searchExperimentsByApplicationWithPagination(String gatewayId, String userName, String applicationId, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchExperimentsByApplicationWithPagination_args args = new searchExperimentsByApplicationWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setApplicationId(applicationId);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchExperimentsByApplicationWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> recv_searchExperimentsByApplicationWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchExperimentsByApplicationWithPagination_result result = new searchExperimentsByApplicationWithPagination_result();
+ receiveBase(result, "searchExperimentsByApplicationWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByApplicationWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchExperimentsByStatus(gatewayId, userName, experimentState);
@@ -2448,6 +2971,42 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByStatus failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByStatusWithPagination(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchExperimentsByStatusWithPagination(gatewayId, userName, experimentState, limit, offset);
+ return recv_searchExperimentsByStatusWithPagination();
+ }
+
+ public void send_searchExperimentsByStatusWithPagination(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchExperimentsByStatusWithPagination_args args = new searchExperimentsByStatusWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setExperimentState(experimentState);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchExperimentsByStatusWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> recv_searchExperimentsByStatusWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchExperimentsByStatusWithPagination_result result = new searchExperimentsByStatusWithPagination_result();
+ receiveBase(result, "searchExperimentsByStatusWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByStatusWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_searchExperimentsByCreationTime(gatewayId, userName, fromTime, toTime);
@@ -2483,6 +3042,43 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByCreationTime failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> searchExperimentsByCreationTimeWithPagination(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_searchExperimentsByCreationTimeWithPagination(gatewayId, userName, fromTime, toTime, limit, offset);
+ return recv_searchExperimentsByCreationTimeWithPagination();
+ }
+
+ public void send_searchExperimentsByCreationTimeWithPagination(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset) throws org.apache.thrift.TException
+ {
+ searchExperimentsByCreationTimeWithPagination_args args = new searchExperimentsByCreationTimeWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setFromTime(fromTime);
+ args.setToTime(toTime);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("searchExperimentsByCreationTimeWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> recv_searchExperimentsByCreationTimeWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ searchExperimentsByCreationTimeWithPagination_result result = new searchExperimentsByCreationTimeWithPagination_result();
+ receiveBase(result, "searchExperimentsByCreationTimeWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchExperimentsByCreationTimeWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllExperimentsInProject(String projectId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException
{
send_getAllExperimentsInProject(projectId);
@@ -2518,6 +3114,43 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllExperimentsInProject failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllExperimentsInProjectWithPagination(String projectId, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException
+ {
+ send_getAllExperimentsInProjectWithPagination(projectId, limit, offset);
+ return recv_getAllExperimentsInProjectWithPagination();
+ }
+
+ public void send_getAllExperimentsInProjectWithPagination(String projectId, int limit, int offset) throws org.apache.thrift.TException
+ {
+ getAllExperimentsInProjectWithPagination_args args = new getAllExperimentsInProjectWithPagination_args();
+ args.setProjectId(projectId);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("getAllExperimentsInProjectWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> recv_getAllExperimentsInProjectWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException
+ {
+ getAllExperimentsInProjectWithPagination_result result = new getAllExperimentsInProjectWithPagination_result();
+ receiveBase(result, "getAllExperimentsInProjectWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ if (result.pnfe != null) {
+ throw result.pnfe;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllExperimentsInProjectWithPagination failed: unknown result");
+ }
+
public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperiments(String gatewayId, String userName) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_getAllUserExperiments(gatewayId, userName);
@@ -2551,6 +3184,41 @@ import org.slf4j.LoggerFactory;
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserExperiments failed: unknown result");
}
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> getAllUserExperimentsWithPagination(String gatewayId, String userName, int limit, int offset) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ send_getAllUserExperimentsWithPagination(gatewayId, userName, limit, offset);
+ return recv_getAllUserExperimentsWithPagination();
+ }
+
+ public void send_getAllUserExperimentsWithPagination(String gatewayId, String userName, int limit, int offset) throws org.apache.thrift.TException
+ {
+ getAllUserExperimentsWithPagination_args args = new getAllUserExperimentsWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ sendBase("getAllUserExperimentsWithPagination", args);
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> recv_getAllUserExperimentsWithPagination() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
+ {
+ getAllUserExperimentsWithPagination_result result = new getAllUserExperimentsWithPagination_result();
+ receiveBase(result, "getAllUserExperimentsWithPagination");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ if (result.ire != null) {
+ throw result.ire;
+ }
+ if (result.ace != null) {
+ throw result.ace;
+ }
+ if (result.ase != null) {
+ throw result.ase;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllUserExperimentsWithPagination failed: unknown result");
+ }
+
public String createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException
{
send_createExperiment(gatewayId, experiment);
@@ -6053,6 +6721,47 @@ import org.slf4j.LoggerFactory;
}
}
+ public void getAllUserProjectsWithPagination(String gatewayId, String userName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ getAllUserProjectsWithPagination_call method_call = new getAllUserProjectsWithPagination_call(gatewayId, userName, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class getAllUserProjectsWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private int limit;
+ private int offset;
+ public getAllUserProjectsWithPagination_call(String gatewayId, String userName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAllUserProjectsWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ getAllUserProjectsWithPagination_args args = new getAllUserProjectsWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.Project> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_getAllUserProjectsWithPagination();
+ }
+ }
+
public void searchProjectsByProjectName(String gatewayId, String userName, String projectName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchProjectsByProjectName_call method_call = new searchProjectsByProjectName_call(gatewayId, userName, projectName, resultHandler, this, ___protocolFactory, ___transport);
@@ -6091,6 +6800,50 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchProjectsByProjectNameWithPagination(String gatewayId, String userName, String projectName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchProjectsByProjectNameWithPagination_call method_call = new searchProjectsByProjectNameWithPagination_call(gatewayId, userName, projectName, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchProjectsByProjectNameWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private String projectName;
+ private int limit;
+ private int offset;
+ public searchProjectsByProjectNameWithPagination_call(String gatewayId, String userName, String projectName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.projectName = projectName;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchProjectsByProjectNameWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchProjectsByProjectNameWithPagination_args args = new searchProjectsByProjectNameWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setProjectName(projectName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.Project> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchProjectsByProjectNameWithPagination();
+ }
+ }
+
public void searchProjectsByProjectDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchProjectsByProjectDesc_call method_call = new searchProjectsByProjectDesc_call(gatewayId, userName, description, resultHandler, this, ___protocolFactory, ___transport);
@@ -6129,6 +6882,50 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchProjectsByProjectDescWithPagination(String gatewayId, String userName, String description, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchProjectsByProjectDescWithPagination_call method_call = new searchProjectsByProjectDescWithPagination_call(gatewayId, userName, description, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchProjectsByProjectDescWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private String description;
+ private int limit;
+ private int offset;
+ public searchProjectsByProjectDescWithPagination_call(String gatewayId, String userName, String description, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.description = description;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchProjectsByProjectDescWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchProjectsByProjectDescWithPagination_args args = new searchProjectsByProjectDescWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setDescription(description);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.Project> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchProjectsByProjectDescWithPagination();
+ }
+ }
+
public void searchExperimentsByName(String gatewayId, String userName, String expName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchExperimentsByName_call method_call = new searchExperimentsByName_call(gatewayId, userName, expName, resultHandler, this, ___protocolFactory, ___transport);
@@ -6167,6 +6964,50 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchExperimentsByNameWithPagination(String gatewayId, String userName, String expName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchExperimentsByNameWithPagination_call method_call = new searchExperimentsByNameWithPagination_call(gatewayId, userName, expName, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchExperimentsByNameWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private String expName;
+ private int limit;
+ private int offset;
+ public searchExperimentsByNameWithPagination_call(String gatewayId, String userName, String expName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.expName = expName;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByNameWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchExperimentsByNameWithPagination_args args = new searchExperimentsByNameWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setExpName(expName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchExperimentsByNameWithPagination();
+ }
+ }
+
public void searchExperimentsByDesc(String gatewayId, String userName, String description, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchExperimentsByDesc_call method_call = new searchExperimentsByDesc_call(gatewayId, userName, description, resultHandler, this, ___protocolFactory, ___transport);
@@ -6205,6 +7046,50 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchExperimentsByDescWithPagination(String gatewayId, String userName, String description, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchExperimentsByDescWithPagination_call method_call = new searchExperimentsByDescWithPagination_call(gatewayId, userName, description, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchExperimentsByDescWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private String description;
+ private int limit;
+ private int offset;
+ public searchExperimentsByDescWithPagination_call(String gatewayId, String userName, String description, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.description = description;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByDescWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchExperimentsByDescWithPagination_args args = new searchExperimentsByDescWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setDescription(description);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchExperimentsByDescWithPagination();
+ }
+ }
+
public void searchExperimentsByApplication(String gatewayId, String userName, String applicationId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchExperimentsByApplication_call method_call = new searchExperimentsByApplication_call(gatewayId, userName, applicationId, resultHandler, this, ___protocolFactory, ___transport);
@@ -6243,6 +7128,50 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchExperimentsByApplicationWithPagination(String gatewayId, String userName, String applicationId, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchExperimentsByApplicationWithPagination_call method_call = new searchExperimentsByApplicationWithPagination_call(gatewayId, userName, applicationId, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchExperimentsByApplicationWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private String applicationId;
+ private int limit;
+ private int offset;
+ public searchExperimentsByApplicationWithPagination_call(String gatewayId, String userName, String applicationId, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.applicationId = applicationId;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByApplicationWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchExperimentsByApplicationWithPagination_args args = new searchExperimentsByApplicationWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setApplicationId(applicationId);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchExperimentsByApplicationWithPagination();
+ }
+ }
+
public void searchExperimentsByStatus(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchExperimentsByStatus_call method_call = new searchExperimentsByStatus_call(gatewayId, userName, experimentState, resultHandler, this, ___protocolFactory, ___transport);
@@ -6281,6 +7210,50 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchExperimentsByStatusWithPagination(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchExperimentsByStatusWithPagination_call method_call = new searchExperimentsByStatusWithPagination_call(gatewayId, userName, experimentState, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchExperimentsByStatusWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private org.apache.airavata.model.workspace.experiment.ExperimentState experimentState;
+ private int limit;
+ private int offset;
+ public searchExperimentsByStatusWithPagination_call(String gatewayId, String userName, org.apache.airavata.model.workspace.experiment.ExperimentState experimentState, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.experimentState = experimentState;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByStatusWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchExperimentsByStatusWithPagination_args args = new searchExperimentsByStatusWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setExperimentState(experimentState);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchExperimentsByStatusWithPagination();
+ }
+ }
+
public void searchExperimentsByCreationTime(String gatewayId, String userName, long fromTime, long toTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
searchExperimentsByCreationTime_call method_call = new searchExperimentsByCreationTime_call(gatewayId, userName, fromTime, toTime, resultHandler, this, ___protocolFactory, ___transport);
@@ -6322,6 +7295,53 @@ import org.slf4j.LoggerFactory;
}
}
+ public void searchExperimentsByCreationTimeWithPagination(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ searchExperimentsByCreationTimeWithPagination_call method_call = new searchExperimentsByCreationTimeWithPagination_call(gatewayId, userName, fromTime, toTime, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class searchExperimentsByCreationTimeWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private long fromTime;
+ private long toTime;
+ private int limit;
+ private int offset;
+ public searchExperimentsByCreationTimeWithPagination_call(String gatewayId, String userName, long fromTime, long toTime, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.fromTime = fromTime;
+ this.toTime = toTime;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("searchExperimentsByCreationTimeWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ searchExperimentsByCreationTimeWithPagination_args args = new searchExperimentsByCreationTimeWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setFromTime(fromTime);
+ args.setToTime(toTime);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.ExperimentSummary> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_searchExperimentsByCreationTimeWithPagination();
+ }
+ }
+
public void getAllExperimentsInProject(String projectId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
getAllExperimentsInProject_call method_call = new getAllExperimentsInProject_call(projectId, resultHandler, this, ___protocolFactory, ___transport);
@@ -6354,6 +7374,44 @@ import org.slf4j.LoggerFactory;
}
}
+ public void getAllExperimentsInProjectWithPagination(String projectId, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ getAllExperimentsInProjectWithPagination_call method_call = new getAllExperimentsInProjectWithPagination_call(projectId, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class getAllExperimentsInProjectWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String projectId;
+ private int limit;
+ private int offset;
+ public getAllExperimentsInProjectWithPagination_call(String projectId, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.projectId = projectId;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAllExperimentsInProjectWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ getAllExperimentsInProjectWithPagination_args args = new getAllExperimentsInProjectWithPagination_args();
+ args.setProjectId(projectId);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.ProjectNotFoundException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_getAllExperimentsInProjectWithPagination();
+ }
+ }
+
public void getAllUserExperiments(String gatewayId, String userName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
getAllUserExperiments_call method_call = new getAllUserExperiments_call(gatewayId, userName, resultHandler, this, ___protocolFactory, ___transport);
@@ -6389,6 +7447,47 @@ import org.slf4j.LoggerFactory;
}
}
+ public void getAllUserExperimentsWithPagination(String gatewayId, String userName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ getAllUserExperimentsWithPagination_call method_call = new getAllUserExperimentsWithPagination_call(gatewayId, userName, limit, offset, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class getAllUserExperimentsWithPagination_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String gatewayId;
+ private String userName;
+ private int limit;
+ private int offset;
+ public getAllUserExperimentsWithPagination_call(String gatewayId, String userName, int limit, int offset, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.gatewayId = gatewayId;
+ this.userName = userName;
+ this.limit = limit;
+ this.offset = offset;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getAllUserExperimentsWithPagination", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ getAllUserExperimentsWithPagination_args args = new getAllUserExperimentsWithPagination_args();
+ args.setGatewayId(gatewayId);
+ args.setUserName(userName);
+ args.setLimit(limit);
+ args.setOffset(offset);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<org.apache.airavata.model.workspace.experiment.Experiment> getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_getAllUserExperimentsWithPagination();
+ }
+ }
+
public void createExperiment(String gatewayId, org.apache.airavata.model.workspace.experiment.Experiment experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
checkReady();
createExperiment_call method_call = new createExperiment_call(gatewayId, experiment, resultHandler, this, ___protocolFactory, ___transport);
@@ -9514,15 +10613,25 @@ import org.slf4j.LoggerFactory;
processMap.put("getProject", new getProject());
processMap.put("deleteProject", new deleteProject());
processMap.put("getAllUserProjects", new getAllUserProjects());
+ processMap.put("getAllUserProjectsWithPagination", new getAllUserProjectsWithPagination());
processMap.put("searchProjectsByProjectName", new searchProjectsByProjectName());
+ processMap.put("searchProjectsByProjectNameWithPagination", new searchProjectsByProjectNameWithPagination());
processMap.put("searchProjectsByProjectDesc", new searchProjectsByProjectDesc());
+ processMap.put("searchProjectsByProjectDescWithPagination", new searchProjectsByProjectDescWithPagination());
processMap.put("searchExperimentsByName", new searchExperimentsByName());
+ processMap.put("searchExperimentsByNameWithPagination", new searchExperimentsByNameWithPagination());
processMap.put("searchExperimentsByDesc", new searchExperimentsByDesc());
+ processMap.put("searchExperimentsByDescWithPagination", new searchExperimentsByDescWithPagination());
processMap.put("searchExperimentsByApplication", new searchExperimentsByApplication());
+ processMap.put("searchExperimentsByApplicationWithPagination", new searchExperimentsByApplicationWithPagination());
processMap.put("searchExperimentsByStatus", new searchExperimentsByStatus());
+ processMap.put("searchExperimentsByStatusWithPagination", new searchExperimentsByStatusWithPagination());
processMap.put("searchExperimentsByCreationTime", new searchExperimentsByCreationTime());
+ processMap.put("searchExperimentsByCreationTimeWithPagination", new searchExperimentsByCreationTimeWithPagination());
processMap.put("getAllExperimentsInProject", new getAllExperimentsInProject());
+ processMap.put("getAllExperimentsInProjectWithPagination", new getAllExperimentsInProjectWithPagination());
processMap.put("getAllUserExperiments", new getAllUserExperiments());
+ processMap.put("getAllUserExperimentsWithPagination", new getAllUserExperimentsWithPagination());
processMap.put("createExperiment", new createExperiment());
processMap.put("getExperiment", new getExperiment());
processMap.put("updateExperiment", new updateExperiment());
@@ -10047,6 +11156,34 @@ import org.slf4j.LoggerFactory;
}
}
+ public static class getAllUserProjectsWithPagination<I extends Iface> extends org.apache.thrift.ProcessFunction<I, getAllUserProjectsWithPagination_args> {
+ public getAllUserProjectsWithPagination() {
+ super("getAllUserProjectsWithPagination");
+ }
+
+ public getAllUserProjectsWithPagination_args getEmptyArgsInstance() {
+ return new getAllUserProjectsWithPagination_args();
+ }
+
+ protected boolean isOneway() {
+ return false;
+ }
+
+ public getAllUserProjectsWithPagination_result getResult(I iface, getAllUserProjectsWithPagination_args args) throws org.apache.thrift.TException {
+ getAllUserProjectsWithPagination_result resul
<TRUNCATED>
[18/19] airavata git commit: Merge branch 'master' of
https://github.com/apache/airavata
Posted by sm...@apache.org.
Merge branch 'master' of https://github.com/apache/airavata
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/5d940d34
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/5d940d34
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/5d940d34
Branch: refs/heads/master
Commit: 5d940d347f7f16164cef4a0f6456ec9845016574
Parents: 478b397 7c1c632
Author: Supun Nakandala <su...@gmail.com>
Authored: Thu Apr 30 21:17:33 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Thu Apr 30 21:17:33 2015 +0530
----------------------------------------------------------------------
.../main/resources/samples/createExperiment.py | 74 ++++++++
.../src/main/resources/samples/createProject.py | 70 ++++++++
.../samples/getAllApplicationInterfaces.py | 64 +++++++
.../samples/getAllComputeResourceNames.py | 64 +++++++
.../src/main/resources/samples/getProjects.py | 64 +++++++
.../client/samples/CreateLaunchExperiment.java | 8 +-
.../airavata/gfac/core/cpi/BetterGfacImpl.java | 175 +++++++++++--------
.../gfac/core/utils/OutHandlerWorker.java | 1 +
.../core/impl/GFACPassiveJobSubmitter.java | 31 ++--
9 files changed, 451 insertions(+), 100 deletions(-)
----------------------------------------------------------------------
[16/19] airavata git commit: Merge branch 'master' of
https://github.com/apache/airavata
Posted by sm...@apache.org.
Merge branch 'master' of https://github.com/apache/airavata
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/464e9555
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/464e9555
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/464e9555
Branch: refs/heads/master
Commit: 464e95554c709e08f8ba6188fcffaf4bfdc29ec6
Parents: 6e94c35 135607c
Author: Supun Nakandala <su...@gmail.com>
Authored: Wed Apr 29 15:58:16 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Wed Apr 29 15:58:16 2015 +0530
----------------------------------------------------------------------
.../airavata/gfac/server/GfacServerHandler.java | 5 +-
.../airavata/gfac/core/cpi/BetterGfacImpl.java | 11 +++-
.../gfac/monitor/email/EmailBasedMonitor.java | 56 ++++++++++++--------
.../monitor/email/parser/UGEEmailParser.java | 42 ++++++++++++---
.../server/OrchestratorServerHandler.java | 3 ++
5 files changed, 85 insertions(+), 32 deletions(-)
----------------------------------------------------------------------
[06/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
index b39c56f..faf8c0f 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
@@ -114,51 +114,101 @@ class AiravataHandler : virtual public AiravataIf {
printf("getAllUserProjects\n");
}
+ void getAllUserProjectsWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("getAllUserProjectsWithPagination\n");
+ }
+
void searchProjectsByProjectName(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& projectName) {
// Your implementation goes here
printf("searchProjectsByProjectName\n");
}
+ void searchProjectsByProjectNameWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& projectName, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchProjectsByProjectNameWithPagination\n");
+ }
+
void searchProjectsByProjectDesc(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description) {
// Your implementation goes here
printf("searchProjectsByProjectDesc\n");
}
+ void searchProjectsByProjectDescWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchProjectsByProjectDescWithPagination\n");
+ }
+
void searchExperimentsByName(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& expName) {
// Your implementation goes here
printf("searchExperimentsByName\n");
}
+ void searchExperimentsByNameWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& expName, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchExperimentsByNameWithPagination\n");
+ }
+
void searchExperimentsByDesc(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description) {
// Your implementation goes here
printf("searchExperimentsByDesc\n");
}
+ void searchExperimentsByDescWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchExperimentsByDescWithPagination\n");
+ }
+
void searchExperimentsByApplication(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& applicationId) {
// Your implementation goes here
printf("searchExperimentsByApplication\n");
}
+ void searchExperimentsByApplicationWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& applicationId, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchExperimentsByApplicationWithPagination\n");
+ }
+
void searchExperimentsByStatus(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState) {
// Your implementation goes here
printf("searchExperimentsByStatus\n");
}
+ void searchExperimentsByStatusWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchExperimentsByStatusWithPagination\n");
+ }
+
void searchExperimentsByCreationTime(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const int64_t fromTime, const int64_t toTime) {
// Your implementation goes here
printf("searchExperimentsByCreationTime\n");
}
+ void searchExperimentsByCreationTimeWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const int64_t fromTime, const int64_t toTime, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("searchExperimentsByCreationTimeWithPagination\n");
+ }
+
void getAllExperimentsInProject(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& projectId) {
// Your implementation goes here
printf("getAllExperimentsInProject\n");
}
+ void getAllExperimentsInProjectWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& projectId, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("getAllExperimentsInProjectWithPagination\n");
+ }
+
void getAllUserExperiments(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& gatewayId, const std::string& userName) {
// Your implementation goes here
printf("getAllUserExperiments\n");
}
+ void getAllUserExperimentsWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& gatewayId, const std::string& userName, const int32_t limit, const int32_t offset) {
+ // Your implementation goes here
+ printf("getAllUserExperimentsWithPagination\n");
+ }
+
void createExperiment(std::string& _return, const std::string& gatewayId, const ::apache::airavata::model::workspace::experiment::Experiment& experiment) {
// Your implementation goes here
printf("createExperiment\n");
[11/19] airavata git commit: Adding registry script files as
resources in airavata-api-server module for testing
Posted by sm...@apache.org.
Adding registry script files as resources in airavata-api-server module for testing
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/c6ee5ce8
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/c6ee5ce8
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/c6ee5ce8
Branch: refs/heads/master
Commit: c6ee5ce892a560432dbe800debebeeeb58dbb0ba
Parents: 0a3d857
Author: Supun Nakandala <su...@gmail.com>
Authored: Mon Apr 27 20:57:47 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Mon Apr 27 20:57:47 2015 +0530
----------------------------------------------------------------------
.../src/main/resources/registry-derby.sql | 391 ++++++++++++++++++
.../src/main/resources/registry-mysql.sql | 392 +++++++++++++++++++
2 files changed, 783 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/c6ee5ce8/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql b/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql
new file mode 100644
index 0000000..7ab3755
--- /dev/null
+++ b/airavata-api/airavata-api-server/src/main/resources/registry-derby.sql
@@ -0,0 +1,391 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+CREATE TABLE GATEWAY
+(
+ GATEWAY_ID VARCHAR (255),
+ GATEWAY_NAME VARCHAR(255),
+ DOMAIN VARCHAR(255),
+ EMAIL_ADDRESS VARCHAR(255),
+ PRIMARY KEY (GATEWAY_ID)
+);
+
+CREATE TABLE CONFIGURATION
+(
+ CONFIG_KEY VARCHAR(255),
+ CONFIG_VAL VARCHAR(255),
+ EXPIRE_DATE TIMESTAMP DEFAULT '0000-00-00 00:00:00',
+ CATEGORY_ID VARCHAR (255),
+ PRIMARY KEY(CONFIG_KEY, CONFIG_VAL, CATEGORY_ID)
+);
+
+INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL, EXPIRE_DATE, CATEGORY_ID) VALUES('registry.version', '0.15', CURRENT_TIMESTAMP ,'SYSTEM');
+
+CREATE TABLE USERS
+(
+ USER_NAME VARCHAR(255),
+ PASSWORD VARCHAR(255),
+ PRIMARY KEY(USER_NAME)
+);
+
+CREATE TABLE GATEWAY_WORKER
+(
+ GATEWAY_ID VARCHAR(255),
+ USER_NAME VARCHAR(255),
+ PRIMARY KEY (GATEWAY_ID, USER_NAME),
+ FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
+ FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
+);
+
+CREATE TABLE PROJECT
+(
+ GATEWAY_ID VARCHAR(255),
+ USER_NAME VARCHAR(255) NOT NULL,
+ PROJECT_ID VARCHAR(255),
+ PROJECT_NAME VARCHAR(255) NOT NULL,
+ DESCRIPTION VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ PRIMARY KEY (PROJECT_ID),
+ FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
+ FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
+);
+
+CREATE TABLE PROJECT_USER
+(
+ PROJECT_ID VARCHAR(255),
+ USER_NAME VARCHAR(255),
+ PRIMARY KEY (PROJECT_ID,USER_NAME),
+ FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
+);
+
+CREATE TABLE EXPERIMENT
+(
+ EXPERIMENT_ID VARCHAR(255),
+ GATEWAY_ID VARCHAR(255),
+ EXECUTION_USER VARCHAR(255) NOT NULL,
+ PROJECT_ID VARCHAR(255) NOT NULL,
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ EXPERIMENT_NAME VARCHAR(255) NOT NULL,
+ EXPERIMENT_DESCRIPTION VARCHAR(255),
+ APPLICATION_ID VARCHAR(255),
+ APPLICATION_VERSION VARCHAR(255),
+ WORKFLOW_TEMPLATE_ID VARCHAR(255),
+ WORKFLOW_TEMPLATE_VERSION VARCHAR(255),
+ WORKFLOW_EXECUTION_ID VARCHAR(255),
+ ALLOW_NOTIFICATION SMALLINT,
+ GATEWAY_EXECUTION_ID VARCHAR(255),
+ PRIMARY KEY(EXPERIMENT_ID),
+ FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
+ FOREIGN KEY (EXECUTION_USER) REFERENCES USERS(USER_NAME) ON DELETE CASCADE,
+ FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE EXPERIMENT_INPUT
+(
+ EXPERIMENT_ID VARCHAR(255),
+ INPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ METADATA VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ STANDARD_INPUT SMALLINT,
+ USER_FRIENDLY_DESC VARCHAR(255),
+ VALUE CLOB,
+ INPUT_ORDER INTEGER,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_STAGED SMALLINT,
+ PRIMARY KEY(EXPERIMENT_ID,INPUT_KEY),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE EXPERIMENT_OUTPUT
+(
+ EXPERIMENT_ID VARCHAR(255),
+ OUTPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ VALUE CLOB,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_MOVEMENT SMALLINT,
+ DATA_NAME_LOCATION VARCHAR(255),
+ SEARCH_QUERY VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ PRIMARY KEY(EXPERIMENT_ID,OUTPUT_KEY),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+);
+
+
+CREATE TABLE WORKFLOW_NODE_DETAIL
+(
+ EXPERIMENT_ID VARCHAR(255) NOT NULL,
+ NODE_INSTANCE_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ NODE_NAME VARCHAR(255) NOT NULL,
+ EXECUTION_UNIT VARCHAR(255) NOT NULL,
+ EXECUTION_UNIT_DATA VARCHAR(255),
+ PRIMARY KEY(NODE_INSTANCE_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE TASK_DETAIL
+(
+ TASK_ID VARCHAR(255),
+ NODE_INSTANCE_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ APPLICATION_ID VARCHAR(255),
+ APPLICATION_VERSION VARCHAR(255),
+ APPLICATION_DEPLOYMENT_ID VARCHAR(255),
+ ALLOW_NOTIFICATION SMALLINT,
+ PRIMARY KEY(TASK_ID),
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE NOTIFICATION_EMAIL
+(
+ EMAIL_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ EMAIL_ADDRESS VARCHAR(255),
+ PRIMARY KEY(EMAIL_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE ERROR_DETAIL
+(
+ ERROR_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ NODE_INSTANCE_ID VARCHAR(255),
+ JOB_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ ACTUAL_ERROR_MESSAGE CLOB,
+ USER_FRIEDNLY_ERROR_MSG VARCHAR(255),
+ TRANSIENT_OR_PERSISTENT SMALLINT,
+ ERROR_CATEGORY VARCHAR(255),
+ CORRECTIVE_ACTION VARCHAR(255),
+ ACTIONABLE_GROUP VARCHAR(255),
+ PRIMARY KEY(ERROR_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE APPLICATION_INPUT
+(
+ TASK_ID VARCHAR(255),
+ INPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ METADATA VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ STANDARD_INPUT SMALLINT,
+ USER_FRIENDLY_DESC VARCHAR(255),
+ VALUE CLOB,
+ INPUT_ORDER INTEGER,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_STAGED SMALLINT,
+ PRIMARY KEY(TASK_ID,INPUT_KEY),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE APPLICATION_OUTPUT
+(
+ TASK_ID VARCHAR(255),
+ OUTPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ VALUE CLOB,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_MOVEMENT SMALLINT,
+ DATA_NAME_LOCATION VARCHAR(255),
+ SEARCH_QUERY VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ PRIMARY KEY(TASK_ID,OUTPUT_KEY),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE NODE_INPUT
+(
+ NODE_INSTANCE_ID VARCHAR(255),
+ INPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ METADATA VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ STANDARD_INPUT SMALLINT,
+ USER_FRIENDLY_DESC VARCHAR(255),
+ VALUE VARCHAR(255),
+ INPUT_ORDER INTEGER,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_STAGED SMALLINT,
+ PRIMARY KEY(NODE_INSTANCE_ID,INPUT_KEY),
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE NODE_OUTPUT
+(
+ NODE_INSTANCE_ID VARCHAR(255),
+ OUTPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ VALUE VARCHAR(255),
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_MOVEMENT SMALLINT,
+ DATA_NAME_LOCATION VARCHAR(255),
+ SEARCH_QUERY VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ PRIMARY KEY(NODE_INSTANCE_ID,OUTPUT_KEY),
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE JOB_DETAIL
+(
+ JOB_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ JOB_DESCRIPTION CLOB NOT NULL,
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ COMPUTE_RESOURCE_CONSUMED VARCHAR(255),
+ JOBNAME VARCHAR (255),
+ WORKING_DIR VARCHAR(255),
+ PRIMARY KEY (TASK_ID, JOB_ID),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE DATA_TRANSFER_DETAIL
+(
+ TRANSFER_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ TRANSFER_DESC VARCHAR(255) NOT NULL,
+ PRIMARY KEY(TRANSFER_ID),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE STATUS
+(
+ STATUS_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ NODE_INSTANCE_ID VARCHAR(255),
+ TRANSFER_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ JOB_ID VARCHAR(255),
+ STATE VARCHAR(255),
+ STATUS_UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
+ STATUS_TYPE VARCHAR(255),
+ PRIMARY KEY(STATUS_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TRANSFER_ID) REFERENCES DATA_TRANSFER_DETAIL(TRANSFER_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE CONFIG_DATA
+(
+ EXPERIMENT_ID VARCHAR(255),
+ AIRAVATA_AUTO_SCHEDULE SMALLINT NOT NULL,
+ OVERRIDE_MANUAL_SCHEDULE_PARAMS SMALLINT NOT NULL,
+ SHARE_EXPERIMENT SMALLINT,
+ USER_DN VARCHAR(255),
+ GENERATE_CERT SMALLINT,
+ PRIMARY KEY(EXPERIMENT_ID)
+);
+
+CREATE TABLE COMPUTATIONAL_RESOURCE_SCHEDULING
+(
+ RESOURCE_SCHEDULING_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ RESOURCE_HOST_ID VARCHAR(255),
+ CPU_COUNT INTEGER,
+ NODE_COUNT INTEGER,
+ NO_OF_THREADS INTEGER,
+ QUEUE_NAME VARCHAR(255),
+ WALLTIME_LIMIT INTEGER,
+ JOB_START_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
+ TOTAL_PHYSICAL_MEMORY INTEGER,
+ COMPUTATIONAL_PROJECT_ACCOUNT VARCHAR(255),
+ CHESSIS_NAME VARCHAR(255),
+ PRIMARY KEY(RESOURCE_SCHEDULING_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE ADVANCE_INPUT_DATA_HANDLING
+(
+ INPUT_DATA_HANDLING_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ WORKING_DIR_PARENT VARCHAR(255),
+ UNIQUE_WORKING_DIR VARCHAR(255),
+ STAGE_INPUT_FILES_TO_WORKING_DIR SMALLINT,
+ CLEAN_AFTER_JOB SMALLINT,
+ PRIMARY KEY(INPUT_DATA_HANDLING_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE ADVANCE_OUTPUT_DATA_HANDLING
+(
+ OUTPUT_DATA_HANDLING_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ OUTPUT_DATA_DIR VARCHAR(255),
+ DATA_REG_URL VARCHAR (255),
+ PERSIST_OUTPUT_DATA SMALLINT,
+ PRIMARY KEY(OUTPUT_DATA_HANDLING_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE QOS_PARAM
+(
+ QOS_ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ START_EXECUTION_AT VARCHAR(255),
+ EXECUTE_BEFORE VARCHAR(255),
+ NO_OF_RETRIES INTEGER,
+ PRIMARY KEY(QOS_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE COMMUNITY_USER
+(
+ GATEWAY_ID VARCHAR(256) NOT NULL,
+ COMMUNITY_USER_NAME VARCHAR(256) NOT NULL,
+ TOKEN_ID VARCHAR(256) NOT NULL,
+ COMMUNITY_USER_EMAIL VARCHAR(256) NOT NULL,
+ PRIMARY KEY (GATEWAY_ID, COMMUNITY_USER_NAME, TOKEN_ID)
+);
+
+CREATE TABLE CREDENTIALS
+(
+ GATEWAY_ID VARCHAR(256) NOT NULL,
+ TOKEN_ID VARCHAR(256) NOT NULL,
+ CREDENTIAL BLOB NOT NULL,
+ PORTAL_USER_ID VARCHAR(256) NOT NULL,
+ TIME_PERSISTED TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+ PRIMARY KEY (GATEWAY_ID, TOKEN_ID)
+);
+
+
http://git-wip-us.apache.org/repos/asf/airavata/blob/c6ee5ce8/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql b/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql
new file mode 100644
index 0000000..14d7fc8
--- /dev/null
+++ b/airavata-api/airavata-api-server/src/main/resources/registry-mysql.sql
@@ -0,0 +1,392 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+CREATE TABLE GATEWAY
+(
+ GATEWAY_ID VARCHAR(255),
+ GATEWAY_NAME VARCHAR(255),
+ DOMAIN VARCHAR(255),
+ EMAIL_ADDRESS VARCHAR(255),
+ PRIMARY KEY (GATEWAY_ID)
+);
+
+CREATE TABLE CONFIGURATION
+(
+ CONFIG_KEY VARCHAR(255),
+ CONFIG_VAL VARCHAR(255),
+ EXPIRE_DATE TIMESTAMP DEFAULT '0000-00-00 00:00:00',
+ CATEGORY_ID VARCHAR (255),
+ PRIMARY KEY(CONFIG_KEY, CONFIG_VAL, CATEGORY_ID)
+);
+
+INSERT INTO CONFIGURATION (CONFIG_KEY, CONFIG_VAL, EXPIRE_DATE, CATEGORY_ID) VALUES('registry.version', '0.15', CURRENT_TIMESTAMP ,'SYSTEM');
+
+CREATE TABLE USERS
+(
+ USER_NAME VARCHAR(255),
+ PASSWORD VARCHAR(255),
+ PRIMARY KEY(USER_NAME)
+);
+
+CREATE TABLE GATEWAY_WORKER
+(
+ GATEWAY_ID VARCHAR(255),
+ USER_NAME VARCHAR(255),
+ PRIMARY KEY (GATEWAY_ID, USER_NAME),
+ FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
+ FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
+);
+
+CREATE TABLE PROJECT
+(
+ GATEWAY_ID VARCHAR(255),
+ USER_NAME VARCHAR(255),
+ PROJECT_NAME VARCHAR(255) NOT NULL,
+ PROJECT_ID VARCHAR(255),
+ DESCRIPTION VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ PRIMARY KEY (PROJECT_ID),
+ FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
+ FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
+);
+
+CREATE TABLE PROJECT_USER
+(
+ PROJECT_ID VARCHAR(255),
+ USER_NAME VARCHAR(255),
+ PRIMARY KEY (PROJECT_ID,USER_NAME),
+ FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (USER_NAME) REFERENCES USERS(USER_NAME) ON DELETE CASCADE
+);
+
+CREATE TABLE EXPERIMENT
+(
+ EXPERIMENT_ID VARCHAR(255),
+ GATEWAY_ID VARCHAR(255),
+ EXECUTION_USER VARCHAR(255) NOT NULL,
+ PROJECT_ID VARCHAR(255) NOT NULL,
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ EXPERIMENT_NAME VARCHAR(255) NOT NULL,
+ EXPERIMENT_DESCRIPTION VARCHAR(255),
+ APPLICATION_ID VARCHAR(255),
+ APPLICATION_VERSION VARCHAR(255),
+ WORKFLOW_TEMPLATE_ID VARCHAR(255),
+ WORKFLOW_TEMPLATE_VERSION VARCHAR(255),
+ WORKFLOW_EXECUTION_ID VARCHAR(255),
+ ALLOW_NOTIFICATION SMALLINT,
+ GATEWAY_EXECUTION_ID VARCHAR(255),
+ PRIMARY KEY(EXPERIMENT_ID),
+ FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY(GATEWAY_ID) ON DELETE CASCADE,
+ FOREIGN KEY (EXECUTION_USER) REFERENCES USERS(USER_NAME) ON DELETE CASCADE,
+ FOREIGN KEY (PROJECT_ID) REFERENCES PROJECT(PROJECT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE EXPERIMENT_INPUT
+(
+ EXPERIMENT_ID VARCHAR(255),
+ INPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ STANDARD_INPUT SMALLINT,
+ USER_FRIENDLY_DESC VARCHAR(255),
+ METADATA VARCHAR(255),
+ VALUE LONGTEXT,
+ INPUT_ORDER INTEGER,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_STAGED SMALLINT,
+ PRIMARY KEY(EXPERIMENT_ID,INPUT_KEY),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE EXPERIMENT_OUTPUT
+(
+ EXPERIMENT_ID VARCHAR(255),
+ OUTPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ VALUE LONGTEXT,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_MOVEMENT SMALLINT,
+ DATA_NAME_LOCATION VARCHAR(255),
+ SEARCH_QUERY VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ PRIMARY KEY(EXPERIMENT_ID,OUTPUT_KEY),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE WORKFLOW_NODE_DETAIL
+(
+ EXPERIMENT_ID VARCHAR(255) NOT NULL,
+ NODE_INSTANCE_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ NODE_NAME VARCHAR(255) NOT NULL,
+ EXECUTION_UNIT VARCHAR(255) NOT NULL,
+ EXECUTION_UNIT_DATA VARCHAR(255),
+ PRIMARY KEY(NODE_INSTANCE_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE TASK_DETAIL
+(
+ TASK_ID VARCHAR(255),
+ NODE_INSTANCE_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ APPLICATION_ID VARCHAR(255),
+ APPLICATION_VERSION VARCHAR(255),
+ APPLICATION_DEPLOYMENT_ID VARCHAR(255),
+ ALLOW_NOTIFICATION SMALLINT,
+ PRIMARY KEY(TASK_ID),
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE NOTIFICATION_EMAIL
+(
+ EMAIL_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ EMAIL_ADDRESS VARCHAR(255),
+ PRIMARY KEY(EMAIL_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE APPLICATION_INPUT
+(
+ TASK_ID VARCHAR(255),
+ INPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ STANDARD_INPUT SMALLINT,
+ USER_FRIENDLY_DESC VARCHAR(255),
+ METADATA VARCHAR(255),
+ VALUE LONGTEXT,
+ INPUT_ORDER INTEGER,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_STAGED SMALLINT,
+ PRIMARY KEY(TASK_ID,INPUT_KEY),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE APPLICATION_OUTPUT
+(
+ TASK_ID VARCHAR(255),
+ OUTPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ VALUE LONGTEXT,
+ DATA_MOVEMENT SMALLINT,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_NAME_LOCATION VARCHAR(255),
+ SEARCH_QUERY VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ PRIMARY KEY(TASK_ID,OUTPUT_KEY),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE NODE_INPUT
+(
+ NODE_INSTANCE_ID VARCHAR(255),
+ INPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ STANDARD_INPUT SMALLINT,
+ USER_FRIENDLY_DESC VARCHAR(255),
+ METADATA VARCHAR(255),
+ VALUE VARCHAR(255),
+ INPUT_ORDER INTEGER,
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_STAGED SMALLINT,
+ PRIMARY KEY(NODE_INSTANCE_ID,INPUT_KEY),
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE NODE_OUTPUT
+(
+ NODE_INSTANCE_ID VARCHAR(255),
+ OUTPUT_KEY VARCHAR(255) NOT NULL,
+ DATA_TYPE VARCHAR(255),
+ VALUE VARCHAR(255),
+ IS_REQUIRED SMALLINT,
+ REQUIRED_TO_COMMANDLINE SMALLINT,
+ DATA_MOVEMENT SMALLINT,
+ DATA_NAME_LOCATION VARCHAR(255),
+ SEARCH_QUERY VARCHAR(255),
+ APP_ARGUMENT VARCHAR(255),
+ PRIMARY KEY(NODE_INSTANCE_ID,OUTPUT_KEY),
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE JOB_DETAIL
+(
+ JOB_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ JOB_DESCRIPTION LONGTEXT NOT NULL,
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ COMPUTE_RESOURCE_CONSUMED VARCHAR(255),
+ JOBNAME VARCHAR (255),
+ WORKING_DIR VARCHAR(255),
+ PRIMARY KEY (TASK_ID, JOB_ID),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE DATA_TRANSFER_DETAIL
+(
+ TRANSFER_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ TRANSFER_DESC VARCHAR(255) NOT NULL,
+ PRIMARY KEY(TRANSFER_ID),
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE ERROR_DETAIL
+(
+ ERROR_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ NODE_INSTANCE_ID VARCHAR(255),
+ JOB_ID VARCHAR(255),
+ CREATION_TIME TIMESTAMP DEFAULT NOW(),
+ ACTUAL_ERROR_MESSAGE LONGTEXT,
+ USER_FRIEDNLY_ERROR_MSG VARCHAR(255),
+ TRANSIENT_OR_PERSISTENT SMALLINT,
+ ERROR_CATEGORY VARCHAR(255),
+ CORRECTIVE_ACTION VARCHAR(255),
+ ACTIONABLE_GROUP VARCHAR(255),
+ PRIMARY KEY(ERROR_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE STATUS
+(
+ STATUS_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ NODE_INSTANCE_ID VARCHAR(255),
+ TRANSFER_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ JOB_ID VARCHAR(255),
+ STATE VARCHAR(255),
+ STATUS_UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ON UPDATE now(),
+ STATUS_TYPE VARCHAR(255),
+ PRIMARY KEY(STATUS_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE,
+ FOREIGN KEY (NODE_INSTANCE_ID) REFERENCES WORKFLOW_NODE_DETAIL(NODE_INSTANCE_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TRANSFER_ID) REFERENCES DATA_TRANSFER_DETAIL(TRANSFER_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE CONFIG_DATA
+(
+ EXPERIMENT_ID VARCHAR(255),
+ AIRAVATA_AUTO_SCHEDULE SMALLINT NOT NULL,
+ OVERRIDE_MANUAL_SCHEDULE_PARAMS SMALLINT NOT NULL,
+ SHARE_EXPERIMENT SMALLINT,
+ USER_DN VARCHAR(255),
+ GENERATE_CERT SMALLINT,
+ PRIMARY KEY(EXPERIMENT_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE
+
+);
+
+CREATE TABLE COMPUTATIONAL_RESOURCE_SCHEDULING
+(
+ RESOURCE_SCHEDULING_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ RESOURCE_HOST_ID VARCHAR(255),
+ CPU_COUNT INTEGER,
+ NODE_COUNT INTEGER,
+ NO_OF_THREADS INTEGER,
+ QUEUE_NAME VARCHAR(255),
+ WALLTIME_LIMIT INTEGER,
+ JOB_START_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
+ TOTAL_PHYSICAL_MEMORY INTEGER,
+ COMPUTATIONAL_PROJECT_ACCOUNT VARCHAR(255),
+ CHESSIS_NAME VARCHAR(255),
+ PRIMARY KEY(RESOURCE_SCHEDULING_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE ADVANCE_INPUT_DATA_HANDLING
+(
+ INPUT_DATA_HANDLING_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ WORKING_DIR_PARENT VARCHAR(255),
+ UNIQUE_WORKING_DIR VARCHAR(255),
+ STAGE_INPUT_FILES_TO_WORKING_DIR SMALLINT,
+ CLEAN_AFTER_JOB SMALLINT,
+ PRIMARY KEY(INPUT_DATA_HANDLING_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE ADVANCE_OUTPUT_DATA_HANDLING
+(
+ OUTPUT_DATA_HANDLING_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ OUTPUT_DATA_DIR VARCHAR(255),
+ DATA_REG_URL VARCHAR (255),
+ PERSIST_OUTPUT_DATA SMALLINT,
+ PRIMARY KEY(OUTPUT_DATA_HANDLING_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE QOS_PARAM
+(
+ QOS_ID INTEGER NOT NULL AUTO_INCREMENT,
+ EXPERIMENT_ID VARCHAR(255),
+ TASK_ID VARCHAR(255),
+ START_EXECUTION_AT VARCHAR(255),
+ EXECUTE_BEFORE VARCHAR(255),
+ NO_OF_RETRIES INTEGER,
+ PRIMARY KEY(QOS_ID),
+ FOREIGN KEY (EXPERIMENT_ID) REFERENCES EXPERIMENT(EXPERIMENT_ID) ON DELETE CASCADE,
+ FOREIGN KEY (TASK_ID) REFERENCES TASK_DETAIL(TASK_ID) ON DELETE CASCADE
+);
+
+CREATE TABLE COMMUNITY_USER
+(
+ GATEWAY_ID VARCHAR(256) NOT NULL,
+ COMMUNITY_USER_NAME VARCHAR(256) NOT NULL,
+ TOKEN_ID VARCHAR(256) NOT NULL,
+ COMMUNITY_USER_EMAIL VARCHAR(256) NOT NULL,
+ PRIMARY KEY (GATEWAY_ID, COMMUNITY_USER_NAME, TOKEN_ID)
+);
+
+CREATE TABLE CREDENTIALS
+(
+ GATEWAY_ID VARCHAR(256) NOT NULL,
+ TOKEN_ID VARCHAR(256) NOT NULL,
+ CREDENTIAL BLOB NOT NULL,
+ PORTAL_USER_ID VARCHAR(256) NOT NULL,
+ TIME_PERSISTED TIMESTAMP DEFAULT NOW() ON UPDATE NOW(),
+ PRIMARY KEY (GATEWAY_ID, TOKEN_ID)
+);
+
+
[13/19] airavata git commit: updating AiravataServerHandlerTest
Posted by sm...@apache.org.
updating AiravataServerHandlerTest
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/0b572c28
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/0b572c28
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/0b572c28
Branch: refs/heads/master
Commit: 0b572c28208f0d185cafb9f15fd617752f2517d9
Parents: 7bf5fc1
Author: Supun Nakandala <su...@gmail.com>
Authored: Mon Apr 27 22:53:51 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Mon Apr 27 22:53:51 2015 +0530
----------------------------------------------------------------------
.../api/server/handler/AiravataServerHandlerTest.java | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/0b572c28/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java b/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
index 799f8e9..1094563 100644
--- a/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
+++ b/airavata-api/airavata-api-server/src/test/java/org/apache/airavata/api/server/handler/AiravataServerHandlerTest.java
@@ -44,7 +44,7 @@ public class AiravataServerHandlerTest {
private final static Logger logger = LoggerFactory.getLogger(AiravataServerHandlerTest.class);
private static AiravataServerHandler airavataServerHandler;
- private static String gatewayId = "default";
+ private static String gatewayId = "php_reference_gateway";
@BeforeClass
public static void setupBeforeClass() throws Exception{
@@ -272,7 +272,7 @@ public class AiravataServerHandlerTest {
ExperimentState experimentState = ExperimentState.findByValue(0);
results = airavataServerHandler.searchExperimentsByStatus(
gatewayId, "TestUser" + TAG, experimentState);
- Assert.assertTrue(results.size() > 0);
+ Assert.assertTrue(results.size() == 3);
//with pagination
results = airavataServerHandler.searchExperimentsByStatusWithPagination(
gatewayId, "TestUser" + TAG, experimentState, 2, 0);
@@ -281,7 +281,7 @@ public class AiravataServerHandlerTest {
//searching based on application
results = airavataServerHandler.searchExperimentsByApplication(
gatewayId, "TestUser" + TAG, "Ech");
- Assert.assertTrue(results.size() > 0);
+ Assert.assertTrue(results.size() == 3);
//with pagination
results = airavataServerHandler.searchExperimentsByApplicationWithPagination(
gatewayId, "TestUser" + TAG, "Ech", 2, 0);
@@ -290,7 +290,7 @@ public class AiravataServerHandlerTest {
//searching experiments by description
results = airavataServerHandler.searchExperimentsByDesc(
gatewayId, "TestUser" + TAG, "exp");
- Assert.assertTrue(results.size() > 0);
+ Assert.assertTrue(results.size() == 3);
//with pagination
results = airavataServerHandler.searchExperimentsByDescWithPagination(
gatewayId, "TestUser" + TAG, "exp", 2, 0);
[02/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
----------------------------------------------------------------------
diff --git a/airavata-api/thrift-interface-descriptions/airavataAPI.thrift b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
index b1f644b..7f027f5 100644
--- a/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
+++ b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
@@ -190,7 +190,7 @@ service Airavata {
*
* @param userName
* The Project Object described in the workspaceModel
- *
+ * @deprecated Instead use getAllUserProjectsWithPagination
**/
list<workspaceModel.Project> getAllUserProjects (1: required string gatewayId,
2: required string userName)
@@ -198,10 +198,38 @@ service Airavata {
2: airavataErrors.AiravataClientException ace,
3: airavataErrors.AiravataSystemException ase)
+ /**
+ * Get all Project by user with pagination. Results will be ordered based
+ * on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ **/
+ list<workspaceModel.Project> getAllUserProjectsWithPagination (1: required string gatewayId,
+ 2: required string userName,
+ 3: required i32 limit,
+ 4: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
/**
- * Get all Project for user by project name
- *
- */
+ * Get all Project for user by project name
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param projectName
+ * The name of the project on which the results to be fetched
+ * @deprecated Instead use searchProjectsByProjectNameWithPagination
+ */
list<workspaceModel.Project> searchProjectsByProjectName (1: required string gatewayId,
2: required string userName, 3: required string projectName)
throws (1: airavataErrors.InvalidRequestException ire,
@@ -209,8 +237,36 @@ service Airavata {
3: airavataErrors.AiravataSystemException ase)
/**
+ * Get all Project for user by project name with pagination.Results will be ordered based
+ * on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param projectName
+ * The name of the project on which the results to be fetched
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<workspaceModel.Project> searchProjectsByProjectNameWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required string projectName,4: required i32 limit,
+ 5: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
+ /**
* Get all Project for user by project description
- *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param description
+ * The description to be matched
+ * @deprecated Instead use searchProjectsByProjectDescWithPagination
*/
list<workspaceModel.Project> searchProjectsByProjectDesc (1: required string gatewayId,
2: required string userName, 3: required string description)
@@ -218,10 +274,41 @@ service Airavata {
2: airavataErrors.AiravataClientException ace,
3: airavataErrors.AiravataSystemException ase)
+ /**
+ * Search and get all Projects for user by project description with pagination. Results
+ * will be ordered based on creation time DESC
+ *
+ * @param gatewayId
+ * The identifier for the requested gateway.
+ * @param userName
+ * The identifier of the user
+ * @param description
+ * The description to be matched
+ * @param limit
+ * The amount results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<workspaceModel.Project> searchProjectsByProjectDescWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required string description, 4: required i32 limit,
+ 5: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
/**
- * Search Experiments by experiment name
- *
+ * Search Experiments by experiment name
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param useNname
+ * Username of the requested user
+ * @param expName
+ * Experiment name to be matched
+ * @deprecated
+ * Instead use searchExperimentsByNameWithPagination
+ *
*/
list<experimentModel.ExperimentSummary> searchExperimentsByName (1: required string gatewayId,
2: required string userName, 3: required string expName)
@@ -230,8 +317,38 @@ service Airavata {
3: airavataErrors.AiravataSystemException ase)
/**
- * Search Experiments by experiment name
- *
+ * Search Experiments by experiment name with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param expName
+ * Experiment name to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.ExperimentSummary> searchExperimentsByNameWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required string expName, 4: required i32 limit,
+ 5: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
+ /**
+ * Search Experiments by experiment name
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param description
+ * Experiment description to be matched
+ * @deprecated
+ * Instead use searchExperimentsByDescWithPagination
*/
list<experimentModel.ExperimentSummary> searchExperimentsByDesc (1: required string gatewayId,
2: required string userName, 3: required string description)
@@ -240,18 +357,77 @@ service Airavata {
3: airavataErrors.AiravataSystemException ase)
/**
- * Search Experiments by application id
- *
- */
+ * Search Experiments by experiment name with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param description
+ * Experiment description to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.ExperimentSummary> searchExperimentsByDescWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required string description, 4: required i32 limit,
+ 5: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
+
+ /**
+ * Search Experiments by application id
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param applicationId
+ * Application id to be matched
+ * @deprecated
+ * Instead use searchExperimentsByApplicationWithPagination
+ */
list<experimentModel.ExperimentSummary> searchExperimentsByApplication (1: required string gatewayId,
2: required string userName, 3: required string applicationId)
throws (1: airavataErrors.InvalidRequestException ire,
2: airavataErrors.AiravataClientException ace,
3: airavataErrors.AiravataSystemException ase)
-
- /**
- * Search Experiments by experiment status
- *
+ /**
+ * Search Experiments by application id with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param applicationId
+ * Application id to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.ExperimentSummary> searchExperimentsByApplicationWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required string applicationId, 4: required i32 limit,
+ 5: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+ /**
+ * Search Experiments by experiment status
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param experimentState
+ * Experiement state to be matched
+ * @deprecated
+ * Instead use searchExperimentsByStatusWithPagination
*/
list<experimentModel.ExperimentSummary> searchExperimentsByStatus (1: required string gatewayId,
2: required string userName, 3: required experimentModel.ExperimentState experimentState)
@@ -259,10 +435,42 @@ service Airavata {
2: airavataErrors.AiravataClientException ace,
3: airavataErrors.AiravataSystemException ase)
- /**
- * Search Experiments by experiment status
- *
- */
+ /**
+ * Search Experiments by experiment status with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param experimentState
+ * Experiement state to be matched
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.ExperimentSummary> searchExperimentsByStatusWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required experimentModel.ExperimentState experimentState,
+ 4: required i32 limit, 5: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
+ /**
+ * Search Experiments by experiment creation time
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param fromTime
+ * Start time of the experiments creation time
+ * @param toTime
+ * End time of the experiement creation time
+ * @deprecated
+ * Instead use searchExperimentsByCreationTimeWithPagination
+ */
list<experimentModel.ExperimentSummary> searchExperimentsByCreationTime (1: required string gatewayId,
2: required string userName, 3: required i64 fromTime, 4: required i64 toTime)
throws (1: airavataErrors.InvalidRequestException ire,
@@ -270,9 +478,37 @@ service Airavata {
3: airavataErrors.AiravataSystemException ase)
/**
- * Get all Experiments within a Project
- *
- */
+ * Search Experiments by experiment creation time with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requested gateway
+ * @param userName
+ * Username of the requested user
+ * @param fromTime
+ * Start time of the experiments creation time
+ * @param toTime
+ * End time of the experiement creation time
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.ExperimentSummary> searchExperimentsByCreationTimeWithPagination (1: required string gatewayId,
+ 2: required string userName, 3: required i64 fromTime, 4: required i64 toTime,
+ 5: required i32 limit, 6: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
+ /**
+ * Get all Experiments within a Project
+ *
+ * @param projectId
+ * Identifier of the project
+ * @deprecated
+ * Instead use getAllExperimentsInProjectWithPagination
+ */
list<experimentModel.Experiment> getAllExperimentsInProject(1: required string projectId)
throws (1: airavataErrors.InvalidRequestException ire,
2: airavataErrors.AiravataClientException ace,
@@ -280,9 +516,34 @@ service Airavata {
4: airavataErrors.ProjectNotFoundException pnfe)
/**
- * Get all Experiments by user
- *
- */
+ * Get all Experiments within project with pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param projectId
+ * Identifier of the project
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.Experiment> getAllExperimentsInProjectWithPagination(1: required string projectId,
+ 2: required i32 limit, 3: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase,
+ 4: airavataErrors.ProjectNotFoundException pnfe)
+
+
+ /**
+ * Get all Experiments by user
+ *
+ * @param gatewayId
+ * Identifier of the requesting gateway
+ * @param userName
+ * Username of the requested user
+ * @deprecated
+ * Instead use getAllUserExperimentsWithPagination
+ */
list<experimentModel.Experiment> getAllUserExperiments(1: required string gatewayId,
2: required string userName)
throws (1: airavataErrors.InvalidRequestException ire,
@@ -290,6 +551,25 @@ service Airavata {
3: airavataErrors.AiravataSystemException ase)
/**
+ * Get all Experiments by user pagination. Results will be sorted
+ * based on creation time DESC
+ *
+ * @param gatewayId
+ * Identifier of the requesting gateway
+ * @param userName
+ * Username of the requested user
+ * @param limit
+ * Amount of results to be fetched
+ * @param offset
+ * The starting point of the results to be fetched
+ */
+ list<experimentModel.Experiment> getAllUserExperimentsWithPagination(1: required string gatewayId,
+ 2: required string userName, 3: required i32 limit, 4: required i32 offset)
+ throws (1: airavataErrors.InvalidRequestException ire,
+ 2: airavataErrors.AiravataClientException ace,
+ 3: airavataErrors.AiravataSystemException ase)
+
+ /**
* Create an experiment for the specified user belonging to the gateway. The gateway identity is not explicitly passed
* but inferred from the authentication header. This experiment is just a persistent place holder. The client
* has to subsequently configure and launch the created experiment. No action is taken on Airavata Server except
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/Registry.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/Registry.java b/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/Registry.java
index c0bb059..523cc73 100644
--- a/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/Registry.java
+++ b/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/Registry.java
@@ -103,6 +103,23 @@ public interface Registry {
public List<Object> get(RegistryModelType dataType, String fieldName, Object value) throws RegistryException;
/**
+ * This method is to retrieve list of objects according to a given criteria with pagination and ordering
+ *
+ * @param dataType Data type is a predefined type which the programmer should choose according to the object he
+ * is going to save in to registry
+ * @param fieldName FieldName is the field that filtering should be done. For example, if we want to retrieve all
+ * the experiments for a given user, filterBy will be "userName"
+ * @param value value for the filtering field. In the experiment case, value for "userName" can be "admin"
+ * @param limit Size of the results to be returned
+ * @param offset Start position of the results to be retrieved
+ * @param orderByIdentifier Named of the column in which the ordering is based
+ * @param resultOrderType Type of ordering i.e ASC or DESC
+ * @return
+ * @throws RegistryException
+ */
+ public List<Object> get(RegistryModelType dataType, String fieldName, Object value, int limit,
+ int offset, Object orderByIdentifier, ResultOrderType resultOrderType) throws RegistryException ;
+ /**
* This method is to retrieve list of objects according to a given criteria
* @param dataType Data type is a predefined type which the programmer should choose according to the object he
* is going to save in to registry
@@ -123,7 +140,7 @@ public interface Registry {
* @param resultOrderType The type of ordering (i.e ASC or DESC) that has to be used when retrieving the results
* @return List of objects according to the given criteria
*/
- public List<Object> searchWithPagination(RegistryModelType dataType, Map<String, String> filters,
+ public List<Object> search(RegistryModelType dataType, Map<String, String> filters,
int limit, int offset, Object orderByIdentifier,
ResultOrderType resultOrderType) throws RegistryException;
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/utils/Constants.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/utils/Constants.java b/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/utils/Constants.java
index 5defafe..034ee77 100644
--- a/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/utils/Constants.java
+++ b/modules/registry/registry-cpi/src/main/java/org/apache/airavata/registry/cpi/utils/Constants.java
@@ -29,6 +29,7 @@ public class Constants {
public static final String OWNER = "owner";
public static final String PROJECT_NAME = "name";
public static final String DESCRIPTION = "description";
+ public static final String CREATION_TIME = "creationTime";
}
public final class ExperimentConstants {
[14/19] airavata git commit: Merge branch 'master' of
https://github.com/apache/airavata
Posted by sm...@apache.org.
Merge branch 'master' of https://github.com/apache/airavata
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/6bf56d39
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/6bf56d39
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/6bf56d39
Branch: refs/heads/master
Commit: 6bf56d393f7385e532998101c01f23e4b186a0ff
Parents: 0b572c2 ab2efea
Author: Supun Nakandala <su...@gmail.com>
Authored: Tue Apr 28 00:43:48 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Tue Apr 28 00:43:48 2015 +0530
----------------------------------------------------------------------
.../server/src/main/resources/SGETemplate.xslt | 10 +--
.../gfac/monitor/email/EmailBasedMonitor.java | 6 ++
.../monitor/email/parser/UGEEmailParser.java | 73 ++++++++++++++++++++
.../validator/impl/SimpleAppDataValidator.java | 2 +-
.../gsissh/src/main/resources/SGETemplate.xslt | 7 +-
5 files changed, 83 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
[17/19] airavata git commit: Merge branch 'master' of
https://github.com/apache/airavata
Posted by sm...@apache.org.
Merge branch 'master' of https://github.com/apache/airavata
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/478b3972
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/478b3972
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/478b3972
Branch: refs/heads/master
Commit: 478b39726a1e6386e3b669f56f6c7af7929a98e3
Parents: 464e955 b90498f
Author: Supun Nakandala <su...@gmail.com>
Authored: Wed Apr 29 21:38:26 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Wed Apr 29 21:38:26 2015 +0530
----------------------------------------------------------------------
.../AiravataExperimentStatusUpdator.java | 1 -
.../airavata/gfac/server/GfacServerHandler.java | 21 ++-
.../airavata/gfac/core/cpi/BetterGfacImpl.java | 160 +++++++++++--------
.../core/monitor/GfacInternalStatusUpdator.java | 3 +-
.../gfac/monitor/email/EmailBasedMonitor.java | 1 +
.../server/OrchestratorServerHandler.java | 8 +-
.../util/OrchestratorRecoveryHandler.java | 3 +-
.../core/impl/GFACEmbeddedJobSubmitter.java | 13 +-
.../core/impl/GFACPassiveJobSubmitter.java | 6 +-
.../engine/concurrent/PredicatedTaskRunner.java | 2 -
10 files changed, 130 insertions(+), 88 deletions(-)
----------------------------------------------------------------------
[04/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
index 240a5c7..bba4dff 100755
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
@@ -38,15 +38,25 @@ if len(sys.argv) <= 1 or sys.argv[1] == '--help':
print ' Project getProject(string projectId)'
print ' bool deleteProject(string projectId)'
print ' getAllUserProjects(string gatewayId, string userName)'
+ print ' getAllUserProjectsWithPagination(string gatewayId, string userName, i32 limit, i32 offset)'
print ' searchProjectsByProjectName(string gatewayId, string userName, string projectName)'
+ print ' searchProjectsByProjectNameWithPagination(string gatewayId, string userName, string projectName, i32 limit, i32 offset)'
print ' searchProjectsByProjectDesc(string gatewayId, string userName, string description)'
+ print ' searchProjectsByProjectDescWithPagination(string gatewayId, string userName, string description, i32 limit, i32 offset)'
print ' searchExperimentsByName(string gatewayId, string userName, string expName)'
+ print ' searchExperimentsByNameWithPagination(string gatewayId, string userName, string expName, i32 limit, i32 offset)'
print ' searchExperimentsByDesc(string gatewayId, string userName, string description)'
+ print ' searchExperimentsByDescWithPagination(string gatewayId, string userName, string description, i32 limit, i32 offset)'
print ' searchExperimentsByApplication(string gatewayId, string userName, string applicationId)'
+ print ' searchExperimentsByApplicationWithPagination(string gatewayId, string userName, string applicationId, i32 limit, i32 offset)'
print ' searchExperimentsByStatus(string gatewayId, string userName, ExperimentState experimentState)'
+ print ' searchExperimentsByStatusWithPagination(string gatewayId, string userName, ExperimentState experimentState, i32 limit, i32 offset)'
print ' searchExperimentsByCreationTime(string gatewayId, string userName, i64 fromTime, i64 toTime)'
+ print ' searchExperimentsByCreationTimeWithPagination(string gatewayId, string userName, i64 fromTime, i64 toTime, i32 limit, i32 offset)'
print ' getAllExperimentsInProject(string projectId)'
+ print ' getAllExperimentsInProjectWithPagination(string projectId, i32 limit, i32 offset)'
print ' getAllUserExperiments(string gatewayId, string userName)'
+ print ' getAllUserExperimentsWithPagination(string gatewayId, string userName, i32 limit, i32 offset)'
print ' string createExperiment(string gatewayId, Experiment experiment)'
print ' Experiment getExperiment(string airavataExperimentId)'
print ' void updateExperiment(string airavataExperimentId, Experiment experiment)'
@@ -280,60 +290,120 @@ elif cmd == 'getAllUserProjects':
sys.exit(1)
pp.pprint(client.getAllUserProjects(args[0],args[1],))
+elif cmd == 'getAllUserProjectsWithPagination':
+ if len(args) != 4:
+ print 'getAllUserProjectsWithPagination requires 4 args'
+ sys.exit(1)
+ pp.pprint(client.getAllUserProjectsWithPagination(args[0],args[1],eval(args[2]),eval(args[3]),))
+
elif cmd == 'searchProjectsByProjectName':
if len(args) != 3:
print 'searchProjectsByProjectName requires 3 args'
sys.exit(1)
pp.pprint(client.searchProjectsByProjectName(args[0],args[1],args[2],))
+elif cmd == 'searchProjectsByProjectNameWithPagination':
+ if len(args) != 5:
+ print 'searchProjectsByProjectNameWithPagination requires 5 args'
+ sys.exit(1)
+ pp.pprint(client.searchProjectsByProjectNameWithPagination(args[0],args[1],args[2],eval(args[3]),eval(args[4]),))
+
elif cmd == 'searchProjectsByProjectDesc':
if len(args) != 3:
print 'searchProjectsByProjectDesc requires 3 args'
sys.exit(1)
pp.pprint(client.searchProjectsByProjectDesc(args[0],args[1],args[2],))
+elif cmd == 'searchProjectsByProjectDescWithPagination':
+ if len(args) != 5:
+ print 'searchProjectsByProjectDescWithPagination requires 5 args'
+ sys.exit(1)
+ pp.pprint(client.searchProjectsByProjectDescWithPagination(args[0],args[1],args[2],eval(args[3]),eval(args[4]),))
+
elif cmd == 'searchExperimentsByName':
if len(args) != 3:
print 'searchExperimentsByName requires 3 args'
sys.exit(1)
pp.pprint(client.searchExperimentsByName(args[0],args[1],args[2],))
+elif cmd == 'searchExperimentsByNameWithPagination':
+ if len(args) != 5:
+ print 'searchExperimentsByNameWithPagination requires 5 args'
+ sys.exit(1)
+ pp.pprint(client.searchExperimentsByNameWithPagination(args[0],args[1],args[2],eval(args[3]),eval(args[4]),))
+
elif cmd == 'searchExperimentsByDesc':
if len(args) != 3:
print 'searchExperimentsByDesc requires 3 args'
sys.exit(1)
pp.pprint(client.searchExperimentsByDesc(args[0],args[1],args[2],))
+elif cmd == 'searchExperimentsByDescWithPagination':
+ if len(args) != 5:
+ print 'searchExperimentsByDescWithPagination requires 5 args'
+ sys.exit(1)
+ pp.pprint(client.searchExperimentsByDescWithPagination(args[0],args[1],args[2],eval(args[3]),eval(args[4]),))
+
elif cmd == 'searchExperimentsByApplication':
if len(args) != 3:
print 'searchExperimentsByApplication requires 3 args'
sys.exit(1)
pp.pprint(client.searchExperimentsByApplication(args[0],args[1],args[2],))
+elif cmd == 'searchExperimentsByApplicationWithPagination':
+ if len(args) != 5:
+ print 'searchExperimentsByApplicationWithPagination requires 5 args'
+ sys.exit(1)
+ pp.pprint(client.searchExperimentsByApplicationWithPagination(args[0],args[1],args[2],eval(args[3]),eval(args[4]),))
+
elif cmd == 'searchExperimentsByStatus':
if len(args) != 3:
print 'searchExperimentsByStatus requires 3 args'
sys.exit(1)
pp.pprint(client.searchExperimentsByStatus(args[0],args[1],eval(args[2]),))
+elif cmd == 'searchExperimentsByStatusWithPagination':
+ if len(args) != 5:
+ print 'searchExperimentsByStatusWithPagination requires 5 args'
+ sys.exit(1)
+ pp.pprint(client.searchExperimentsByStatusWithPagination(args[0],args[1],eval(args[2]),eval(args[3]),eval(args[4]),))
+
elif cmd == 'searchExperimentsByCreationTime':
if len(args) != 4:
print 'searchExperimentsByCreationTime requires 4 args'
sys.exit(1)
pp.pprint(client.searchExperimentsByCreationTime(args[0],args[1],eval(args[2]),eval(args[3]),))
+elif cmd == 'searchExperimentsByCreationTimeWithPagination':
+ if len(args) != 6:
+ print 'searchExperimentsByCreationTimeWithPagination requires 6 args'
+ sys.exit(1)
+ pp.pprint(client.searchExperimentsByCreationTimeWithPagination(args[0],args[1],eval(args[2]),eval(args[3]),eval(args[4]),eval(args[5]),))
+
elif cmd == 'getAllExperimentsInProject':
if len(args) != 1:
print 'getAllExperimentsInProject requires 1 args'
sys.exit(1)
pp.pprint(client.getAllExperimentsInProject(args[0],))
+elif cmd == 'getAllExperimentsInProjectWithPagination':
+ if len(args) != 3:
+ print 'getAllExperimentsInProjectWithPagination requires 3 args'
+ sys.exit(1)
+ pp.pprint(client.getAllExperimentsInProjectWithPagination(args[0],eval(args[1]),eval(args[2]),))
+
elif cmd == 'getAllUserExperiments':
if len(args) != 2:
print 'getAllUserExperiments requires 2 args'
sys.exit(1)
pp.pprint(client.getAllUserExperiments(args[0],args[1],))
+elif cmd == 'getAllUserExperimentsWithPagination':
+ if len(args) != 4:
+ print 'getAllUserExperimentsWithPagination requires 4 args'
+ sys.exit(1)
+ pp.pprint(client.getAllUserExperimentsWithPagination(args[0],args[1],eval(args[2]),eval(args[3]),))
+
elif cmd == 'createExperiment':
if len(args) != 2:
print 'createExperiment requires 2 args'
[07/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
index 78f2742..8bdcb39 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
@@ -47,15 +47,25 @@ class AiravataIf {
virtual void getProject( ::apache::airavata::model::workspace::Project& _return, const std::string& projectId) = 0;
virtual bool deleteProject(const std::string& projectId) = 0;
virtual void getAllUserProjects(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName) = 0;
+ virtual void getAllUserProjectsWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const int32_t limit, const int32_t offset) = 0;
virtual void searchProjectsByProjectName(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& projectName) = 0;
+ virtual void searchProjectsByProjectNameWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& projectName, const int32_t limit, const int32_t offset) = 0;
virtual void searchProjectsByProjectDesc(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description) = 0;
+ virtual void searchProjectsByProjectDescWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description, const int32_t limit, const int32_t offset) = 0;
virtual void searchExperimentsByName(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& expName) = 0;
+ virtual void searchExperimentsByNameWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& expName, const int32_t limit, const int32_t offset) = 0;
virtual void searchExperimentsByDesc(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description) = 0;
+ virtual void searchExperimentsByDescWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& description, const int32_t limit, const int32_t offset) = 0;
virtual void searchExperimentsByApplication(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& applicationId) = 0;
+ virtual void searchExperimentsByApplicationWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const std::string& applicationId, const int32_t limit, const int32_t offset) = 0;
virtual void searchExperimentsByStatus(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState) = 0;
+ virtual void searchExperimentsByStatusWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState, const int32_t limit, const int32_t offset) = 0;
virtual void searchExperimentsByCreationTime(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const int64_t fromTime, const int64_t toTime) = 0;
+ virtual void searchExperimentsByCreationTimeWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & _return, const std::string& gatewayId, const std::string& userName, const int64_t fromTime, const int64_t toTime, const int32_t limit, const int32_t offset) = 0;
virtual void getAllExperimentsInProject(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& projectId) = 0;
+ virtual void getAllExperimentsInProjectWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& projectId, const int32_t limit, const int32_t offset) = 0;
virtual void getAllUserExperiments(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& gatewayId, const std::string& userName) = 0;
+ virtual void getAllUserExperimentsWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & _return, const std::string& gatewayId, const std::string& userName, const int32_t limit, const int32_t offset) = 0;
virtual void createExperiment(std::string& _return, const std::string& gatewayId, const ::apache::airavata::model::workspace::experiment::Experiment& experiment) = 0;
virtual void getExperiment( ::apache::airavata::model::workspace::experiment::Experiment& _return, const std::string& airavataExperimentId) = 0;
virtual void updateExperiment(const std::string& airavataExperimentId, const ::apache::airavata::model::workspace::experiment::Experiment& experiment) = 0;
@@ -225,33 +235,63 @@ class AiravataNull : virtual public AiravataIf {
void getAllUserProjects(std::vector< ::apache::airavata::model::workspace::Project> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */) {
return;
}
+ void getAllUserProjectsWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchProjectsByProjectName(std::vector< ::apache::airavata::model::workspace::Project> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* projectName */) {
return;
}
+ void searchProjectsByProjectNameWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* projectName */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchProjectsByProjectDesc(std::vector< ::apache::airavata::model::workspace::Project> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* description */) {
return;
}
+ void searchProjectsByProjectDescWithPagination(std::vector< ::apache::airavata::model::workspace::Project> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* description */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchExperimentsByName(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* expName */) {
return;
}
+ void searchExperimentsByNameWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* expName */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchExperimentsByDesc(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* description */) {
return;
}
+ void searchExperimentsByDescWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* description */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchExperimentsByApplication(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* applicationId */) {
return;
}
+ void searchExperimentsByApplicationWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const std::string& /* applicationId */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchExperimentsByStatus(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const ::apache::airavata::model::workspace::experiment::ExperimentState::type /* experimentState */) {
return;
}
+ void searchExperimentsByStatusWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const ::apache::airavata::model::workspace::experiment::ExperimentState::type /* experimentState */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void searchExperimentsByCreationTime(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const int64_t /* fromTime */, const int64_t /* toTime */) {
return;
}
+ void searchExperimentsByCreationTimeWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const int64_t /* fromTime */, const int64_t /* toTime */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void getAllExperimentsInProject(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & /* _return */, const std::string& /* projectId */) {
return;
}
+ void getAllExperimentsInProjectWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & /* _return */, const std::string& /* projectId */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void getAllUserExperiments(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */) {
return;
}
+ void getAllUserExperimentsWithPagination(std::vector< ::apache::airavata::model::workspace::experiment::Experiment> & /* _return */, const std::string& /* gatewayId */, const std::string& /* userName */, const int32_t /* limit */, const int32_t /* offset */) {
+ return;
+ }
void createExperiment(std::string& /* _return */, const std::string& /* gatewayId */, const ::apache::airavata::model::workspace::experiment::Experiment& /* experiment */) {
return;
}
@@ -2577,17 +2617,18 @@ class Airavata_getAllUserProjects_presult {
};
-class Airavata_searchProjectsByProjectName_args {
+class Airavata_getAllUserProjectsWithPagination_args {
public:
- Airavata_searchProjectsByProjectName_args() : gatewayId(), userName(), projectName() {
+ Airavata_getAllUserProjectsWithPagination_args() : gatewayId(), userName(), limit(0), offset(0) {
}
- virtual ~Airavata_searchProjectsByProjectName_args() throw() {}
+ virtual ~Airavata_getAllUserProjectsWithPagination_args() throw() {}
std::string gatewayId;
std::string userName;
- std::string projectName;
+ int32_t limit;
+ int32_t offset;
void __set_gatewayId(const std::string& val) {
gatewayId = val;
@@ -2597,25 +2638,31 @@ class Airavata_searchProjectsByProjectName_args {
userName = val;
}
- void __set_projectName(const std::string& val) {
- projectName = val;
+ void __set_limit(const int32_t val) {
+ limit = val;
}
- bool operator == (const Airavata_searchProjectsByProjectName_args & rhs) const
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_getAllUserProjectsWithPagination_args & rhs) const
{
if (!(gatewayId == rhs.gatewayId))
return false;
if (!(userName == rhs.userName))
return false;
- if (!(projectName == rhs.projectName))
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
return false;
return true;
}
- bool operator != (const Airavata_searchProjectsByProjectName_args &rhs) const {
+ bool operator != (const Airavata_getAllUserProjectsWithPagination_args &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchProjectsByProjectName_args & ) const;
+ bool operator < (const Airavata_getAllUserProjectsWithPagination_args & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -2623,42 +2670,43 @@ class Airavata_searchProjectsByProjectName_args {
};
-class Airavata_searchProjectsByProjectName_pargs {
+class Airavata_getAllUserProjectsWithPagination_pargs {
public:
- virtual ~Airavata_searchProjectsByProjectName_pargs() throw() {}
+ virtual ~Airavata_getAllUserProjectsWithPagination_pargs() throw() {}
const std::string* gatewayId;
const std::string* userName;
- const std::string* projectName;
+ const int32_t* limit;
+ const int32_t* offset;
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchProjectsByProjectName_result__isset {
- _Airavata_searchProjectsByProjectName_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_getAllUserProjectsWithPagination_result__isset {
+ _Airavata_getAllUserProjectsWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchProjectsByProjectName_result__isset;
+} _Airavata_getAllUserProjectsWithPagination_result__isset;
-class Airavata_searchProjectsByProjectName_result {
+class Airavata_getAllUserProjectsWithPagination_result {
public:
- Airavata_searchProjectsByProjectName_result() {
+ Airavata_getAllUserProjectsWithPagination_result() {
}
- virtual ~Airavata_searchProjectsByProjectName_result() throw() {}
+ virtual ~Airavata_getAllUserProjectsWithPagination_result() throw() {}
std::vector< ::apache::airavata::model::workspace::Project> success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchProjectsByProjectName_result__isset __isset;
+ _Airavata_getAllUserProjectsWithPagination_result__isset __isset;
void __set_success(const std::vector< ::apache::airavata::model::workspace::Project> & val) {
success = val;
@@ -2676,7 +2724,7 @@ class Airavata_searchProjectsByProjectName_result {
ase = val;
}
- bool operator == (const Airavata_searchProjectsByProjectName_result & rhs) const
+ bool operator == (const Airavata_getAllUserProjectsWithPagination_result & rhs) const
{
if (!(success == rhs.success))
return false;
@@ -2688,54 +2736,54 @@ class Airavata_searchProjectsByProjectName_result {
return false;
return true;
}
- bool operator != (const Airavata_searchProjectsByProjectName_result &rhs) const {
+ bool operator != (const Airavata_getAllUserProjectsWithPagination_result &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchProjectsByProjectName_result & ) const;
+ bool operator < (const Airavata_getAllUserProjectsWithPagination_result & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchProjectsByProjectName_presult__isset {
- _Airavata_searchProjectsByProjectName_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_getAllUserProjectsWithPagination_presult__isset {
+ _Airavata_getAllUserProjectsWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchProjectsByProjectName_presult__isset;
+} _Airavata_getAllUserProjectsWithPagination_presult__isset;
-class Airavata_searchProjectsByProjectName_presult {
+class Airavata_getAllUserProjectsWithPagination_presult {
public:
- virtual ~Airavata_searchProjectsByProjectName_presult() throw() {}
+ virtual ~Airavata_getAllUserProjectsWithPagination_presult() throw() {}
std::vector< ::apache::airavata::model::workspace::Project> * success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchProjectsByProjectName_presult__isset __isset;
+ _Airavata_getAllUserProjectsWithPagination_presult__isset __isset;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
};
-class Airavata_searchProjectsByProjectDesc_args {
+class Airavata_searchProjectsByProjectName_args {
public:
- Airavata_searchProjectsByProjectDesc_args() : gatewayId(), userName(), description() {
+ Airavata_searchProjectsByProjectName_args() : gatewayId(), userName(), projectName() {
}
- virtual ~Airavata_searchProjectsByProjectDesc_args() throw() {}
+ virtual ~Airavata_searchProjectsByProjectName_args() throw() {}
std::string gatewayId;
std::string userName;
- std::string description;
+ std::string projectName;
void __set_gatewayId(const std::string& val) {
gatewayId = val;
@@ -2745,25 +2793,25 @@ class Airavata_searchProjectsByProjectDesc_args {
userName = val;
}
- void __set_description(const std::string& val) {
- description = val;
+ void __set_projectName(const std::string& val) {
+ projectName = val;
}
- bool operator == (const Airavata_searchProjectsByProjectDesc_args & rhs) const
+ bool operator == (const Airavata_searchProjectsByProjectName_args & rhs) const
{
if (!(gatewayId == rhs.gatewayId))
return false;
if (!(userName == rhs.userName))
return false;
- if (!(description == rhs.description))
+ if (!(projectName == rhs.projectName))
return false;
return true;
}
- bool operator != (const Airavata_searchProjectsByProjectDesc_args &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectName_args &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchProjectsByProjectDesc_args & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectName_args & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -2771,42 +2819,42 @@ class Airavata_searchProjectsByProjectDesc_args {
};
-class Airavata_searchProjectsByProjectDesc_pargs {
+class Airavata_searchProjectsByProjectName_pargs {
public:
- virtual ~Airavata_searchProjectsByProjectDesc_pargs() throw() {}
+ virtual ~Airavata_searchProjectsByProjectName_pargs() throw() {}
const std::string* gatewayId;
const std::string* userName;
- const std::string* description;
+ const std::string* projectName;
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchProjectsByProjectDesc_result__isset {
- _Airavata_searchProjectsByProjectDesc_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectName_result__isset {
+ _Airavata_searchProjectsByProjectName_result__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchProjectsByProjectDesc_result__isset;
+} _Airavata_searchProjectsByProjectName_result__isset;
-class Airavata_searchProjectsByProjectDesc_result {
+class Airavata_searchProjectsByProjectName_result {
public:
- Airavata_searchProjectsByProjectDesc_result() {
+ Airavata_searchProjectsByProjectName_result() {
}
- virtual ~Airavata_searchProjectsByProjectDesc_result() throw() {}
+ virtual ~Airavata_searchProjectsByProjectName_result() throw() {}
std::vector< ::apache::airavata::model::workspace::Project> success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchProjectsByProjectDesc_result__isset __isset;
+ _Airavata_searchProjectsByProjectName_result__isset __isset;
void __set_success(const std::vector< ::apache::airavata::model::workspace::Project> & val) {
success = val;
@@ -2824,7 +2872,7 @@ class Airavata_searchProjectsByProjectDesc_result {
ase = val;
}
- bool operator == (const Airavata_searchProjectsByProjectDesc_result & rhs) const
+ bool operator == (const Airavata_searchProjectsByProjectName_result & rhs) const
{
if (!(success == rhs.success))
return false;
@@ -2836,54 +2884,56 @@ class Airavata_searchProjectsByProjectDesc_result {
return false;
return true;
}
- bool operator != (const Airavata_searchProjectsByProjectDesc_result &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectName_result &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchProjectsByProjectDesc_result & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectName_result & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchProjectsByProjectDesc_presult__isset {
- _Airavata_searchProjectsByProjectDesc_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectName_presult__isset {
+ _Airavata_searchProjectsByProjectName_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchProjectsByProjectDesc_presult__isset;
+} _Airavata_searchProjectsByProjectName_presult__isset;
-class Airavata_searchProjectsByProjectDesc_presult {
+class Airavata_searchProjectsByProjectName_presult {
public:
- virtual ~Airavata_searchProjectsByProjectDesc_presult() throw() {}
+ virtual ~Airavata_searchProjectsByProjectName_presult() throw() {}
std::vector< ::apache::airavata::model::workspace::Project> * success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchProjectsByProjectDesc_presult__isset __isset;
+ _Airavata_searchProjectsByProjectName_presult__isset __isset;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
};
-class Airavata_searchExperimentsByName_args {
+class Airavata_searchProjectsByProjectNameWithPagination_args {
public:
- Airavata_searchExperimentsByName_args() : gatewayId(), userName(), expName() {
+ Airavata_searchProjectsByProjectNameWithPagination_args() : gatewayId(), userName(), projectName(), limit(0), offset(0) {
}
- virtual ~Airavata_searchExperimentsByName_args() throw() {}
+ virtual ~Airavata_searchProjectsByProjectNameWithPagination_args() throw() {}
std::string gatewayId;
std::string userName;
- std::string expName;
+ std::string projectName;
+ int32_t limit;
+ int32_t offset;
void __set_gatewayId(const std::string& val) {
gatewayId = val;
@@ -2893,25 +2943,37 @@ class Airavata_searchExperimentsByName_args {
userName = val;
}
- void __set_expName(const std::string& val) {
- expName = val;
+ void __set_projectName(const std::string& val) {
+ projectName = val;
}
- bool operator == (const Airavata_searchExperimentsByName_args & rhs) const
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchProjectsByProjectNameWithPagination_args & rhs) const
{
if (!(gatewayId == rhs.gatewayId))
return false;
if (!(userName == rhs.userName))
return false;
- if (!(expName == rhs.expName))
+ if (!(projectName == rhs.projectName))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByName_args &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectNameWithPagination_args &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByName_args & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectNameWithPagination_args & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -2919,44 +2981,46 @@ class Airavata_searchExperimentsByName_args {
};
-class Airavata_searchExperimentsByName_pargs {
+class Airavata_searchProjectsByProjectNameWithPagination_pargs {
public:
- virtual ~Airavata_searchExperimentsByName_pargs() throw() {}
+ virtual ~Airavata_searchProjectsByProjectNameWithPagination_pargs() throw() {}
const std::string* gatewayId;
const std::string* userName;
- const std::string* expName;
+ const std::string* projectName;
+ const int32_t* limit;
+ const int32_t* offset;
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchExperimentsByName_result__isset {
- _Airavata_searchExperimentsByName_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectNameWithPagination_result__isset {
+ _Airavata_searchProjectsByProjectNameWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchExperimentsByName_result__isset;
+} _Airavata_searchProjectsByProjectNameWithPagination_result__isset;
-class Airavata_searchExperimentsByName_result {
+class Airavata_searchProjectsByProjectNameWithPagination_result {
public:
- Airavata_searchExperimentsByName_result() {
+ Airavata_searchProjectsByProjectNameWithPagination_result() {
}
- virtual ~Airavata_searchExperimentsByName_result() throw() {}
+ virtual ~Airavata_searchProjectsByProjectNameWithPagination_result() throw() {}
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ std::vector< ::apache::airavata::model::workspace::Project> success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchExperimentsByName_result__isset __isset;
+ _Airavata_searchProjectsByProjectNameWithPagination_result__isset __isset;
- void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::Project> & val) {
success = val;
}
@@ -2972,7 +3036,7 @@ class Airavata_searchExperimentsByName_result {
ase = val;
}
- bool operator == (const Airavata_searchExperimentsByName_result & rhs) const
+ bool operator == (const Airavata_searchProjectsByProjectNameWithPagination_result & rhs) const
{
if (!(success == rhs.success))
return false;
@@ -2984,50 +3048,50 @@ class Airavata_searchExperimentsByName_result {
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByName_result &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectNameWithPagination_result &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByName_result & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectNameWithPagination_result & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchExperimentsByName_presult__isset {
- _Airavata_searchExperimentsByName_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectNameWithPagination_presult__isset {
+ _Airavata_searchProjectsByProjectNameWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchExperimentsByName_presult__isset;
+} _Airavata_searchProjectsByProjectNameWithPagination_presult__isset;
-class Airavata_searchExperimentsByName_presult {
+class Airavata_searchProjectsByProjectNameWithPagination_presult {
public:
- virtual ~Airavata_searchExperimentsByName_presult() throw() {}
+ virtual ~Airavata_searchProjectsByProjectNameWithPagination_presult() throw() {}
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ std::vector< ::apache::airavata::model::workspace::Project> * success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchExperimentsByName_presult__isset __isset;
+ _Airavata_searchProjectsByProjectNameWithPagination_presult__isset __isset;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
};
-class Airavata_searchExperimentsByDesc_args {
+class Airavata_searchProjectsByProjectDesc_args {
public:
- Airavata_searchExperimentsByDesc_args() : gatewayId(), userName(), description() {
+ Airavata_searchProjectsByProjectDesc_args() : gatewayId(), userName(), description() {
}
- virtual ~Airavata_searchExperimentsByDesc_args() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDesc_args() throw() {}
std::string gatewayId;
std::string userName;
@@ -3045,7 +3109,7 @@ class Airavata_searchExperimentsByDesc_args {
description = val;
}
- bool operator == (const Airavata_searchExperimentsByDesc_args & rhs) const
+ bool operator == (const Airavata_searchProjectsByProjectDesc_args & rhs) const
{
if (!(gatewayId == rhs.gatewayId))
return false;
@@ -3055,11 +3119,11 @@ class Airavata_searchExperimentsByDesc_args {
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByDesc_args &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectDesc_args &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByDesc_args & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectDesc_args & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -3067,11 +3131,11 @@ class Airavata_searchExperimentsByDesc_args {
};
-class Airavata_searchExperimentsByDesc_pargs {
+class Airavata_searchProjectsByProjectDesc_pargs {
public:
- virtual ~Airavata_searchExperimentsByDesc_pargs() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDesc_pargs() throw() {}
const std::string* gatewayId;
const std::string* userName;
@@ -3081,30 +3145,30 @@ class Airavata_searchExperimentsByDesc_pargs {
};
-typedef struct _Airavata_searchExperimentsByDesc_result__isset {
- _Airavata_searchExperimentsByDesc_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectDesc_result__isset {
+ _Airavata_searchProjectsByProjectDesc_result__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchExperimentsByDesc_result__isset;
+} _Airavata_searchProjectsByProjectDesc_result__isset;
-class Airavata_searchExperimentsByDesc_result {
+class Airavata_searchProjectsByProjectDesc_result {
public:
- Airavata_searchExperimentsByDesc_result() {
+ Airavata_searchProjectsByProjectDesc_result() {
}
- virtual ~Airavata_searchExperimentsByDesc_result() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDesc_result() throw() {}
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ std::vector< ::apache::airavata::model::workspace::Project> success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchExperimentsByDesc_result__isset __isset;
+ _Airavata_searchProjectsByProjectDesc_result__isset __isset;
- void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::Project> & val) {
success = val;
}
@@ -3120,7 +3184,7 @@ class Airavata_searchExperimentsByDesc_result {
ase = val;
}
- bool operator == (const Airavata_searchExperimentsByDesc_result & rhs) const
+ bool operator == (const Airavata_searchProjectsByProjectDesc_result & rhs) const
{
if (!(success == rhs.success))
return false;
@@ -3132,54 +3196,56 @@ class Airavata_searchExperimentsByDesc_result {
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByDesc_result &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectDesc_result &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByDesc_result & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectDesc_result & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchExperimentsByDesc_presult__isset {
- _Airavata_searchExperimentsByDesc_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectDesc_presult__isset {
+ _Airavata_searchProjectsByProjectDesc_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchExperimentsByDesc_presult__isset;
+} _Airavata_searchProjectsByProjectDesc_presult__isset;
-class Airavata_searchExperimentsByDesc_presult {
+class Airavata_searchProjectsByProjectDesc_presult {
public:
- virtual ~Airavata_searchExperimentsByDesc_presult() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDesc_presult() throw() {}
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ std::vector< ::apache::airavata::model::workspace::Project> * success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchExperimentsByDesc_presult__isset __isset;
+ _Airavata_searchProjectsByProjectDesc_presult__isset __isset;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
};
-class Airavata_searchExperimentsByApplication_args {
+class Airavata_searchProjectsByProjectDescWithPagination_args {
public:
- Airavata_searchExperimentsByApplication_args() : gatewayId(), userName(), applicationId() {
+ Airavata_searchProjectsByProjectDescWithPagination_args() : gatewayId(), userName(), description(), limit(0), offset(0) {
}
- virtual ~Airavata_searchExperimentsByApplication_args() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDescWithPagination_args() throw() {}
std::string gatewayId;
std::string userName;
- std::string applicationId;
+ std::string description;
+ int32_t limit;
+ int32_t offset;
void __set_gatewayId(const std::string& val) {
gatewayId = val;
@@ -3189,25 +3255,37 @@ class Airavata_searchExperimentsByApplication_args {
userName = val;
}
- void __set_applicationId(const std::string& val) {
- applicationId = val;
+ void __set_description(const std::string& val) {
+ description = val;
}
- bool operator == (const Airavata_searchExperimentsByApplication_args & rhs) const
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchProjectsByProjectDescWithPagination_args & rhs) const
{
if (!(gatewayId == rhs.gatewayId))
return false;
if (!(userName == rhs.userName))
return false;
- if (!(applicationId == rhs.applicationId))
+ if (!(description == rhs.description))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByApplication_args &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectDescWithPagination_args &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByApplication_args & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectDescWithPagination_args & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -3215,44 +3293,46 @@ class Airavata_searchExperimentsByApplication_args {
};
-class Airavata_searchExperimentsByApplication_pargs {
+class Airavata_searchProjectsByProjectDescWithPagination_pargs {
public:
- virtual ~Airavata_searchExperimentsByApplication_pargs() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDescWithPagination_pargs() throw() {}
const std::string* gatewayId;
const std::string* userName;
- const std::string* applicationId;
+ const std::string* description;
+ const int32_t* limit;
+ const int32_t* offset;
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchExperimentsByApplication_result__isset {
- _Airavata_searchExperimentsByApplication_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectDescWithPagination_result__isset {
+ _Airavata_searchProjectsByProjectDescWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchExperimentsByApplication_result__isset;
+} _Airavata_searchProjectsByProjectDescWithPagination_result__isset;
-class Airavata_searchExperimentsByApplication_result {
+class Airavata_searchProjectsByProjectDescWithPagination_result {
public:
- Airavata_searchExperimentsByApplication_result() {
+ Airavata_searchProjectsByProjectDescWithPagination_result() {
}
- virtual ~Airavata_searchExperimentsByApplication_result() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDescWithPagination_result() throw() {}
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ std::vector< ::apache::airavata::model::workspace::Project> success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchExperimentsByApplication_result__isset __isset;
+ _Airavata_searchProjectsByProjectDescWithPagination_result__isset __isset;
- void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::Project> & val) {
success = val;
}
@@ -3268,7 +3348,7 @@ class Airavata_searchExperimentsByApplication_result {
ase = val;
}
- bool operator == (const Airavata_searchExperimentsByApplication_result & rhs) const
+ bool operator == (const Airavata_searchProjectsByProjectDescWithPagination_result & rhs) const
{
if (!(success == rhs.success))
return false;
@@ -3280,37 +3360,973 @@ class Airavata_searchExperimentsByApplication_result {
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByApplication_result &rhs) const {
+ bool operator != (const Airavata_searchProjectsByProjectDescWithPagination_result &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByApplication_result & ) const;
+ bool operator < (const Airavata_searchProjectsByProjectDescWithPagination_result & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
};
-typedef struct _Airavata_searchExperimentsByApplication_presult__isset {
- _Airavata_searchExperimentsByApplication_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+typedef struct _Airavata_searchProjectsByProjectDescWithPagination_presult__isset {
+ _Airavata_searchProjectsByProjectDescWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
bool success;
bool ire;
bool ace;
bool ase;
-} _Airavata_searchExperimentsByApplication_presult__isset;
+} _Airavata_searchProjectsByProjectDescWithPagination_presult__isset;
-class Airavata_searchExperimentsByApplication_presult {
+class Airavata_searchProjectsByProjectDescWithPagination_presult {
public:
- virtual ~Airavata_searchExperimentsByApplication_presult() throw() {}
+ virtual ~Airavata_searchProjectsByProjectDescWithPagination_presult() throw() {}
- std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ std::vector< ::apache::airavata::model::workspace::Project> * success;
::apache::airavata::api::error::InvalidRequestException ire;
::apache::airavata::api::error::AiravataClientException ace;
::apache::airavata::api::error::AiravataSystemException ase;
- _Airavata_searchExperimentsByApplication_presult__isset __isset;
+ _Airavata_searchProjectsByProjectDescWithPagination_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByName_args {
+ public:
+
+ Airavata_searchExperimentsByName_args() : gatewayId(), userName(), expName() {
+ }
+
+ virtual ~Airavata_searchExperimentsByName_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ std::string expName;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_expName(const std::string& val) {
+ expName = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByName_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(expName == rhs.expName))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByName_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByName_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByName_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByName_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const std::string* expName;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByName_result__isset {
+ _Airavata_searchExperimentsByName_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByName_result__isset;
+
+class Airavata_searchExperimentsByName_result {
+ public:
+
+ Airavata_searchExperimentsByName_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByName_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByName_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByName_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByName_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByName_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByName_presult__isset {
+ _Airavata_searchExperimentsByName_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByName_presult__isset;
+
+class Airavata_searchExperimentsByName_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByName_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByName_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByNameWithPagination_args {
+ public:
+
+ Airavata_searchExperimentsByNameWithPagination_args() : gatewayId(), userName(), expName(), limit(0), offset(0) {
+ }
+
+ virtual ~Airavata_searchExperimentsByNameWithPagination_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ std::string expName;
+ int32_t limit;
+ int32_t offset;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_expName(const std::string& val) {
+ expName = val;
+ }
+
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByNameWithPagination_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(expName == rhs.expName))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByNameWithPagination_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByNameWithPagination_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByNameWithPagination_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByNameWithPagination_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const std::string* expName;
+ const int32_t* limit;
+ const int32_t* offset;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByNameWithPagination_result__isset {
+ _Airavata_searchExperimentsByNameWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByNameWithPagination_result__isset;
+
+class Airavata_searchExperimentsByNameWithPagination_result {
+ public:
+
+ Airavata_searchExperimentsByNameWithPagination_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByNameWithPagination_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByNameWithPagination_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByNameWithPagination_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByNameWithPagination_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByNameWithPagination_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByNameWithPagination_presult__isset {
+ _Airavata_searchExperimentsByNameWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByNameWithPagination_presult__isset;
+
+class Airavata_searchExperimentsByNameWithPagination_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByNameWithPagination_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByNameWithPagination_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByDesc_args {
+ public:
+
+ Airavata_searchExperimentsByDesc_args() : gatewayId(), userName(), description() {
+ }
+
+ virtual ~Airavata_searchExperimentsByDesc_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ std::string description;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_description(const std::string& val) {
+ description = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByDesc_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(description == rhs.description))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByDesc_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByDesc_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByDesc_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByDesc_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const std::string* description;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByDesc_result__isset {
+ _Airavata_searchExperimentsByDesc_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByDesc_result__isset;
+
+class Airavata_searchExperimentsByDesc_result {
+ public:
+
+ Airavata_searchExperimentsByDesc_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByDesc_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByDesc_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByDesc_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByDesc_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByDesc_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByDesc_presult__isset {
+ _Airavata_searchExperimentsByDesc_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByDesc_presult__isset;
+
+class Airavata_searchExperimentsByDesc_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByDesc_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByDesc_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByDescWithPagination_args {
+ public:
+
+ Airavata_searchExperimentsByDescWithPagination_args() : gatewayId(), userName(), description(), limit(0), offset(0) {
+ }
+
+ virtual ~Airavata_searchExperimentsByDescWithPagination_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ std::string description;
+ int32_t limit;
+ int32_t offset;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_description(const std::string& val) {
+ description = val;
+ }
+
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByDescWithPagination_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(description == rhs.description))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByDescWithPagination_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByDescWithPagination_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByDescWithPagination_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByDescWithPagination_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const std::string* description;
+ const int32_t* limit;
+ const int32_t* offset;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByDescWithPagination_result__isset {
+ _Airavata_searchExperimentsByDescWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByDescWithPagination_result__isset;
+
+class Airavata_searchExperimentsByDescWithPagination_result {
+ public:
+
+ Airavata_searchExperimentsByDescWithPagination_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByDescWithPagination_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByDescWithPagination_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByDescWithPagination_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByDescWithPagination_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByDescWithPagination_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByDescWithPagination_presult__isset {
+ _Airavata_searchExperimentsByDescWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByDescWithPagination_presult__isset;
+
+class Airavata_searchExperimentsByDescWithPagination_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByDescWithPagination_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByDescWithPagination_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByApplication_args {
+ public:
+
+ Airavata_searchExperimentsByApplication_args() : gatewayId(), userName(), applicationId() {
+ }
+
+ virtual ~Airavata_searchExperimentsByApplication_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ std::string applicationId;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_applicationId(const std::string& val) {
+ applicationId = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByApplication_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(applicationId == rhs.applicationId))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByApplication_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByApplication_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByApplication_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByApplication_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const std::string* applicationId;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByApplication_result__isset {
+ _Airavata_searchExperimentsByApplication_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByApplication_result__isset;
+
+class Airavata_searchExperimentsByApplication_result {
+ public:
+
+ Airavata_searchExperimentsByApplication_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByApplication_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByApplication_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByApplication_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByApplication_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByApplication_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByApplication_presult__isset {
+ _Airavata_searchExperimentsByApplication_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByApplication_presult__isset;
+
+class Airavata_searchExperimentsByApplication_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByApplication_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByApplication_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByApplicationWithPagination_args {
+ public:
+
+ Airavata_searchExperimentsByApplicationWithPagination_args() : gatewayId(), userName(), applicationId(), limit(0), offset(0) {
+ }
+
+ virtual ~Airavata_searchExperimentsByApplicationWithPagination_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ std::string applicationId;
+ int32_t limit;
+ int32_t offset;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_applicationId(const std::string& val) {
+ applicationId = val;
+ }
+
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByApplicationWithPagination_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(applicationId == rhs.applicationId))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByApplicationWithPagination_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByApplicationWithPagination_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByApplicationWithPagination_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByApplicationWithPagination_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const std::string* applicationId;
+ const int32_t* limit;
+ const int32_t* offset;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByApplicationWithPagination_result__isset {
+ _Airavata_searchExperimentsByApplicationWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByApplicationWithPagination_result__isset;
+
+class Airavata_searchExperimentsByApplicationWithPagination_result {
+ public:
+
+ Airavata_searchExperimentsByApplicationWithPagination_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByApplicationWithPagination_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByApplicationWithPagination_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByApplicationWithPagination_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByApplicationWithPagination_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByApplicationWithPagination_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByApplicationWithPagination_presult__isset {
+ _Airavata_searchExperimentsByApplicationWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByApplicationWithPagination_presult__isset;
+
+class Airavata_searchExperimentsByApplicationWithPagination_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByApplicationWithPagination_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByApplicationWithPagination_presult__isset __isset;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
@@ -3320,14 +4336,485 @@ class Airavata_searchExperimentsByApplication_presult {
class Airavata_searchExperimentsByStatus_args {
public:
- Airavata_searchExperimentsByStatus_args() : gatewayId(), userName(), experimentState(( ::apache::airavata::model::workspace::experiment::ExperimentState::type)0) {
+ Airavata_searchExperimentsByStatus_args() : gatewayId(), userName(), experimentState(( ::apache::airavata::model::workspace::experiment::ExperimentState::type)0) {
+ }
+
+ virtual ~Airavata_searchExperimentsByStatus_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_experimentState(const ::apache::airavata::model::workspace::experiment::ExperimentState::type val) {
+ experimentState = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByStatus_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(experimentState == rhs.experimentState))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByStatus_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByStatus_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByStatus_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByStatus_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const ::apache::airavata::model::workspace::experiment::ExperimentState::type* experimentState;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByStatus_result__isset {
+ _Airavata_searchExperimentsByStatus_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByStatus_result__isset;
+
+class Airavata_searchExperimentsByStatus_result {
+ public:
+
+ Airavata_searchExperimentsByStatus_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByStatus_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByStatus_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByStatus_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByStatus_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByStatus_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByStatus_presult__isset {
+ _Airavata_searchExperimentsByStatus_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByStatus_presult__isset;
+
+class Airavata_searchExperimentsByStatus_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByStatus_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByStatus_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByStatusWithPagination_args {
+ public:
+
+ Airavata_searchExperimentsByStatusWithPagination_args() : gatewayId(), userName(), experimentState(( ::apache::airavata::model::workspace::experiment::ExperimentState::type)0), limit(0), offset(0) {
+ }
+
+ virtual ~Airavata_searchExperimentsByStatusWithPagination_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState;
+ int32_t limit;
+ int32_t offset;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_experimentState(const ::apache::airavata::model::workspace::experiment::ExperimentState::type val) {
+ experimentState = val;
+ }
+
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByStatusWithPagination_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(experimentState == rhs.experimentState))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByStatusWithPagination_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByStatusWithPagination_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByStatusWithPagination_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByStatusWithPagination_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const ::apache::airavata::model::workspace::experiment::ExperimentState::type* experimentState;
+ const int32_t* limit;
+ const int32_t* offset;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByStatusWithPagination_result__isset {
+ _Airavata_searchExperimentsByStatusWithPagination_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByStatusWithPagination_result__isset;
+
+class Airavata_searchExperimentsByStatusWithPagination_result {
+ public:
+
+ Airavata_searchExperimentsByStatusWithPagination_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByStatusWithPagination_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByStatusWithPagination_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByStatusWithPagination_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByStatusWithPagination_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByStatusWithPagination_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByStatusWithPagination_presult__isset {
+ _Airavata_searchExperimentsByStatusWithPagination_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByStatusWithPagination_presult__isset;
+
+class Airavata_searchExperimentsByStatusWithPagination_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByStatusWithPagination_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByStatusWithPagination_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByCreationTime_args {
+ public:
+
+ Airavata_searchExperimentsByCreationTime_args() : gatewayId(), userName(), fromTime(0), toTime(0) {
+ }
+
+ virtual ~Airavata_searchExperimentsByCreationTime_args() throw() {}
+
+ std::string gatewayId;
+ std::string userName;
+ int64_t fromTime;
+ int64_t toTime;
+
+ void __set_gatewayId(const std::string& val) {
+ gatewayId = val;
+ }
+
+ void __set_userName(const std::string& val) {
+ userName = val;
+ }
+
+ void __set_fromTime(const int64_t val) {
+ fromTime = val;
+ }
+
+ void __set_toTime(const int64_t val) {
+ toTime = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByCreationTime_args & rhs) const
+ {
+ if (!(gatewayId == rhs.gatewayId))
+ return false;
+ if (!(userName == rhs.userName))
+ return false;
+ if (!(fromTime == rhs.fromTime))
+ return false;
+ if (!(toTime == rhs.toTime))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByCreationTime_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByCreationTime_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_searchExperimentsByCreationTime_pargs {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByCreationTime_pargs() throw() {}
+
+ const std::string* gatewayId;
+ const std::string* userName;
+ const int64_t* fromTime;
+ const int64_t* toTime;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByCreationTime_result__isset {
+ _Airavata_searchExperimentsByCreationTime_result__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByCreationTime_result__isset;
+
+class Airavata_searchExperimentsByCreationTime_result {
+ public:
+
+ Airavata_searchExperimentsByCreationTime_result() {
+ }
+
+ virtual ~Airavata_searchExperimentsByCreationTime_result() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByCreationTime_result__isset __isset;
+
+ void __set_success(const std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> & val) {
+ success = val;
+ }
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val) {
+ ire = val;
+ }
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val) {
+ ace = val;
+ }
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val) {
+ ase = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByCreationTime_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_searchExperimentsByCreationTime_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_searchExperimentsByCreationTime_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_searchExperimentsByCreationTime_presult__isset {
+ _Airavata_searchExperimentsByCreationTime_presult__isset() : success(false), ire(false), ace(false), ase(false) {}
+ bool success;
+ bool ire;
+ bool ace;
+ bool ase;
+} _Airavata_searchExperimentsByCreationTime_presult__isset;
+
+class Airavata_searchExperimentsByCreationTime_presult {
+ public:
+
+
+ virtual ~Airavata_searchExperimentsByCreationTime_presult() throw() {}
+
+ std::vector< ::apache::airavata::model::workspace::experiment::ExperimentSummary> * success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+
+ _Airavata_searchExperimentsByCreationTime_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
+
+class Airavata_searchExperimentsByCreationTimeWithPagination_args {
+ public:
+
+ Airavata_searchExperimentsByCreationTimeWithPagination_args() : gatewayId(), userName(), fromTime(0), toTime(0), limit(0), offset(0) {
}
- virtual ~Airavata_searchExperimentsByStatus_args() throw() {}
+ virtual ~Airavata_searchExperimentsByCreationTimeWithPagination_args() throw() {}
std::string gatewayId;
std::string userName;
- ::apache::airavata::model::workspace::experiment::ExperimentState::type experimentState;
+ int64_t fromTime;
+ int64_t toTime;
+ int32_t limit;
+ int32_t offset;
void __set_gatewayId(const std::string& val) {
gatewayId = val;
@@ -3337,25 +4824,43 @@ class Airavata_searchExperimentsByStatus_args {
userName = val;
}
- void __set_experimentState(const ::apache::airavata::model::workspace::experiment::ExperimentState::type val) {
- experimentState = val;
+ void __set_fromTime(const int64_t val) {
+ fromTime = val;
}
- bool operator == (const Airavata_searchExperimentsByStatus_args & rhs) const
+ void __set_toTime(const int64_t val) {
+ toTime = val;
+ }
+
+ void __set_limit(const int32_t val) {
+ limit = val;
+ }
+
+ void __set_offset(const int32_t val) {
+ offset = val;
+ }
+
+ bool operator == (const Airavata_searchExperimentsByCreationTimeWithPagination_args & rhs) const
{
if (!(gatewayId == rhs.gatewayId))
return false;
if (!(userName == rhs.userName))
return false;
- if (!(experimentState == rhs.experimentState))
+ if (!(fromTime == rhs.fromTime))
+ return false;
+ if (!(toTime == rhs.toTime))
+ return false;
+ if (!(limit == rhs.limit))
+ return false;
+ if (!(offset == rhs.offset))
return false;
return true;
}
- bool operator != (const Airavata_searchExperimentsByStatus_args &rhs) const {
+ bool operator != (const Airavata_searchExperimentsByCreationTimeWithPagination_args &rhs) const {
return !(*this == rhs);
}
- bool operator < (const Airavata_searchExperimentsByStatus_args & ) const;
+ bool operator < (const Airavata_searchExperimentsByCreationTimeWithPagination_args & ) const;
uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -3363,42 +4868,45 @@ class Airavat
<TRUNCATED>
[12/19] airavata git commit: Merge branch 'master' of
https://github.com/apache/airavata
Posted by sm...@apache.org.
Merge branch 'master' of https://github.com/apache/airavata
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/7bf5fc19
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/7bf5fc19
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/7bf5fc19
Branch: refs/heads/master
Commit: 7bf5fc19bc7e406eac3604e83495b464c1862cde
Parents: c6ee5ce 4117cbc
Author: Supun Nakandala <su...@gmail.com>
Authored: Mon Apr 27 20:57:53 2015 +0530
Committer: Supun Nakandala <su...@gmail.com>
Committed: Mon Apr 27 20:57:53 2015 +0530
----------------------------------------------------------------------
.../server/src/main/resources/airavata-server.properties | 1 +
.../gfac/monitor/email/parser/SLURMEmailParser.java | 2 +-
.../airavata/persistance/registry/jpa/JPAConstants.java | 1 +
.../airavata/persistance/registry/jpa/ResourceUtils.java | 4 ++--
.../airavata/persistance/registry/jpa/resources/Utils.java | 9 +++++++++
5 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
[05/19] airavata git commit: Changing Airavata API to support
paginated result retrieval of Project and Experiment data
Posted by sm...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/0a3d857b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
index 5d20b4f..3938ddd 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -32,15 +32,25 @@ interface AiravataIf {
public function getProject($projectId);
public function deleteProject($projectId);
public function getAllUserProjects($gatewayId, $userName);
+ public function getAllUserProjectsWithPagination($gatewayId, $userName, $limit, $offset);
public function searchProjectsByProjectName($gatewayId, $userName, $projectName);
+ public function searchProjectsByProjectNameWithPagination($gatewayId, $userName, $projectName, $limit, $offset);
public function searchProjectsByProjectDesc($gatewayId, $userName, $description);
+ public function searchProjectsByProjectDescWithPagination($gatewayId, $userName, $description, $limit, $offset);
public function searchExperimentsByName($gatewayId, $userName, $expName);
+ public function searchExperimentsByNameWithPagination($gatewayId, $userName, $expName, $limit, $offset);
public function searchExperimentsByDesc($gatewayId, $userName, $description);
+ public function searchExperimentsByDescWithPagination($gatewayId, $userName, $description, $limit, $offset);
public function searchExperimentsByApplication($gatewayId, $userName, $applicationId);
+ public function searchExperimentsByApplicationWithPagination($gatewayId, $userName, $applicationId, $limit, $offset);
public function searchExperimentsByStatus($gatewayId, $userName, $experimentState);
+ public function searchExperimentsByStatusWithPagination($gatewayId, $userName, $experimentState, $limit, $offset);
public function searchExperimentsByCreationTime($gatewayId, $userName, $fromTime, $toTime);
+ public function searchExperimentsByCreationTimeWithPagination($gatewayId, $userName, $fromTime, $toTime, $limit, $offset);
public function getAllExperimentsInProject($projectId);
+ public function getAllExperimentsInProjectWithPagination($projectId, $limit, $offset);
public function getAllUserExperiments($gatewayId, $userName);
+ public function getAllUserExperimentsWithPagination($gatewayId, $userName, $limit, $offset);
public function createExperiment($gatewayId, \Airavata\Model\Workspace\Experiment\Experiment $experiment);
public function getExperiment($airavataExperimentId);
public function updateExperiment($airavataExperimentId, \Airavata\Model\Workspace\Experiment\Experiment $experiment);
@@ -1052,6 +1062,69 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("getAllUserProjects failed: unknown result");
}
+ public function getAllUserProjectsWithPagination($gatewayId, $userName, $limit, $offset)
+ {
+ $this->send_getAllUserProjectsWithPagination($gatewayId, $userName, $limit, $offset);
+ return $this->recv_getAllUserProjectsWithPagination();
+ }
+
+ public function send_getAllUserProjectsWithPagination($gatewayId, $userName, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_getAllUserProjectsWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'getAllUserProjectsWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('getAllUserProjectsWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_getAllUserProjectsWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_getAllUserProjectsWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_getAllUserProjectsWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("getAllUserProjectsWithPagination failed: unknown result");
+ }
+
public function searchProjectsByProjectName($gatewayId, $userName, $projectName)
{
$this->send_searchProjectsByProjectName($gatewayId, $userName, $projectName);
@@ -1114,6 +1187,70 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchProjectsByProjectName failed: unknown result");
}
+ public function searchProjectsByProjectNameWithPagination($gatewayId, $userName, $projectName, $limit, $offset)
+ {
+ $this->send_searchProjectsByProjectNameWithPagination($gatewayId, $userName, $projectName, $limit, $offset);
+ return $this->recv_searchProjectsByProjectNameWithPagination();
+ }
+
+ public function send_searchProjectsByProjectNameWithPagination($gatewayId, $userName, $projectName, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchProjectsByProjectNameWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->projectName = $projectName;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchProjectsByProjectNameWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchProjectsByProjectNameWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchProjectsByProjectNameWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchProjectsByProjectNameWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchProjectsByProjectNameWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchProjectsByProjectNameWithPagination failed: unknown result");
+ }
+
public function searchProjectsByProjectDesc($gatewayId, $userName, $description)
{
$this->send_searchProjectsByProjectDesc($gatewayId, $userName, $description);
@@ -1176,6 +1313,70 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchProjectsByProjectDesc failed: unknown result");
}
+ public function searchProjectsByProjectDescWithPagination($gatewayId, $userName, $description, $limit, $offset)
+ {
+ $this->send_searchProjectsByProjectDescWithPagination($gatewayId, $userName, $description, $limit, $offset);
+ return $this->recv_searchProjectsByProjectDescWithPagination();
+ }
+
+ public function send_searchProjectsByProjectDescWithPagination($gatewayId, $userName, $description, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchProjectsByProjectDescWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->description = $description;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchProjectsByProjectDescWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchProjectsByProjectDescWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchProjectsByProjectDescWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchProjectsByProjectDescWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchProjectsByProjectDescWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchProjectsByProjectDescWithPagination failed: unknown result");
+ }
+
public function searchExperimentsByName($gatewayId, $userName, $expName)
{
$this->send_searchExperimentsByName($gatewayId, $userName, $expName);
@@ -1238,6 +1439,70 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchExperimentsByName failed: unknown result");
}
+ public function searchExperimentsByNameWithPagination($gatewayId, $userName, $expName, $limit, $offset)
+ {
+ $this->send_searchExperimentsByNameWithPagination($gatewayId, $userName, $expName, $limit, $offset);
+ return $this->recv_searchExperimentsByNameWithPagination();
+ }
+
+ public function send_searchExperimentsByNameWithPagination($gatewayId, $userName, $expName, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchExperimentsByNameWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->expName = $expName;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchExperimentsByNameWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchExperimentsByNameWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchExperimentsByNameWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByNameWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchExperimentsByNameWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchExperimentsByNameWithPagination failed: unknown result");
+ }
+
public function searchExperimentsByDesc($gatewayId, $userName, $description)
{
$this->send_searchExperimentsByDesc($gatewayId, $userName, $description);
@@ -1300,6 +1565,70 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchExperimentsByDesc failed: unknown result");
}
+ public function searchExperimentsByDescWithPagination($gatewayId, $userName, $description, $limit, $offset)
+ {
+ $this->send_searchExperimentsByDescWithPagination($gatewayId, $userName, $description, $limit, $offset);
+ return $this->recv_searchExperimentsByDescWithPagination();
+ }
+
+ public function send_searchExperimentsByDescWithPagination($gatewayId, $userName, $description, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchExperimentsByDescWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->description = $description;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchExperimentsByDescWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchExperimentsByDescWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchExperimentsByDescWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByDescWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchExperimentsByDescWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchExperimentsByDescWithPagination failed: unknown result");
+ }
+
public function searchExperimentsByApplication($gatewayId, $userName, $applicationId)
{
$this->send_searchExperimentsByApplication($gatewayId, $userName, $applicationId);
@@ -1362,6 +1691,70 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchExperimentsByApplication failed: unknown result");
}
+ public function searchExperimentsByApplicationWithPagination($gatewayId, $userName, $applicationId, $limit, $offset)
+ {
+ $this->send_searchExperimentsByApplicationWithPagination($gatewayId, $userName, $applicationId, $limit, $offset);
+ return $this->recv_searchExperimentsByApplicationWithPagination();
+ }
+
+ public function send_searchExperimentsByApplicationWithPagination($gatewayId, $userName, $applicationId, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchExperimentsByApplicationWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->applicationId = $applicationId;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchExperimentsByApplicationWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchExperimentsByApplicationWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchExperimentsByApplicationWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByApplicationWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchExperimentsByApplicationWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchExperimentsByApplicationWithPagination failed: unknown result");
+ }
+
public function searchExperimentsByStatus($gatewayId, $userName, $experimentState)
{
$this->send_searchExperimentsByStatus($gatewayId, $userName, $experimentState);
@@ -1424,6 +1817,70 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchExperimentsByStatus failed: unknown result");
}
+ public function searchExperimentsByStatusWithPagination($gatewayId, $userName, $experimentState, $limit, $offset)
+ {
+ $this->send_searchExperimentsByStatusWithPagination($gatewayId, $userName, $experimentState, $limit, $offset);
+ return $this->recv_searchExperimentsByStatusWithPagination();
+ }
+
+ public function send_searchExperimentsByStatusWithPagination($gatewayId, $userName, $experimentState, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchExperimentsByStatusWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->experimentState = $experimentState;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchExperimentsByStatusWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchExperimentsByStatusWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchExperimentsByStatusWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByStatusWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchExperimentsByStatusWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchExperimentsByStatusWithPagination failed: unknown result");
+ }
+
public function searchExperimentsByCreationTime($gatewayId, $userName, $fromTime, $toTime)
{
$this->send_searchExperimentsByCreationTime($gatewayId, $userName, $fromTime, $toTime);
@@ -1487,6 +1944,71 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("searchExperimentsByCreationTime failed: unknown result");
}
+ public function searchExperimentsByCreationTimeWithPagination($gatewayId, $userName, $fromTime, $toTime, $limit, $offset)
+ {
+ $this->send_searchExperimentsByCreationTimeWithPagination($gatewayId, $userName, $fromTime, $toTime, $limit, $offset);
+ return $this->recv_searchExperimentsByCreationTimeWithPagination();
+ }
+
+ public function send_searchExperimentsByCreationTimeWithPagination($gatewayId, $userName, $fromTime, $toTime, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_searchExperimentsByCreationTimeWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->fromTime = $fromTime;
+ $args->toTime = $toTime;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'searchExperimentsByCreationTimeWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('searchExperimentsByCreationTimeWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_searchExperimentsByCreationTimeWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByCreationTimeWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_searchExperimentsByCreationTimeWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("searchExperimentsByCreationTimeWithPagination failed: unknown result");
+ }
+
public function getAllExperimentsInProject($projectId)
{
$this->send_getAllExperimentsInProject($projectId);
@@ -1550,6 +2072,71 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("getAllExperimentsInProject failed: unknown result");
}
+ public function getAllExperimentsInProjectWithPagination($projectId, $limit, $offset)
+ {
+ $this->send_getAllExperimentsInProjectWithPagination($projectId, $limit, $offset);
+ return $this->recv_getAllExperimentsInProjectWithPagination();
+ }
+
+ public function send_getAllExperimentsInProjectWithPagination($projectId, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_getAllExperimentsInProjectWithPagination_args();
+ $args->projectId = $projectId;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'getAllExperimentsInProjectWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('getAllExperimentsInProjectWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_getAllExperimentsInProjectWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_getAllExperimentsInProjectWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_getAllExperimentsInProjectWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ if ($result->pnfe !== null) {
+ throw $result->pnfe;
+ }
+ throw new \Exception("getAllExperimentsInProjectWithPagination failed: unknown result");
+ }
+
public function getAllUserExperiments($gatewayId, $userName)
{
$this->send_getAllUserExperiments($gatewayId, $userName);
@@ -1611,6 +2198,69 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("getAllUserExperiments failed: unknown result");
}
+ public function getAllUserExperimentsWithPagination($gatewayId, $userName, $limit, $offset)
+ {
+ $this->send_getAllUserExperimentsWithPagination($gatewayId, $userName, $limit, $offset);
+ return $this->recv_getAllUserExperimentsWithPagination();
+ }
+
+ public function send_getAllUserExperimentsWithPagination($gatewayId, $userName, $limit, $offset)
+ {
+ $args = new \Airavata\API\Airavata_getAllUserExperimentsWithPagination_args();
+ $args->gatewayId = $gatewayId;
+ $args->userName = $userName;
+ $args->limit = $limit;
+ $args->offset = $offset;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'getAllUserExperimentsWithPagination', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('getAllUserExperimentsWithPagination', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_getAllUserExperimentsWithPagination()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_getAllUserExperimentsWithPagination_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_getAllUserExperimentsWithPagination_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ throw new \Exception("getAllUserExperimentsWithPagination failed: unknown result");
+ }
+
public function createExperiment($gatewayId, \Airavata\Model\Workspace\Experiment\Experiment $experiment)
{
$this->send_createExperiment($gatewayId, $experiment);
@@ -10426,7 +11076,2689 @@ class Airavata_getAllUserProjects_result {
}
public function getName() {
- return 'Airavata_getAllUserProjects_result';
+ return 'Airavata_getAllUserProjects_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size16 = 0;
+ $_etype19 = 0;
+ $xfer += $input->readListBegin($_etype19, $_size16);
+ for ($_i20 = 0; $_i20 < $_size16; ++$_i20)
+ {
+ $elem21 = null;
+ $elem21 = new \Airavata\Model\Workspace\Project();
+ $xfer += $elem21->read($input);
+ $this->success []= $elem21;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_getAllUserProjects_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter22)
+ {
+ $xfer += $iter22->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_getAllUserProjectsWithPagination_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $limit = null;
+ public $offset = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'limit',
+ 'type' => TType::I32,
+ ),
+ 4 => array(
+ 'var' => 'offset',
+ 'type' => TType::I32,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['limit'])) {
+ $this->limit = $vals['limit'];
+ }
+ if (isset($vals['offset'])) {
+ $this->offset = $vals['offset'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_getAllUserProjectsWithPagination_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->limit);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->offset);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_getAllUserProjectsWithPagination_args');
+ if ($this->gatewayId !== null) {
+ $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 1);
+ $xfer += $output->writeString($this->gatewayId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->userName !== null) {
+ $xfer += $output->writeFieldBegin('userName', TType::STRING, 2);
+ $xfer += $output->writeString($this->userName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->limit !== null) {
+ $xfer += $output->writeFieldBegin('limit', TType::I32, 3);
+ $xfer += $output->writeI32($this->limit);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->offset !== null) {
+ $xfer += $output->writeFieldBegin('offset', TType::I32, 4);
+ $xfer += $output->writeI32($this->offset);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_getAllUserProjectsWithPagination_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Project',
+ ),
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_getAllUserProjectsWithPagination_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size23 = 0;
+ $_etype26 = 0;
+ $xfer += $input->readListBegin($_etype26, $_size23);
+ for ($_i27 = 0; $_i27 < $_size23; ++$_i27)
+ {
+ $elem28 = null;
+ $elem28 = new \Airavata\Model\Workspace\Project();
+ $xfer += $elem28->read($input);
+ $this->success []= $elem28;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_getAllUserProjectsWithPagination_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter29)
+ {
+ $xfer += $iter29->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectName_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $projectName = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'projectName',
+ 'type' => TType::STRING,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['projectName'])) {
+ $this->projectName = $vals['projectName'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectName_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->projectName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectName_args');
+ if ($this->gatewayId !== null) {
+ $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 1);
+ $xfer += $output->writeString($this->gatewayId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->userName !== null) {
+ $xfer += $output->writeFieldBegin('userName', TType::STRING, 2);
+ $xfer += $output->writeString($this->userName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->projectName !== null) {
+ $xfer += $output->writeFieldBegin('projectName', TType::STRING, 3);
+ $xfer += $output->writeString($this->projectName);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectName_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Project',
+ ),
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectName_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size30 = 0;
+ $_etype33 = 0;
+ $xfer += $input->readListBegin($_etype33, $_size30);
+ for ($_i34 = 0; $_i34 < $_size30; ++$_i34)
+ {
+ $elem35 = null;
+ $elem35 = new \Airavata\Model\Workspace\Project();
+ $xfer += $elem35->read($input);
+ $this->success []= $elem35;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectName_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter36)
+ {
+ $xfer += $iter36->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectNameWithPagination_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $projectName = null;
+ public $limit = null;
+ public $offset = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'projectName',
+ 'type' => TType::STRING,
+ ),
+ 4 => array(
+ 'var' => 'limit',
+ 'type' => TType::I32,
+ ),
+ 5 => array(
+ 'var' => 'offset',
+ 'type' => TType::I32,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['projectName'])) {
+ $this->projectName = $vals['projectName'];
+ }
+ if (isset($vals['limit'])) {
+ $this->limit = $vals['limit'];
+ }
+ if (isset($vals['offset'])) {
+ $this->offset = $vals['offset'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectNameWithPagination_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->projectName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->limit);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 5:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->offset);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectNameWithPagination_args');
+ if ($this->gatewayId !== null) {
+ $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 1);
+ $xfer += $output->writeString($this->gatewayId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->userName !== null) {
+ $xfer += $output->writeFieldBegin('userName', TType::STRING, 2);
+ $xfer += $output->writeString($this->userName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->projectName !== null) {
+ $xfer += $output->writeFieldBegin('projectName', TType::STRING, 3);
+ $xfer += $output->writeString($this->projectName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->limit !== null) {
+ $xfer += $output->writeFieldBegin('limit', TType::I32, 4);
+ $xfer += $output->writeI32($this->limit);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->offset !== null) {
+ $xfer += $output->writeFieldBegin('offset', TType::I32, 5);
+ $xfer += $output->writeI32($this->offset);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectNameWithPagination_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Project',
+ ),
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectNameWithPagination_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size37 = 0;
+ $_etype40 = 0;
+ $xfer += $input->readListBegin($_etype40, $_size37);
+ for ($_i41 = 0; $_i41 < $_size37; ++$_i41)
+ {
+ $elem42 = null;
+ $elem42 = new \Airavata\Model\Workspace\Project();
+ $xfer += $elem42->read($input);
+ $this->success []= $elem42;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectNameWithPagination_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter43)
+ {
+ $xfer += $iter43->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectDesc_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $description = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'description',
+ 'type' => TType::STRING,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['description'])) {
+ $this->description = $vals['description'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectDesc_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->description);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDesc_args');
+ if ($this->gatewayId !== null) {
+ $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 1);
+ $xfer += $output->writeString($this->gatewayId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->userName !== null) {
+ $xfer += $output->writeFieldBegin('userName', TType::STRING, 2);
+ $xfer += $output->writeString($this->userName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->description !== null) {
+ $xfer += $output->writeFieldBegin('description', TType::STRING, 3);
+ $xfer += $output->writeString($this->description);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectDesc_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Project',
+ ),
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectDesc_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size44 = 0;
+ $_etype47 = 0;
+ $xfer += $input->readListBegin($_etype47, $_size44);
+ for ($_i48 = 0; $_i48 < $_size44; ++$_i48)
+ {
+ $elem49 = null;
+ $elem49 = new \Airavata\Model\Workspace\Project();
+ $xfer += $elem49->read($input);
+ $this->success []= $elem49;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDesc_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter50)
+ {
+ $xfer += $iter50->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectDescWithPagination_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $description = null;
+ public $limit = null;
+ public $offset = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'description',
+ 'type' => TType::STRING,
+ ),
+ 4 => array(
+ 'var' => 'limit',
+ 'type' => TType::I32,
+ ),
+ 5 => array(
+ 'var' => 'offset',
+ 'type' => TType::I32,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['description'])) {
+ $this->description = $vals['description'];
+ }
+ if (isset($vals['limit'])) {
+ $this->limit = $vals['limit'];
+ }
+ if (isset($vals['offset'])) {
+ $this->offset = $vals['offset'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectDescWithPagination_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->description);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->limit);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 5:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->offset);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDescWithPagination_args');
+ if ($this->gatewayId !== null) {
+ $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 1);
+ $xfer += $output->writeString($this->gatewayId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->userName !== null) {
+ $xfer += $output->writeFieldBegin('userName', TType::STRING, 2);
+ $xfer += $output->writeString($this->userName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->description !== null) {
+ $xfer += $output->writeFieldBegin('description', TType::STRING, 3);
+ $xfer += $output->writeString($this->description);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->limit !== null) {
+ $xfer += $output->writeFieldBegin('limit', TType::I32, 4);
+ $xfer += $output->writeI32($this->limit);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->offset !== null) {
+ $xfer += $output->writeFieldBegin('offset', TType::I32, 5);
+ $xfer += $output->writeI32($this->offset);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchProjectsByProjectDescWithPagination_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Project',
+ ),
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchProjectsByProjectDescWithPagination_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size51 = 0;
+ $_etype54 = 0;
+ $xfer += $input->readListBegin($_etype54, $_size51);
+ for ($_i55 = 0; $_i55 < $_size51; ++$_i55)
+ {
+ $elem56 = null;
+ $elem56 = new \Airavata\Model\Workspace\Project();
+ $xfer += $elem56->read($input);
+ $this->success []= $elem56;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDescWithPagination_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter57)
+ {
+ $xfer += $iter57->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchExperimentsByName_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $expName = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'expName',
+ 'type' => TType::STRING,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['expName'])) {
+ $this->expName = $vals['expName'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchExperimentsByName_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->expName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchExperimentsByName_args');
+ if ($this->gatewayId !== null) {
+ $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 1);
+ $xfer += $output->writeString($this->gatewayId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->userName !== null) {
+ $xfer += $output->writeFieldBegin('userName', TType::STRING, 2);
+ $xfer += $output->writeString($this->userName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->expName !== null) {
+ $xfer += $output->writeFieldBegin('expName', TType::STRING, 3);
+ $xfer += $output->writeString($this->expName);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchExperimentsByName_result {
+ static $_TSPEC;
+
+ public $success = null;
+ public $ire = null;
+ public $ace = null;
+ public $ase = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
+ ),
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 3 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchExperimentsByName_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::LST) {
+ $this->success = array();
+ $_size58 = 0;
+ $_etype61 = 0;
+ $xfer += $input->readListBegin($_etype61, $_size58);
+ for ($_i62 = 0; $_i62 < $_size58; ++$_i62)
+ {
+ $elem63 = null;
+ $elem63 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+ $xfer += $elem63->read($input);
+ $this->success []= $elem63;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_searchExperimentsByName_result');
+ if ($this->success !== null) {
+ if (!is_array($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->success));
+ {
+ foreach ($this->success as $iter64)
+ {
+ $xfer += $iter64->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_searchExperimentsByNameWithPagination_args {
+ static $_TSPEC;
+
+ public $gatewayId = null;
+ public $userName = null;
+ public $expName = null;
+ public $limit = null;
+ public $offset = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'gatewayId',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'userName',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'expName',
+ 'type' => TType::STRING,
+ ),
+ 4 => array(
+ 'var' => 'limit',
+ 'type' => TType::I32,
+ ),
+ 5 => array(
+ 'var' => 'offset',
+ 'type' => TType::I32,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['gatewayId'])) {
+ $this->gatewayId = $vals['gatewayId'];
+ }
+ if (isset($vals['userName'])) {
+ $this->userName = $vals['userName'];
+ }
+ if (isset($vals['expName'])) {
+ $this->expName = $vals['expName'];
+ }
+ if (isset($vals['limit'])) {
+ $this->limit = $vals['limit'];
+ }
+ if (isset($vals['offset'])) {
+ $this->offset = $vals['offset'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_searchExperimentsByNameWithPagination_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->gatewayId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->userName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->expName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->limit);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 5:
+ if ($
<TRUNCATED>