You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by he...@apache.org on 2013/03/06 16:47:22 UTC
svn commit: r1453392 - in
/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider:
impl/EC2Provider.java utils/DataIDType.java utils/FileTransferService.java
utils/SSHClient.java utils/SshFileTransferService.java
Author: heshan
Date: Wed Mar 6 15:47:22 2013
New Revision: 1453392
URL: http://svn.apache.org/r1453392
Log:
Fixing build failures due to removal of gfac.core package.
Modified:
airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/impl/EC2Provider.java
airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/DataIDType.java
airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/FileTransferService.java
airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SSHClient.java
airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SshFileTransferService.java
Modified: airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/impl/EC2Provider.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/impl/EC2Provider.java?rev=1453392&r1=1453391&r2=1453392&view=diff
==============================================================================
--- airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/impl/EC2Provider.java (original)
+++ airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/impl/EC2Provider.java Wed Mar 6 15:47:22 2013
@@ -27,22 +27,12 @@ import com.amazonaws.auth.AWSCredentials
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.ec2.AmazonEC2Client;
import com.amazonaws.services.ec2.model.*;
-import org.apache.airavata.core.gfac.context.invocation.ExecutionContext;
-import org.apache.airavata.core.gfac.context.invocation.InvocationContext;
-import org.apache.airavata.core.gfac.context.security.impl.SSHSecurityContextImpl;
-import org.apache.airavata.core.gfac.exception.GfacException;
-import org.apache.airavata.core.gfac.exception.ProviderException;
import org.apache.airavata.gfac.context.AmazonSecurityContext;
import org.apache.airavata.gfac.context.JobExecutionContext;
import org.apache.airavata.gfac.provider.GFacProvider;
import org.apache.airavata.gfac.provider.GFacProviderException;
-import org.apache.airavata.schemas.wec.ContextHeaderDocument;
-import org.apache.airavata.schemas.wec.SecurityContextDocument;
-import org.apache.axiom.om.OMElement;
-import org.apache.xmlbeans.XmlException;
import org.bouncycastle.openssl.PEMWriter;
-import javax.xml.stream.XMLStreamException;
import java.io.*;
import java.security.KeyPairGenerator;
import java.security.NoSuchAlgorithmException;
@@ -130,14 +120,14 @@ public class EC2Provider extends SSHProv
DescribeInstancesResult describeInstancesResult = ec2client.describeInstances(describeInstancesRequest.withInstanceIds(ins_id));
if (describeInstancesResult.getReservations().size() == 0 || describeInstancesResult.getReservations().get(0).getInstances().size() == 0) {
- throw new GfacException("Instance not found:" + ins_id);
+ throw new GFacProviderException("Instance not found:" + ins_id);
}
this.instance = describeInstancesResult.getReservations().get(0).getInstances().get(0);
// check instance keypair
if (this.instance.getKeyName() == null || !this.instance.getKeyName().equals(KEY_PAIR_NAME))
- throw new GfacException("Keypair for instance:" + ins_id + " is not valid");
+ throw new GFacProviderException("Keypair for instance:" + ins_id + " is not valid");
}
//TODO send out instance id
@@ -198,10 +188,6 @@ public class EC2Provider extends SSHProv
//To change body of implemented methods use File | Settings | File Templates.
}
- public EC2Provider(InvocationContext invocationContext) throws ProviderException {
-
- }
-
private List<Instance> startInstances(AmazonEC2Client ec2, String AMI_ID, String INS_TYPE, JobExecutionContext jobExecutionContext) throws AmazonServiceException {
// start only 1 instance
RunInstancesRequest request = new RunInstancesRequest(AMI_ID, 1, 1);
Modified: airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/DataIDType.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/DataIDType.java?rev=1453392&r1=1453391&r2=1453392&view=diff
==============================================================================
--- airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/DataIDType.java (original)
+++ airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/DataIDType.java Wed Mar 6 15:47:22 2013
@@ -1,6 +1,6 @@
package org.apache.airavata.gfac.provider.utils;
-import org.apache.airavata.core.gfac.exception.GfacException;
+import org.apache.airavata.gfac.provider.GFacProviderException;
import org.xmlpull.v1.builder.XmlElement;
import java.net.URI;
@@ -26,13 +26,13 @@ public class DataIDType {
}
}
- public DataIDType(XmlElement ele) throws GfacException {
+ public DataIDType(XmlElement ele) throws GFacProviderException {
try {
String value = ele.requiredTextContent();
if (value != null) {
this.dataID = new URI(value);
} else {
- throw new GfacException(
+ throw new GFacProviderException(
"Illegal InputMessage, No value content found for the parameter "
+ ele.getName() + "/value. Invalid Local Argument");
}
@@ -41,7 +41,7 @@ public class DataIDType {
addDataLocation(new URI(location));
}
} catch (URISyntaxException e) {
- throw new GfacException("Invalid Local Argument", e);
+ throw new GFacProviderException("Invalid Local Argument", e);
}
}
Modified: airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/FileTransferService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/FileTransferService.java?rev=1453392&r1=1453391&r2=1453392&view=diff
==============================================================================
--- airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/FileTransferService.java (original)
+++ airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/FileTransferService.java Wed Mar 6 15:47:22 2013
@@ -1,6 +1,6 @@
package org.apache.airavata.gfac.provider.utils;
-import org.apache.airavata.core.gfac.exception.GfacException;
+import org.apache.airavata.gfac.provider.GFacProviderException;
import org.ietf.jgss.GSSCredential;
import java.io.File;
@@ -8,28 +8,28 @@ import java.net.URI;
import java.util.Vector;
public interface FileTransferService {
- public URI copy(URI src, URI dest, GSSCredential gssCred) throws GfacException;
+ public URI copy(URI src, URI dest, GSSCredential gssCred) throws GFacProviderException;
- public URI forcedCopy(URI src, URI dest, GSSCredential gssCred) throws GfacException;
+ public URI forcedCopy(URI src, URI dest, GSSCredential gssCred) throws GFacProviderException;
- public URI copyToDir(URI src, URI destDir, GSSCredential gssCred) throws GfacException;
+ public URI copyToDir(URI src, URI destDir, GSSCredential gssCred) throws GFacProviderException;
- public void makeDir(URI destURI, GSSCredential gssCred) throws GfacException;
+ public void makeDir(URI destURI, GSSCredential gssCred) throws GFacProviderException;
- public Vector<URI> listDir(URI srcURI, GSSCredential gssCred) throws GfacException;
+ public Vector<URI> listDir(URI srcURI, GSSCredential gssCred) throws GFacProviderException;
public String readRemoteFile(URI destURI, GSSCredential gsCredential,
- File localFile) throws GfacException;
+ File localFile) throws GFacProviderException;
- public boolean isExisits(URI uri, GSSCredential gssCred) throws GfacException;
+ public boolean isExisits(URI uri, GSSCredential gssCred) throws GFacProviderException;
public URI copyWithDataID(DataIDType src, URI destURL, GSSCredential gssCred)
- throws GfacException;
+ throws GFacProviderException;
- public DataIDType store(URI src) throws GfacException;
+ public DataIDType store(URI src) throws GFacProviderException;
- public ContactInfo findContact(URI uri) throws GfacException;
+ public ContactInfo findContact(URI uri) throws GFacProviderException;
- public URI[] copyToDir(URI[] srcList, URI destDir, GSSCredential gssCred) throws GfacException;
+ public URI[] copyToDir(URI[] srcList, URI destDir, GSSCredential gssCred) throws GFacProviderException;
}
Modified: airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SSHClient.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SSHClient.java?rev=1453392&r1=1453391&r2=1453392&view=diff
==============================================================================
--- airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SSHClient.java (original)
+++ airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SSHClient.java Wed Mar 6 15:47:22 2013
@@ -13,7 +13,7 @@ import com.sshtools.j2ssh.transport.publ
import com.sshtools.j2ssh.transport.publickey.SshPrivateKey;
import com.sshtools.j2ssh.transport.publickey.SshPrivateKeyFile;
import com.sshtools.j2ssh.util.InvalidStateException;
-import org.apache.airavata.core.gfac.exception.GfacException;
+import org.apache.airavata.gfac.provider.GFacProviderException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -71,11 +71,11 @@ public class SSHClient {
* @param keyFileName
* @param knownHostsFileName
* @return
- * @throws GfacException
+ * @throws GFacProviderException
*/
public static SshClient loginToServer(String username, String hostname, String password,
- String keyFileName, String knownHostsFileName) throws GfacException {
+ String keyFileName, String knownHostsFileName) throws GFacProviderException {
try {
log.info("SSH host:" + hostname);
@@ -104,7 +104,7 @@ public class SSHClient {
String passphrase = null;
if (file.isPassphraseProtected()) {
if (password == null) {
- throw new GfacException(
+ throw new GFacProviderException(
"Key file is encrypted, but password has not found in configuration. Invalid Config.");
}
passphrase = password;
@@ -119,18 +119,18 @@ public class SSHClient {
// System.out.println("authenication completed");
return ssh;
} else if (result == AuthenticationProtocolState.PARTIAL) {
- throw new GfacException("Further authentication requried!. Invalid Config.");
+ throw new GFacProviderException("Further authentication requried!. Invalid Config.");
} else if (result == AuthenticationProtocolState.FAILED) {
- throw new GfacException("Authentication failed!. Invalid Config.");
+ throw new GFacProviderException("Authentication failed!. Invalid Config.");
} else {
- throw new GfacException("Authentication failed!, Unknown state. Invalid Config.");
+ throw new GFacProviderException("Authentication failed!, Unknown state. Invalid Config.");
}
} catch (InvalidSshKeyException e) {
- throw new GfacException("Invalid Config!", e);
+ throw new GFacProviderException("Invalid Config!", e);
} catch (InvalidStateException e) {
- throw new GfacException("Invalid Config!", e);
+ throw new GFacProviderException("Invalid Config!", e);
} catch (IOException e) {
- throw new GfacException("Invalid Config!", e);
+ throw new GFacProviderException("Invalid Config!", e);
}
}
Modified: airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SshFileTransferService.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SshFileTransferService.java?rev=1453392&r1=1453391&r2=1453392&view=diff
==============================================================================
--- airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SshFileTransferService.java (original)
+++ airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/gfac/provider/utils/SshFileTransferService.java Wed Mar 6 15:47:22 2013
@@ -3,19 +3,13 @@ package org.apache.airavata.gfac.provide
import com.sshtools.j2ssh.SftpClient;
import com.sshtools.j2ssh.SshClient;
import com.sshtools.j2ssh.sftp.SftpFile;
-import org.apache.airavata.core.gfac.context.invocation.ExecutionContext;
-import org.apache.airavata.core.gfac.context.invocation.InvocationContext;
-import org.apache.airavata.core.gfac.exception.GfacException;
-import org.apache.airavata.core.gfac.utils.GfacUtils;
-import org.apache.airavata.schemas.wec.ContextHeaderDocument;
-import org.apache.airavata.schemas.wec.SecurityContextDocument;
-import org.apache.axiom.om.OMElement;
-import org.apache.xmlbeans.XmlException;
+import org.apache.airavata.gfac.context.JobExecutionContext;
+import org.apache.airavata.gfac.provider.GFacProviderException;
+import org.apache.airavata.gfac.utils.GFacUtils;
import org.ietf.jgss.GSSCredential;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.xml.stream.XMLStreamException;
import java.io.*;
import java.net.URI;
import java.net.URISyntaxException;
@@ -24,14 +18,14 @@ import java.util.Random;
import java.util.Vector;
/**
- * This class provides SSH based remote file operations. It needs ssh keys to be
- * setup to autenticate with remote host. It uses
- * SSH_USERNAME,SSH_PASSWD,SSH_KEYFILE,SSH_KNOWN_HOSTFILE from gfac options.
- * However if they does not present it uses ${user.name}, and
- * ${user.home}/.ssh/id_rsa as default. If you have setup ssh keys and they do
- * not need a password, then you do not need to do any configuration at all.
- *
- */
+* This class provides SSH based remote file operations. It needs ssh keys to be
+* setup to autenticate with remote host. It uses
+* SSH_USERNAME,SSH_PASSWD,SSH_KEYFILE,SSH_KNOWN_HOSTFILE from gfac options.
+* However if they does not present it uses ${user.name}, and
+* ${user.home}/.ssh/id_rsa as default. If you have setup ssh keys and they do
+* not need a password, then you do not need to do any configuration at all.
+*
+*/
public class SshFileTransferService implements FileTransferService {
public static final Logger log = LoggerFactory.getLogger(SshFileTransferService.class);
private String username;
@@ -42,25 +36,25 @@ public class SshFileTransferService impl
private String knownHostsFileName;
- private ExecutionContext executionContext;
+// private ExecutionContext executionContext;
private static final String SSH_SECURITY_CONTEXT = "ssh";
- public SshFileTransferService(InvocationContext invocationContext) {
+ public SshFileTransferService(JobExecutionContext invocationContext) {
// --------------------- testing --------------------------------------------
- ExecutionContext execContext = invocationContext.getExecutionContext();
- OMElement omSecurityContextHeader = execContext.getSecurityContextHeader();
-
- ContextHeaderDocument document = null;
- try {
- document = ContextHeaderDocument.Factory.parse(omSecurityContextHeader.toStringWithConsume());
- } catch (XMLStreamException e) {
- e.printStackTrace();
- } catch (XmlException e) {
- e.printStackTrace();
- }
- SecurityContextDocument.SecurityContext.AmazonWebservices amazonWebservices =
- document.getContextHeader().getSecurityContext().getAmazonWebservices();
+// ExecutionContext execContext = invocationContext.getExecutionContext();
+// OMElement omSecurityContextHeader = execContext.getSecurityContextHeader();
+//
+// ContextHeaderDocument document = null;
+// try {
+// document = ContextHeaderDocument.Factory.parse(omSecurityContextHeader.toStringWithConsume());
+// } catch (XMLStreamException e) {
+// e.printStackTrace();
+// } catch (XmlException e) {
+// e.printStackTrace();
+// }
+// SecurityContextDocument.SecurityContext.AmazonWebservices amazonWebservices =
+// document.getContextHeader().getSecurityContext().getAmazonWebservices();
// TODO
/*
@@ -84,7 +78,7 @@ public class SshFileTransferService impl
}*/
}
- public SshFileTransferService(InvocationContext invocationContext, String username, String keyFileName) {
+ public SshFileTransferService(JobExecutionContext invocationContext, String username, String keyFileName) {
this(invocationContext);
this.username = username;
this.password = null;
@@ -92,11 +86,11 @@ public class SshFileTransferService impl
this.knownHostsFileName = null;
}
- public URI forcedCopy(URI src, URI dest, GSSCredential gssCred) throws GfacException {
+ public URI forcedCopy(URI src, URI dest, GSSCredential gssCred) throws GFacProviderException {
return copy(src, dest, gssCred);
}
- public URI copy(URI src, URI dest, GSSCredential gssCred) throws GfacException {
+ public URI copy(URI src, URI dest, GSSCredential gssCred) throws GFacProviderException {
log.info("Copying " + src + "->" + dest);
SshClient sshClient = null;
SshClient sshClient2 = null;
@@ -106,7 +100,7 @@ public class SshFileTransferService impl
String desthost = dest.getHost();
String destfile = dest.getPath();
- if (GfacUtils.isLocalHost(srchost) && GfacUtils.isLocalHost(desthost)) {
+ if (GFacUtils.isLocalHost(srchost) && GFacUtils.isLocalHost(desthost)) {
FileInputStream in = new FileInputStream(srcfile);
FileOutputStream out = new FileOutputStream(destfile);
byte[] buf = new byte[1024];
@@ -116,12 +110,12 @@ public class SshFileTransferService impl
}
out.close();
in.close();
- } else if (GfacUtils.isLocalHost(srchost)) {
+ } else if (GFacUtils.isLocalHost(srchost)) {
sshClient = SSHClient.loginToServer(username, desthost, password, keyFileName,
knownHostsFileName);
SftpClient sftpClient = sshClient.openSftpClient();
sftpClient.put(srcfile, destfile);
- } else if (GfacUtils.isLocalHost(desthost)) {
+ } else if (GFacUtils.isLocalHost(desthost)) {
sshClient = SSHClient.loginToServer(username, srchost, password, keyFileName,
knownHostsFileName);
SftpClient sftpClient = sshClient.openSftpClient();
@@ -159,24 +153,24 @@ public class SshFileTransferService impl
return dest;
}
- public URI copyToDir(URI src, URI destDir, GSSCredential gssCred) throws GfacException {
+ public URI copyToDir(URI src, URI destDir, GSSCredential gssCred) throws GFacProviderException {
try {
URI destFile = new URI(destDir.toString() + "/" + new File(src.getPath()).getName());
return copy(src, destFile, gssCred);
} catch (URISyntaxException e) {
// TODO
-// throw new GfacException(e,FaultCode.InvaliedLocalArgumnet);
+// throw new GFacProviderException(e,FaultCode.InvaliedLocalArgumnet);
}
// TODO : Remove
return null;
}
public URI copyWithDataID(DataIDType src, URI destURL, GSSCredential gssCred)
- throws GfacException {
+ throws GFacProviderException {
throw new UnsupportedOperationException();
}
- public boolean isExisits(URI srcURI, GSSCredential gssCred) throws GfacException {
+ public boolean isExisits(URI srcURI, GSSCredential gssCred) throws GFacProviderException {
String desthost = srcURI.getHost();
String destfile = srcURI.getPath();
@@ -208,7 +202,7 @@ public class SshFileTransferService impl
return false;
}
- public Vector<URI> listDir(URI srcURI, GSSCredential gssCred) throws GfacException {
+ public Vector<URI> listDir(URI srcURI, GSSCredential gssCred) throws GFacProviderException {
String desthost = srcURI.getHost();
String destfile = srcURI.getPath();
SshClient sshClient = SSHClient.loginToServer(username, desthost, password, keyFileName,
@@ -232,7 +226,7 @@ public class SshFileTransferService impl
// throw new FileSystemFault(e,FileTransferServiceType.SSH,"listDir",srcURI.toString());
} catch (URISyntaxException e) {
// TODO
- // throw new GfacException(e,FaultCode.InvaliedLocalArgumnet);
+ // throw new GFacProviderException(e,FaultCode.InvaliedLocalArgumnet);
} finally {
if (sshClient != null) {
sshClient.disconnect();
@@ -242,7 +236,7 @@ public class SshFileTransferService impl
return null;
}
- public void makeDir(URI destURI, GSSCredential gssCred) throws GfacException {
+ public void makeDir(URI destURI, GSSCredential gssCred) throws GFacProviderException {
String desthost = destURI.getHost();
String destfile = destURI.getPath();
log.info("SFTP to Host:" + desthost);
@@ -264,7 +258,7 @@ public class SshFileTransferService impl
}
public String readRemoteFile(URI destURI, GSSCredential gsCredential,
- File localFile) throws GfacException {
+ File localFile) throws GFacProviderException {
SshClient sshClient1 = null;
SftpClient sftpClient1 = null;
String fileAsStr = null;
@@ -300,15 +294,15 @@ public class SshFileTransferService impl
return fileAsStr;
}
- public DataIDType store(URI src) throws GfacException {
+ public DataIDType store(URI src) throws GFacProviderException {
throw new UnsupportedOperationException();
}
- public ContactInfo findContact(URI uri) throws GfacException {
+ public ContactInfo findContact(URI uri) throws GFacProviderException {
return new ContactInfo(uri.getHost(),uri.getPort());
}
- public URI[] copyToDir(URI[] srcList, URI destURL, GSSCredential gssCred) throws GfacException {
+ public URI[] copyToDir(URI[] srcList, URI destURL, GSSCredential gssCred) throws GFacProviderException {
URI[] destFiles = new URI[srcList.length];
for (int i = 0; i < srcList.length; i++) {
destFiles[i] = copy(srcList[i], destURL, gssCred);