You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sa...@apache.org on 2014/07/07 17:52:47 UTC

git commit: update to save the resource job manager + update hte api funtion impls

Repository: airavata
Updated Branches:
  refs/heads/master beb7471df -> 2f3ece547


update to save the resource job manager + update hte api funtion impls


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/2f3ece54
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/2f3ece54
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/2f3ece54

Branch: refs/heads/master
Commit: 2f3ece547f15bcabdaac2b841a4d2f3272a7b84f
Parents: beb7471
Author: Saminda Wijeratne <sa...@gmail.com>
Authored: Mon Jul 7 11:52:36 2014 -0400
Committer: Saminda Wijeratne <sa...@gmail.com>
Committed: Mon Jul 7 11:52:36 2014 -0400

----------------------------------------------------------------------
 .../server/handler/AiravataServerHandler.java   | 77 +++++++++++++++++++-
 .../catalog/data/impl/ComputeResourceImpl.java  |  7 +-
 2 files changed, 79 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/2f3ece54/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 9fcd5c2..a979a7f 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
@@ -2116,7 +2116,17 @@ public class AiravataServerHandler implements Airavata.Iface, Watcher {
      */
     @Override
     public ComputeResourcePreference getGatewayComputeResourcePreference(String gatewayID, String computeResourceId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
-        return null;
+    	try {
+            appCatalog = AppCatalogFactory.getAppCatalog();
+            GwyResourceProfile gatewayProfile = appCatalog.getGatewayProfile();
+            return gatewayProfile.getComputeResourcePreference(gatewayID, computeResourceId);
+        } catch (AppCatalogException e) {
+            logger.error("Error while reading gateway compute resource preference...", e);
+            AiravataSystemException exception = new AiravataSystemException();
+            exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+            exception.setMessage("Error while reading gateway compute resource preference. More info : " + e.getMessage());
+            throw exception;
+        }
     }
 
     /**
@@ -2128,7 +2138,17 @@ public class AiravataServerHandler implements Airavata.Iface, Watcher {
      */
     @Override
     public List<ComputeResourcePreference> getAllGatewayComputeResourcePreferences(String gatewayID) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
-        return null;
+    	try {
+            appCatalog = AppCatalogFactory.getAppCatalog();
+            GwyResourceProfile gatewayProfile = appCatalog.getGatewayProfile();
+            return gatewayProfile.getGatewayProfile(gatewayID).getComputeResourcePreferences();
+        } catch (AppCatalogException e) {
+            logger.error("Error while reading gateway compute resource preferences...", e);
+            AiravataSystemException exception = new AiravataSystemException();
+            exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+            exception.setMessage("Error while reading gateway compute resource preferences. More info : " + e.getMessage());
+            throw exception;
+        }
     }
 
     /**
@@ -2142,7 +2162,32 @@ public class AiravataServerHandler implements Airavata.Iface, Watcher {
      */
     @Override
     public boolean updateGatewayComputeResourcePreference(String gatewayID, String computeResourceId, ComputeResourcePreference computeResourcePreference) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
-        return false;
+    	try {
+            appCatalog = AppCatalogFactory.getAppCatalog();
+            GwyResourceProfile gatewayProfile = appCatalog.getGatewayProfile();
+            GatewayResourceProfile profile = gatewayProfile.getGatewayProfile(gatewayID);
+            List<ComputeResourcePreference> computeResourcePreferences = profile.getComputeResourcePreferences();
+            ComputeResourcePreference preferenceToRemove = null;
+            for (ComputeResourcePreference preference : computeResourcePreferences) {
+				if (preference.getComputeResourceId().equals(computeResourceId)){
+					preferenceToRemove=preference;
+					break;
+				}
+			}
+            if (preferenceToRemove!=null) {
+				profile.getComputeResourcePreferences().remove(
+						preferenceToRemove);
+			}
+            profile.getComputeResourcePreferences().add(computeResourcePreference);
+            gatewayProfile.updateGatewayResourceProfile(gatewayID, profile);
+            return true;
+        } catch (AppCatalogException e) {
+            logger.error("Error while reading gateway compute resource preference...", e);
+            AiravataSystemException exception = new AiravataSystemException();
+            exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+            exception.setMessage("Error while updating gateway compute resource preference. More info : " + e.getMessage());
+            throw exception;
+        }
     }
 
     /**
@@ -2155,7 +2200,31 @@ public class AiravataServerHandler implements Airavata.Iface, Watcher {
      */
     @Override
     public boolean deleteGatewayComputeResourcePreference(String gatewayID, String computeResourceId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException {
-        return false;
+    	try {
+            appCatalog = AppCatalogFactory.getAppCatalog();
+            GwyResourceProfile gatewayProfile = appCatalog.getGatewayProfile();
+            GatewayResourceProfile profile = gatewayProfile.getGatewayProfile(gatewayID);
+            List<ComputeResourcePreference> computeResourcePreferences = profile.getComputeResourcePreferences();
+            ComputeResourcePreference preferenceToRemove = null;
+            for (ComputeResourcePreference preference : computeResourcePreferences) {
+				if (preference.getComputeResourceId().equals(computeResourceId)){
+					preferenceToRemove=preference;
+					break;
+				}
+			}
+            if (preferenceToRemove!=null) {
+				profile.getComputeResourcePreferences().remove(
+						preferenceToRemove);
+			}
+            gatewayProfile.updateGatewayResourceProfile(gatewayID, profile);
+            return true;
+        } catch (AppCatalogException e) {
+            logger.error("Error while reading gateway compute resource preference...", e);
+            AiravataSystemException exception = new AiravataSystemException();
+            exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+            exception.setMessage("Error while updating gateway compute resource preference. More info : " + e.getMessage());
+            throw exception;
+        }
     }
 
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/2f3ece54/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
----------------------------------------------------------------------
diff --git a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
index fbcbf4a..d49a7a2 100644
--- a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
+++ b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/impl/ComputeResourceImpl.java
@@ -204,7 +204,10 @@ public class ComputeResourceImpl implements ComputeResource {
         try {
     		addResourceJobManager(sshJobSubmission.getResourceJobManager());
         	sshJobSubmission.setJobSubmissionInterfaceId(AppCatalogUtils.getID("SSH"));
+    		String resourceJobManagerId = addResourceJobManager(sshJobSubmission.getResourceJobManager());
     		SshJobSubmissionResource resource = AppCatalogThriftConversion.getSSHJobSubmission(sshJobSubmission);
+    		resource.setResourceJobManagerId(resourceJobManagerId);
+    		resource.getResourceJobManagerResource().setResourceJobManagerId(resourceJobManagerId);
     		resource.save();
         	return resource.getJobSubmissionInterfaceId();
         }catch (Exception e) {
@@ -631,8 +634,10 @@ public class ComputeResourceImpl implements ComputeResource {
 	public String addLocalJobSubmission(LOCALSubmission localSubmission)
 			throws AppCatalogException {
 		localSubmission.setJobSubmissionInterfaceId(AppCatalogUtils.getID("LOCAL"));
-		addResourceJobManager(localSubmission.getResourceJobManager());
+		String resourceJobManagerId = addResourceJobManager(localSubmission.getResourceJobManager());
 		LocalSubmissionResource localJobSubmission = AppCatalogThriftConversion.getLocalJobSubmission(localSubmission);
+		localJobSubmission.setResourceJobManagerId(resourceJobManagerId);
+		localJobSubmission.getResourceJobManagerResource().setResourceJobManagerId(resourceJobManagerId);
     	localJobSubmission.save();
     	return localJobSubmission.getJobSubmissionInterfaceId();
 	}