You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2014/05/22 17:06:19 UTC
[5/5] git commit: fixing AIRAVATA-1257, AIRAVATA-1258
fixing AIRAVATA-1257, AIRAVATA-1258
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/a3658305
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/a3658305
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/a3658305
Branch: refs/heads/master
Commit: a3658305082874a1e82a79fdbcfddecb5e1488cd
Parents: b9b8c25
Author: Chathuri Wimalasena <ka...@gmail.com>
Authored: Thu May 22 11:06:10 2014 -0400
Committer: Chathuri Wimalasena <ka...@gmail.com>
Committed: Thu May 22 11:06:10 2014 -0400
----------------------------------------------------------------------
.../server/handler/AiravataServerHandler.java | 76 +
.../java/org/apache/airavata/api/Airavata.java | 3354 ++++++++++++++++--
.../src/main/resources/lib/Airavata.cpp | 964 ++++-
.../src/main/resources/lib/Airavata.h | 318 ++
.../resources/lib/Airavata_server.skeleton.cpp | 10 +
.../resources/lib/experimentModel_types.cpp | 189 +
.../main/resources/lib/experimentModel_types.h | 107 +
.../resources/lib/Airavata/API/Airavata.php | 912 ++++-
.../Model/Workspace/Experiment/Types.php | 245 ++
.../client/samples/CreateLaunchExperiment.java | 69 +-
.../workspace/experiment/ExperimentSummary.java | 1147 ++++++
.../airavataAPI.thrift | 20 +-
.../experimentModel.thrift | 11 +
.../registry/jpa/impl/ExperimentRegistry.java | 35 +-
.../registry/jpa/impl/RegistryImpl.java | 6 +
.../registry/jpa/resources/WorkerResource.java | 23 +
.../jpa/utils/ThriftDataModelConversion.java | 24 +
17 files changed, 6942 insertions(+), 568 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/a3658305/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 bf0fed4..d8a8392 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
@@ -255,6 +255,82 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
+ public List<ExperimentSummary> searchExperimentsByName(String userName, String expName) throws InvalidRequestException,
+ AiravataClientException,
+ AiravataSystemException,
+ TException {
+ if (!validateString(userName)){
+ logger.error("Username cannot be empty. Please provide a valid user..");
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Username cannot be empty. Please provide a valid user..");
+ throw exception;
+ }
+ if (!ResourceUtils.isUserExist(userName)){
+ logger.error("User does not exist in the system. Please provide a valid user..");
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("User does not exist in the system. Please provide a valid user..");
+ throw exception;
+ }
+ try {
+ List<ExperimentSummary> summaries = new ArrayList<ExperimentSummary>();
+ registry = RegistryFactory.getDefaultRegistry();
+ Map<String, String> filters = new HashMap<String, String>();
+ filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
+ filters.put(Constants.FieldConstants.ExperimentConstants.EXPERIMENT_NAME, expName);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ for (Object object : results) {
+ summaries.add((ExperimentSummary) object);
+ }
+ return summaries;
+ }catch (Exception e) {
+ logger.error("Error while retrieving experiments", e);
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Error while retrieving experiments. More info : " + e.getMessage());
+ throw exception;
+ }
+ }
+
+ public List<ExperimentSummary> searchExperimentsByDesc(String userName, String description) throws InvalidRequestException,
+ AiravataClientException,
+ AiravataSystemException,
+ TException {
+ if (!validateString(userName)){
+ logger.error("Username cannot be empty. Please provide a valid user..");
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Username cannot be empty. Please provide a valid user..");
+ throw exception;
+ }
+ if (!ResourceUtils.isUserExist(userName)){
+ logger.error("User does not exist in the system. Please provide a valid user..");
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("User does not exist in the system. Please provide a valid user..");
+ throw exception;
+ }
+ try {
+ List<ExperimentSummary> summaries = new ArrayList<ExperimentSummary>();
+ registry = RegistryFactory.getDefaultRegistry();
+ Map<String, String> filters = new HashMap<String, String>();
+ filters.put(Constants.FieldConstants.ExperimentConstants.USER_NAME, userName);
+ filters.put(Constants.FieldConstants.ExperimentConstants.EXPERIMENT_DESC, description);
+ List<Object> results = registry.search(RegistryModelType.EXPERIMENT, filters);
+ for (Object object : results) {
+ summaries.add((ExperimentSummary) object);
+ }
+ return summaries;
+ }catch (Exception e) {
+ logger.error("Error while retrieving experiments", e);
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Error while retrieving experiments. More info : " + e.getMessage());
+ throw exception;
+ }
+ }
+
/**
* Get all Experiments within a Project
*