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/05/25 08:50:05 UTC

git commit: handling the scenario which the host descriptor does not exist

Repository: airavata
Updated Branches:
  refs/heads/master 353b73624 -> d8ef967f2


handling the scenario which the host descriptor does not exist


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

Branch: refs/heads/master
Commit: d8ef967f28c998ac9f68b53d6f331380272c368a
Parents: 353b736
Author: Saminda Wijeratne <sa...@gmail.com>
Authored: Sat May 24 23:49:55 2014 -0700
Committer: Saminda Wijeratne <sa...@gmail.com>
Committed: Sat May 24 23:49:55 2014 -0700

----------------------------------------------------------------------
 .../handler/ApplicationCatalogHandler.java      | 47 ++++++++++++--------
 1 file changed, 28 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/d8ef967f/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/ApplicationCatalogHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/ApplicationCatalogHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/ApplicationCatalogHandler.java
index 9da3ed2..85357de 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/ApplicationCatalogHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/ApplicationCatalogHandler.java
@@ -155,26 +155,35 @@ public class ApplicationCatalogHandler implements Iface {
 			String computeResourceId) throws InvalidRequestException,
 			AiravataClientException, AiravataSystemException, TException {
 		try {
-			HostDescription hostDescriptor = getRegistry().getHostDescriptor(computeResourceId);
-			ComputeResourceDescription d = new ComputeResourceDescription();
-			d.setIsEmpty(false);
-			d.setResourceId(computeResourceId);
-			d.setHostName(hostDescriptor.getType().getHostName());
-			d.addToHostAliases(hostDescriptor.getType().getHostName());
-			if (hostDescriptor.getType().getHostAddress()!=null) {
-				d.addToIpAddresses(hostDescriptor.getType().getHostAddress());
-			}
-			d.setJobSubmissionProtocols(new HashMap<String, JobSubmissionProtocol>());
-			d.setDataMovementProtocols(new HashMap<String, DataMovementProtocol>());
-			if (hostDescriptor.getType() instanceof SSHHostType){
-				d.getJobSubmissionProtocols().put(computeResourceId, JobSubmissionProtocol.SSH);
-			} else if (hostDescriptor.getType() instanceof GsisshHostType){
-				d.getJobSubmissionProtocols().put(computeResourceId, JobSubmissionProtocol.GSISSH);
-			} else if (hostDescriptor.getType() instanceof GlobusHostType){
-				d.getJobSubmissionProtocols().put(computeResourceId, JobSubmissionProtocol.GRAM);
-				d.getDataMovementProtocols().put(computeResourceId, DataMovementProtocol.GridFTP);
+			if (getRegistry().isHostDescriptorExists(computeResourceId)) {
+				HostDescription hostDescriptor = getRegistry().getHostDescriptor(computeResourceId);
+				ComputeResourceDescription d = new ComputeResourceDescription();
+				d.setIsEmpty(false);
+				d.setResourceId(computeResourceId);
+				d.setHostName(hostDescriptor.getType().getHostName());
+				d.addToHostAliases(hostDescriptor.getType().getHostName());
+				if (hostDescriptor.getType().getHostAddress() != null) {
+					d.addToIpAddresses(hostDescriptor.getType()
+							.getHostAddress());
+				}
+				d.setJobSubmissionProtocols(new HashMap<String, JobSubmissionProtocol>());
+				d.setDataMovementProtocols(new HashMap<String, DataMovementProtocol>());
+				if (hostDescriptor.getType() instanceof SSHHostType) {
+					d.getJobSubmissionProtocols().put(computeResourceId,
+							JobSubmissionProtocol.SSH);
+				} else if (hostDescriptor.getType() instanceof GsisshHostType) {
+					d.getJobSubmissionProtocols().put(computeResourceId,
+							JobSubmissionProtocol.GSISSH);
+				} else if (hostDescriptor.getType() instanceof GlobusHostType) {
+					d.getJobSubmissionProtocols().put(computeResourceId,
+							JobSubmissionProtocol.GRAM);
+					d.getDataMovementProtocols().put(computeResourceId,
+							DataMovementProtocol.GridFTP);
+				}
+				return d;
+			} else {
+				throw new Exception("Compute Resource Descriptor not found "+computeResourceId+"!!!");
 			}
-			return d;
 		} catch (Exception e) {
 			e.printStackTrace();
 			throw new AiravataSystemException();