Code cleanup
git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@113538 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -65,16 +65,18 @@ import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.maven.MavenConstants;
|
||||
import org.apache.maven.MavenException;
|
||||
import org.apache.maven.deploy.DeployRequest;
|
||||
import org.apache.maven.deploy.DeployTool;
|
||||
import org.apache.maven.project.Project;
|
||||
import org.apache.maven.util.MD5Sum;
|
||||
|
||||
/**
|
||||
*
|
||||
* Default implemenataion of Artifact Deployer interface
|
||||
* Default implemenataion of Artifact Deployer interface.
|
||||
*
|
||||
*
|
||||
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
|
||||
* @version $Id: DefaultArtifactDeployer.java,v 1.8 2003/06/24 22:22:55 michal Exp $
|
||||
* @version $Id: DefaultArtifactDeployer.java,v 1.9 2003/06/25 15:25:19 michal Exp $
|
||||
*/
|
||||
public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
{
|
||||
@@ -87,6 +89,7 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
|
||||
/**
|
||||
* @see ArtifactDeployer#deploy(String, String, Project)
|
||||
*
|
||||
* This is "5 files" version.
|
||||
* It deploys (example):
|
||||
* foo-20030620.124616.jar,
|
||||
@@ -95,7 +98,6 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
* foo-SNAPSHOT.jar.md5
|
||||
* foo-snapshot-version
|
||||
*
|
||||
*
|
||||
*/
|
||||
public void deploy(String artifact, String type, Project project)
|
||||
throws MavenException
|
||||
@@ -108,12 +110,12 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
String repositoryFile =
|
||||
getRepositoryFile(type, project, project.getCurrentVersion());
|
||||
|
||||
String[] inputFilenames =
|
||||
String[] srcFilenames =
|
||||
{ file.getAbsolutePath(), md5File.getAbsolutePath()};
|
||||
|
||||
String[] outputFilenames = { repositoryFile, repositoryFile + ".md5" };
|
||||
String[] destFilenames = { repositoryFile, repositoryFile + ".md5" };
|
||||
|
||||
doDeploy(inputFilenames, outputFilenames, repositoryPath, project);
|
||||
doDeploy(srcFilenames, destFilenames, repositoryPath, project);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -131,24 +133,24 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
String repositoryPath =
|
||||
getRepositoryPath(type, project, MavenConstants.SNAPSHOT_SIGNIFIER);
|
||||
|
||||
String[] inputFilenames = new String[5];
|
||||
inputFilenames[0] = file.getAbsolutePath();
|
||||
inputFilenames[1] = file.getAbsolutePath();
|
||||
inputFilenames[2] = md5File.getAbsolutePath();
|
||||
inputFilenames[3] = md5File.getAbsolutePath();
|
||||
inputFilenames[4] = snapshotVersionFile.getAbsolutePath();
|
||||
String[] srcFilenames = new String[5];
|
||||
srcFilenames[0] = file.getAbsolutePath();
|
||||
srcFilenames[1] = file.getAbsolutePath();
|
||||
srcFilenames[2] = md5File.getAbsolutePath();
|
||||
srcFilenames[3] = md5File.getAbsolutePath();
|
||||
srcFilenames[4] = snapshotVersionFile.getAbsolutePath();
|
||||
|
||||
String out1 =
|
||||
getRepositoryFile(type, project, MavenConstants.SNAPSHOT_SIGNIFIER);
|
||||
String out2 = getRepositoryFile(type, project, snapshotVersion);
|
||||
|
||||
String[] outputFilenames = new String[5];
|
||||
outputFilenames[0] = out1;
|
||||
outputFilenames[1] = out2;
|
||||
outputFilenames[2] = out1 + ".md5";
|
||||
outputFilenames[3] = out2 + ".md5";
|
||||
outputFilenames[4] = project.getArtifactId() + "-snapshot-version";
|
||||
doDeploy(inputFilenames, outputFilenames, repositoryPath, project);
|
||||
String[] destFilenames = new String[5];
|
||||
destFilenames[0] = out1;
|
||||
destFilenames[1] = out2;
|
||||
destFilenames[2] = out1 + ".md5";
|
||||
destFilenames[3] = out2 + ".md5";
|
||||
destFilenames[4] = project.getArtifactId() + "-snapshot-version";
|
||||
doDeploy(srcFilenames, destFilenames, repositoryPath, project);
|
||||
|
||||
};
|
||||
|
||||
@@ -214,7 +216,8 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
{
|
||||
destFile.mkdirs();
|
||||
}
|
||||
destFile = new File(destFile, getRepositoryFile(type, project, version));
|
||||
destFile =
|
||||
new File(destFile, getRepositoryFile(type, project, version));
|
||||
System.out.println(
|
||||
"Copying: from '" + file + "' to: '" + destFile + "'");
|
||||
FileUtils.copyFile(file, destFile);
|
||||
@@ -239,9 +242,9 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
* @param snapshot
|
||||
*/
|
||||
private void doDeploy(
|
||||
String[] inputFilenames,
|
||||
String[] outputFilenames,
|
||||
String outputPath,
|
||||
String[] srcFilenames,
|
||||
String[] destFilenames,
|
||||
String destPath,
|
||||
Project project)
|
||||
throws MavenException
|
||||
{
|
||||
@@ -284,37 +287,40 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
String repo = repoArray[i].trim();
|
||||
System.out.println("Deploying to repo: " + repo);
|
||||
|
||||
for (int j = 0; j < inputFilenames.length; j++)
|
||||
for (int j = 0; j < srcFilenames.length; j++)
|
||||
{
|
||||
|
||||
MavenDeployRequest deployRequest =
|
||||
new MavenDeployRequest(
|
||||
repo,
|
||||
project,
|
||||
repo,
|
||||
inputFilenames[j],
|
||||
outputPath,
|
||||
outputFilenames[j]);
|
||||
|
||||
DeployRequest request = null;
|
||||
try
|
||||
{
|
||||
request =
|
||||
DeployRequestBuilder.getDeployRequest(
|
||||
repo,
|
||||
project,
|
||||
repo,
|
||||
srcFilenames[j],
|
||||
destPath,
|
||||
destFilenames[j]);
|
||||
|
||||
System.out.println(
|
||||
"Deploying: '"
|
||||
+ outputFilenames[j]
|
||||
+ destFilenames[j]
|
||||
+ "' to host: '"
|
||||
+ deployRequest.getHost()
|
||||
+ request.getHost()
|
||||
+ "' remote path: '"
|
||||
+ deployRequest.getOutputDir()
|
||||
+ request.getDestDir()
|
||||
+ "' remote file: '"
|
||||
+ deployRequest.getOutputFile());
|
||||
deployTool.performUpload(deployRequest);
|
||||
+ request.getDestFile());
|
||||
deployTool.performUpload(request);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
throw new MavenException(
|
||||
"Cannot deploy. Reason:" + e.getMessage(),
|
||||
e);
|
||||
String msg =
|
||||
"Cannot deploy to: "
|
||||
+ request.getRepositoryAlias()
|
||||
+ ". Reason:"
|
||||
+ e.getMessage();
|
||||
throw new MavenException(msg, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -374,20 +380,6 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @todo Dirty hack util Repository Layout Service is used
|
||||
* @return
|
||||
*/
|
||||
private String extensionForType(String type)
|
||||
{
|
||||
if (type.equals("ejb"))
|
||||
{
|
||||
return "jar";
|
||||
}
|
||||
return type;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param artifact
|
||||
@@ -480,7 +472,20 @@ public class DefaultArtifactDeployer implements ArtifactDeployer
|
||||
|
||||
}
|
||||
return md5ChecksumFile;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @todo Dirty hack util Repository Layout Service is used
|
||||
* @return
|
||||
*/
|
||||
private String extensionForType(String type)
|
||||
{
|
||||
if (type.equals("ejb"))
|
||||
{
|
||||
return "jar";
|
||||
}
|
||||
return type;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -63,10 +63,11 @@ import org.apache.maven.project.Project;
|
||||
|
||||
/**
|
||||
*
|
||||
* The Bean which serves as Proxy for Jelly scripts To Artifact Deployement API
|
||||
* The Bean which provides access to Artifact Deployement API
|
||||
* for jelly scripts.
|
||||
*
|
||||
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
|
||||
* @version $Id: DeployBean.java,v 1.1 2003/06/16 14:26:01 michal Exp $
|
||||
* @version $Id: DeployBean.java,v 1.2 2003/06/25 15:25:19 michal Exp $
|
||||
*/
|
||||
public class DeployBean
|
||||
{
|
||||
|
||||
@@ -57,38 +57,39 @@ package org.apache.maven.artifact.deployer;
|
||||
*/
|
||||
|
||||
import org.apache.maven.deploy.DeployRequest;
|
||||
import org.apache.maven.deploy.exceptions.DeployException;
|
||||
import org.apache.maven.project.Project;
|
||||
|
||||
/**
|
||||
*
|
||||
* The Bean which serves as Proxy for Jelly scripts To Artifact Deployement API
|
||||
* Perform mapping between project's properties and attributes of DeployRequest class.
|
||||
*
|
||||
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
|
||||
* @version $Id: MavenDeployRequest.java,v 1.6 2003/06/25 12:33:11 michal Exp $
|
||||
* @version $Id: DeployRequestBuilder.java,v 1.1 2003/06/25 15:25:19 michal Exp $
|
||||
*/
|
||||
public class MavenDeployRequest extends DeployRequest
|
||||
public class DeployRequestBuilder
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
* @param project
|
||||
* @param repository This is alias name of the repository
|
||||
* like </i>repo1</i> taken from <i>maven.deploy.repos= repo1, repo2</i>
|
||||
* @param inputDir
|
||||
* @param outputDir
|
||||
* @param outputFile
|
||||
* @param repository Alias(name) of the repository
|
||||
* like </i>repo1</i> taken from propertt: <i>maven.deploy.repos= repo1, repo2</i>
|
||||
* @param srcDir
|
||||
* @param srcDir
|
||||
* @param destFile
|
||||
*/
|
||||
public MavenDeployRequest(
|
||||
public static DeployRequest getDeployRequest(
|
||||
String repositoryAlias,
|
||||
Project project,
|
||||
String repository,
|
||||
String inputFile,
|
||||
String outputDir,
|
||||
String outputFile)
|
||||
String srcFile,
|
||||
String destDir,
|
||||
String destFile) throws DeployException
|
||||
{
|
||||
super();
|
||||
|
||||
setRepositoryAlias(repositoryAlias);
|
||||
DeployRequest request = new DeployRequest();
|
||||
request.setRepositoryAlias(repositoryAlias);
|
||||
String url =
|
||||
(String) project.getContext().getVariable(
|
||||
"maven.repo." + repository);
|
||||
@@ -135,47 +136,48 @@ public class MavenDeployRequest extends DeployRequest
|
||||
(String) project.getContext().getVariable(
|
||||
"maven." + repository + ".proxy.port");
|
||||
|
||||
setUser(username);
|
||||
setPass(password);
|
||||
setPassphrase(passphrase);
|
||||
setPrivateKey(privateKey);
|
||||
setGroup(remoteGroup);
|
||||
setUrl(url);
|
||||
setProxyHost(proxyHost);
|
||||
setProxyUser(proxyUser);
|
||||
setProxyPass(proxyPassword);
|
||||
request.setUser(username);
|
||||
request.setPassword(password);
|
||||
request.setPassphrase(passphrase);
|
||||
request.setPrivateKey(privateKey);
|
||||
request.setGroup(remoteGroup);
|
||||
request.setUrl(url);
|
||||
request.setProxyHost(proxyHost);
|
||||
request.setProxyUser(proxyUser);
|
||||
request.setProxyPass(proxyPassword);
|
||||
if (port != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
setPort(Integer.parseInt(port));
|
||||
request.setPort(Integer.parseInt(port));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//throw new DeployException("maven.repo." + repository + ".port should be an integer");
|
||||
throw new DeployException("maven.repo." + repository + ".port should be an integer");
|
||||
}
|
||||
}
|
||||
if (proxyPort != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
setProxyPort(Integer.parseInt(proxyPort.trim()));
|
||||
request.setProxyPort(Integer.parseInt(proxyPort.trim()));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//throw new DeployException("maven.repo." + repository + ".proxy.port should be an integer");
|
||||
throw new DeployException("maven.repo." + repository + ".proxy.port should be an integer");
|
||||
}
|
||||
}
|
||||
|
||||
setInputFile(inputFile);
|
||||
request.setSrcFile(srcFile);
|
||||
|
||||
if (dir != null)
|
||||
{
|
||||
outputDir = dir + "/" + outputDir;
|
||||
destDir = dir + "/" + destDir;
|
||||
}
|
||||
setOutputFile(outputFile);
|
||||
setOutputDir(outputDir);
|
||||
request.setDestFile(destFile);
|
||||
request.setDestDir(destDir);
|
||||
return request;
|
||||
|
||||
}
|
||||
|
||||
@@ -59,31 +59,39 @@ package org.apache.maven.deploy;
|
||||
/**
|
||||
*
|
||||
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
|
||||
* @version $Id: DeployRequest.java,v 1.3 2003/06/24 22:22:55 michal Exp $
|
||||
* @version $Id: DeployRequest.java,v 1.4 2003/06/25 15:25:19 michal Exp $
|
||||
*/
|
||||
public class DeployRequest
|
||||
{
|
||||
|
||||
|
||||
public final static int UNKNOWN_PORT = -1;
|
||||
public final static String HEADER_USER_AGENT =
|
||||
"Maven-Deploy-" + DeployTool.VERSION;
|
||||
|
||||
|
||||
private String repositoryAlias;
|
||||
private String url;
|
||||
private int port = UNKNOWN_PORT;
|
||||
private String outputDir;
|
||||
private String outputFile;
|
||||
private String inputFile;
|
||||
private String destDir;
|
||||
private String destFile;
|
||||
private String srcFile;
|
||||
|
||||
/*
|
||||
* Resource access user / pass /group
|
||||
* Resource access user / password /group
|
||||
*/
|
||||
private String user;
|
||||
private String pass;
|
||||
private String password;
|
||||
private String group;
|
||||
private String passphrase;
|
||||
private String privateKey;
|
||||
|
||||
/*
|
||||
* Proxy server settings. If proxy host is not null, settings will be used.
|
||||
*/
|
||||
private String proxyHost = null;
|
||||
private String proxyUser = null;
|
||||
private String proxyPass = null;
|
||||
private int proxyPort = UNKNOWN_PORT;
|
||||
|
||||
/**
|
||||
* @param repositoryAlias
|
||||
*/
|
||||
@@ -92,27 +100,6 @@ public class DeployRequest
|
||||
this.repositoryAlias = repositoryAlias;
|
||||
}
|
||||
|
||||
public DeployRequest()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public DeployRequest(String url)
|
||||
{
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
// private boolean resumeDownload = false;
|
||||
private String headerUserAgent = "Maven-Deploy-" + DeployTool.VERSION;
|
||||
|
||||
/*
|
||||
* Proxy settings. If proxyHost is not null, settings will be used.
|
||||
*/
|
||||
private String proxyHost = null;
|
||||
private String proxyUser = null;
|
||||
private String proxyPass = null;
|
||||
private int proxyPort = UNKNOWN_PORT;
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
@@ -182,79 +169,71 @@ public class DeployRequest
|
||||
*/
|
||||
public String getHeaderUserAgent()
|
||||
{
|
||||
return headerUserAgent;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param headerUserAgent
|
||||
*/
|
||||
public void setHeaderUserAgent(String headerUserAgent)
|
||||
{
|
||||
this.headerUserAgent = headerUserAgent;
|
||||
return HEADER_USER_AGENT;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public String getInputFile()
|
||||
public String getSrcFile()
|
||||
{
|
||||
return inputFile;
|
||||
return srcFile;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param inputFile
|
||||
* @param srcFile
|
||||
*/
|
||||
public void setInputFile(String inputFile)
|
||||
public void setSrcFile(String inputFile)
|
||||
{
|
||||
this.inputFile = inputFile;
|
||||
this.srcFile = inputFile;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public String getOutputDir()
|
||||
public String getDestDir()
|
||||
{
|
||||
return outputDir;
|
||||
return destDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param outputDir
|
||||
* @param destDir
|
||||
*/
|
||||
public void setOutputDir(String outputDir)
|
||||
public void setDestDir(String outputDir)
|
||||
{
|
||||
this.outputDir = outputDir;
|
||||
this.destDir = outputDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public String getOutputFile()
|
||||
public String getDestFile()
|
||||
{
|
||||
return outputFile;
|
||||
return destFile;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param outputFile
|
||||
* @param destFile
|
||||
*/
|
||||
public void setOutputFile(String outputFile)
|
||||
public void setDestFile(String outputFile)
|
||||
{
|
||||
this.outputFile = outputFile;
|
||||
this.destFile = outputFile;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public String getPass()
|
||||
public String getPassword()
|
||||
{
|
||||
return pass;
|
||||
return password;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param pass
|
||||
* @param password
|
||||
*/
|
||||
public void setPass(String pass)
|
||||
public void setPassword(String pass)
|
||||
{
|
||||
this.pass = pass;
|
||||
this.password = pass;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -359,9 +338,9 @@ public class DeployRequest
|
||||
*/
|
||||
public String getHost()
|
||||
{
|
||||
if (url == null )
|
||||
if (url == null)
|
||||
{
|
||||
return "localhost";
|
||||
return "localhost";
|
||||
}
|
||||
return url.substring(url.indexOf("://") + 3);
|
||||
}
|
||||
@@ -371,7 +350,7 @@ public class DeployRequest
|
||||
*/
|
||||
public String getRepositoryAlias()
|
||||
{
|
||||
|
||||
|
||||
return repositoryAlias;
|
||||
}
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ import org.apache.maven.deploy.exceptions.DeployException;
|
||||
/**
|
||||
*
|
||||
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
|
||||
* @version $Id: FileDeployer.java,v 1.4 2003/06/24 22:22:54 michal Exp $
|
||||
* @version $Id: FileDeployer.java,v 1.5 2003/06/25 15:25:18 michal Exp $
|
||||
*/
|
||||
public class FileDeployer implements Deployer
|
||||
{
|
||||
@@ -80,16 +80,16 @@ public class FileDeployer implements Deployer
|
||||
{
|
||||
try
|
||||
{
|
||||
File inputFile = new File(request.getInputFile());
|
||||
File inputFile = new File(request.getSrcFile());
|
||||
|
||||
File outputFile =
|
||||
new File(request.getHost(), request.getOutputDir());
|
||||
new File(request.getHost(), request.getDestDir());
|
||||
|
||||
if (! outputFile.exists())
|
||||
{
|
||||
outputFile.mkdirs();
|
||||
}
|
||||
outputFile = new File( outputFile, request.getOutputFile());
|
||||
outputFile = new File( outputFile, request.getDestFile());
|
||||
FileUtils.copyFile(inputFile, outputFile);
|
||||
}
|
||||
catch (IOException e)
|
||||
|
||||
@@ -80,7 +80,7 @@ import org.apache.maven.deploy.exceptions.DeployException;
|
||||
*
|
||||
* @author <a href="mailto:jason@zenplex.com">Jason van Zyl</a>
|
||||
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
|
||||
* @version $Id: FtpDeployer.java,v 1.3 2003/06/24 22:22:54 michal Exp $
|
||||
* @version $Id: FtpDeployer.java,v 1.4 2003/06/25 15:25:18 michal Exp $
|
||||
*
|
||||
*
|
||||
*/
|
||||
@@ -95,7 +95,7 @@ public class FtpDeployer extends AbstractDeployer
|
||||
public void deploy(DeployRequest request) throws DeployException
|
||||
{
|
||||
String username = request.getUser();
|
||||
String password = request.getPass();
|
||||
String password = request.getPassword();
|
||||
String host = request.getHost();
|
||||
|
||||
FTPClient ftp = new FTPClient();
|
||||
@@ -159,13 +159,13 @@ public class FtpDeployer extends AbstractDeployer
|
||||
// Use passive mode as default because most of us are
|
||||
// behind firewalls these days.
|
||||
ftp.enterLocalPassiveMode();
|
||||
String workingDir = request.getOutputDir();
|
||||
String filename = request.getOutputFile();
|
||||
String workingDir = request.getDestDir();
|
||||
String filename = request.getDestFile();
|
||||
System.out.println("Working directory " + workingDir);
|
||||
System.out.println("Filename: " + filename);
|
||||
ftp.makeDirectory(workingDir);
|
||||
ftp.changeWorkingDirectory( workingDir);
|
||||
ftp.storeFile(filename, new FileInputStream(request.getInputFile()));
|
||||
ftp.storeFile(filename, new FileInputStream(request.getSrcFile()));
|
||||
ftp.logout();
|
||||
}
|
||||
catch (FTPConnectionClosedException e)
|
||||
|
||||
@@ -79,7 +79,7 @@ import com.jcraft.jsch.UserInfo;
|
||||
* assuming the standard port of 22.
|
||||
*
|
||||
*
|
||||
* @version $Id: GenericSshDeployer.java,v 1.1 2003/06/25 12:33:11 michal Exp $
|
||||
* @version $Id: GenericSshDeployer.java,v 1.2 2003/06/25 15:25:18 michal Exp $
|
||||
* @todo still have to account for differing setups for people deploying to
|
||||
* their own sites and to the central repository.
|
||||
*/
|
||||
@@ -191,7 +191,7 @@ public abstract class GenericSshDeployer extends AbstractDeployer
|
||||
*/
|
||||
public String getPassword()
|
||||
{
|
||||
return request.getPass();
|
||||
return request.getPassword();
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
|
||||
@@ -76,7 +76,7 @@ import org.apache.maven.deploy.exceptions.DeployException;
|
||||
* An HTTP deployer based the Commons HttpClient library.
|
||||
*
|
||||
* @author <a href="mailto:jason@zenplex.com">Jason van Zyl</a>
|
||||
* @version $Id: HttpDeployer.java,v 1.2 2003/06/24 22:22:54 michal Exp $
|
||||
* @version $Id: HttpDeployer.java,v 1.3 2003/06/25 15:25:18 michal Exp $
|
||||
*
|
||||
* @todo still have to account for differing setups for people deploying to
|
||||
* their own sites and to the central repository.
|
||||
@@ -105,7 +105,7 @@ public class HttpDeployer extends AbstractDeployer
|
||||
Credentials creds =
|
||||
new UsernamePasswordCredentials(
|
||||
request.getUser(),
|
||||
request.getPass());
|
||||
request.getPassword());
|
||||
|
||||
//create a singular HttpClient object
|
||||
HttpClient client = new HttpClient();
|
||||
@@ -131,11 +131,11 @@ public class HttpDeployer extends AbstractDeployer
|
||||
|
||||
try
|
||||
{
|
||||
method.setRequestBody(new FileInputStream(request.getInputFile()));
|
||||
method.setRequestBody(new FileInputStream(request.getSrcFile()));
|
||||
}
|
||||
catch(FileNotFoundException io)
|
||||
{
|
||||
throw new DeployException("input file: '"+ request.getInputFile() + " not found ");
|
||||
throw new DeployException("input file: '"+ request.getSrcFile() + " not found ");
|
||||
}
|
||||
|
||||
//turn follow redirects off
|
||||
|
||||
@@ -67,17 +67,17 @@ import com.jcraft.jsch.SftpATTRS;
|
||||
import com.jcraft.jsch.SftpException;
|
||||
|
||||
/**
|
||||
* An SSH2 SFTP deployer
|
||||
* An SSH2/SFTP deployer
|
||||
*
|
||||
* @author Michal Maczka
|
||||
* @version $Revision: 1.2 $ $Date: 2003/06/25 12:33:11 $
|
||||
* @version $Revision: 1.3 $ $Date: 2003/06/25 15:25:18 $
|
||||
*/
|
||||
public class SFtpDeployer extends GenericSshDeployer
|
||||
{
|
||||
|
||||
public final static String PROTOCOL = "sftp://";
|
||||
public final static String SFTP_CHANNEL = "sftp";
|
||||
|
||||
private final static String SFTP_CHANNEL = "sftp";
|
||||
private static final int S_IFDIR = 0x4000;
|
||||
|
||||
/**
|
||||
* @see Deployer#project
|
||||
@@ -96,7 +96,7 @@ public class SFtpDeployer extends GenericSshDeployer
|
||||
}
|
||||
catch (NumberFormatException e)
|
||||
{
|
||||
throw new DeployException("For sftp protocol remote group should be an integer");
|
||||
throw new DeployException("SFTP deployer: remote group should be an integer");
|
||||
}
|
||||
|
||||
Session session = getSession(request);
|
||||
@@ -107,10 +107,9 @@ public class SFtpDeployer extends GenericSshDeployer
|
||||
channel.connect();
|
||||
// iterate over all directories in the path. try to create
|
||||
// directory
|
||||
String[] dirs = StringUtils.split(request.getOutputDir(), "/");
|
||||
String[] dirs = StringUtils.split(request.getDestDir(), "/");
|
||||
for (int i = 0; i < dirs.length; i++)
|
||||
{
|
||||
System.out.println("processing: " + dirs[i]);
|
||||
{
|
||||
try
|
||||
{
|
||||
SftpATTRS attrs = channel.stat(dirs[i]);
|
||||
@@ -122,9 +121,7 @@ public class SFtpDeployer extends GenericSshDeployer
|
||||
else
|
||||
{
|
||||
throw new DeployException(
|
||||
"Remote path:"
|
||||
+ request.getOutputDir()
|
||||
+ "is not correct");
|
||||
"Incorrect remote path:" + request.getDestDir());
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -136,45 +133,34 @@ public class SFtpDeployer extends GenericSshDeployer
|
||||
|
||||
}
|
||||
|
||||
channel.put(request.getInputFile(), request.getOutputFile());
|
||||
channel.put(request.getSrcFile(), request.getDestFile());
|
||||
|
||||
if (groupId != null)
|
||||
{
|
||||
channel.chgrp(groupId.intValue(), request.getOutputFile());
|
||||
channel.chgrp(groupId.intValue(), request.getDestFile());
|
||||
}
|
||||
|
||||
}
|
||||
catch (SftpException e)
|
||||
{
|
||||
throw new DeployException(
|
||||
"Cannot deploy. Reason: " + e.getMessage(),
|
||||
e);
|
||||
|
||||
String msg =
|
||||
"Error occured while deploying to remote host:"
|
||||
+ request.getHost();
|
||||
throw new DeployException(msg, e);
|
||||
}
|
||||
|
||||
catch (JSchException e)
|
||||
{
|
||||
throw new DeployException(
|
||||
"Cannot deploy. Reason: " + e.getMessage(),
|
||||
e);
|
||||
String msg =
|
||||
"Error occured while deploying to remote host:"
|
||||
+ request.getHost();
|
||||
throw new DeployException(msg, e);
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
channel.disconnect();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//just ignore.
|
||||
}
|
||||
try
|
||||
{
|
||||
session.disconnect();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
// just ignore.
|
||||
}
|
||||
channel.disconnect();
|
||||
session.disconnect();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -58,8 +58,6 @@ package org.apache.maven.deploy.deployers;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
|
||||
@@ -67,14 +65,13 @@ import org.apache.maven.deploy.DeployRequest;
|
||||
import org.apache.maven.deploy.exceptions.DeployException;
|
||||
|
||||
import com.jcraft.jsch.ChannelExec;
|
||||
import com.jcraft.jsch.JSchException;
|
||||
import com.jcraft.jsch.Session;
|
||||
|
||||
/**
|
||||
* An SSH2 SFTP deployer
|
||||
* An SSH2/SCP deployer
|
||||
*
|
||||
* @author Michal Maczka
|
||||
* @version $Revision: 1.1 $ $Date: 2003/06/25 12:33:11 $
|
||||
* @version $Revision: 1.2 $ $Date: 2003/06/25 15:25:18 $
|
||||
*/
|
||||
public class ScpDeployer extends GenericSshDeployer
|
||||
{
|
||||
@@ -95,34 +92,26 @@ public class ScpDeployer extends GenericSshDeployer
|
||||
try
|
||||
{
|
||||
|
||||
//String scpCmd = "scp -t " + request.getOutputFile() + "\n";
|
||||
executeSimpleCommand(
|
||||
session,
|
||||
"mkdir -p " + request.getOutputDir() + "\n");
|
||||
|
||||
String mkdirCmd = "mkdir -p " + request.getDestDir() + "\n";
|
||||
executeSimpleCommand(session, mkdirCmd);
|
||||
|
||||
doCopy(session, request);
|
||||
if (request.getGroup() != null)
|
||||
{
|
||||
executeSimpleCommand(
|
||||
session,
|
||||
|
||||
String chgrpCmd =
|
||||
"chgrp "
|
||||
+ request.getGroup()
|
||||
+ " "
|
||||
+ request.getOutputFile()
|
||||
+ "\n");
|
||||
+ request.getDestFile()
|
||||
+ "\n";
|
||||
executeSimpleCommand(session, chgrpCmd);
|
||||
}
|
||||
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
session.disconnect();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
// just ignore.
|
||||
}
|
||||
session.disconnect();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -150,24 +139,16 @@ public class ScpDeployer extends GenericSshDeployer
|
||||
}
|
||||
finally
|
||||
{
|
||||
//when channel cannot be closed it is still ok. this "local"
|
||||
//failure is not global failure
|
||||
if (channel != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
channel.disconnect();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//ignore
|
||||
}
|
||||
channel.disconnect();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Copy artifact file using streams (pipes)
|
||||
* Copy artifact to remote host.
|
||||
* Code extracted from JSCH exaples
|
||||
*/
|
||||
private void doCopy(Session session, DeployRequest request)
|
||||
throws DeployException
|
||||
@@ -175,10 +156,10 @@ public class ScpDeployer extends GenericSshDeployer
|
||||
|
||||
try
|
||||
{
|
||||
String inputFile = request.getInputFile();
|
||||
String outputFile = request.getOutputFile();
|
||||
String outputDir = request.getOutputDir();
|
||||
// exec 'scp -t rfile' remotely
|
||||
String inputFile = request.getSrcFile();
|
||||
String outputFile = request.getDestFile();
|
||||
String outputDir = request.getDestDir();
|
||||
// exec 'scp -t rfile' remotely
|
||||
String command = "scp -t " + outputDir + "/" + outputFile;
|
||||
System.out.println("Executing command: " + command);
|
||||
ChannelExec channel =
|
||||
@@ -245,24 +226,12 @@ public class ScpDeployer extends GenericSshDeployer
|
||||
}
|
||||
while (tmp[0] != 0);
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
throw new DeployException(
|
||||
"Input file was not found: " + request.getInputFile(),
|
||||
e);
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
throw new DeployException(
|
||||
"IO error while sending file: " + request.getInputFile(),
|
||||
e);
|
||||
}
|
||||
catch (JSchException e)
|
||||
{
|
||||
throw new DeployException(
|
||||
"Error occured while copying file to remote host",
|
||||
e);
|
||||
String msg =
|
||||
"Error occured while deploying to remote host:"
|
||||
+ request.getHost();
|
||||
throw new DeployException(msg,e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user