org.apache.maven.wagon.providers.ssh
Class AbstractSshWagon

java.lang.Object
  extended by org.apache.maven.wagon.AbstractWagon
      extended by org.apache.maven.wagon.providers.ssh.AbstractSshWagon
All Implemented Interfaces:
org.apache.maven.wagon.CommandExecutor, SshWagon, org.apache.maven.wagon.Wagon

public abstract class AbstractSshWagon
extends org.apache.maven.wagon.AbstractWagon
implements org.apache.maven.wagon.CommandExecutor, SshWagon

Common SSH operations.

Version:
$Id: AbstractSshWagon.java 485738 2006-12-11 16:22:26Z joakime $
Author:
Brett Porter

Field Summary
protected static int DEFAULT_SSH_PORT
           
protected  InteractiveUserInfo interactiveUserInfo
           
protected  KnownHostsProvider knownHostsProvider
           
protected static char PATH_SEPARATOR
           
 
Fields inherited from class org.apache.maven.wagon.AbstractWagon
authenticationInfo, DEFAULT_BUFFER_SIZE, interactive, proxyInfo, repository, sessionEventSupport, transferEventSupport
 
Fields inherited from interface org.apache.maven.wagon.CommandExecutor
ROLE
 
Constructor Summary
AbstractSshWagon()
           
 
Method Summary
 void executeCommand(java.lang.String command)
           
private  java.io.File findPrivateKey()
           
protected  int getDirectoryMode(org.apache.maven.wagon.repository.RepositoryPermissions permissions)
           
 java.util.List getFileList(java.lang.String destinationDirectory)
           
 boolean getIfNewer(java.lang.String resourceName, java.io.File destination, long timestamp)
           
 InteractiveUserInfo getInteractiveUserInfo()
           
 KnownHostsProvider getKnownHostsProvider()
           
protected  java.lang.String getOctalMode(org.apache.maven.wagon.repository.RepositoryPermissions permissions)
           
protected  int getOctalMode(java.lang.String mode)
           
protected  int getPort()
           
protected  java.io.File getPrivateKey()
           
protected static org.apache.maven.wagon.resource.Resource getResource(java.lang.String resourceName)
           
protected static java.lang.String getResourceDirectory(java.lang.String resourceName)
           
protected static java.lang.String getResourceFilename(java.lang.String r)
           
protected  void handleGetException(org.apache.maven.wagon.resource.Resource resource, java.lang.Exception e, java.io.File destination)
           
 void openConnection()
           
 void putDirectory(java.io.File sourceDirectory, java.lang.String destinationDirectory)
           
 boolean resourceExists(java.lang.String resourceName)
           
 void setInteractiveUserInfo(InteractiveUserInfo interactiveUserInfo)
           
 void setKnownHostsProvider(KnownHostsProvider knownHostsProvider)
           
 boolean supportsDirectoryCopy()
           
 
Methods inherited from class org.apache.maven.wagon.AbstractWagon
addSessionListener, addTransferListener, closeConnection, connect, connect, connect, connect, createParentDirectories, createZip, disconnect, fireGetCompleted, fireGetInitiated, fireGetStarted, firePutCompleted, firePutInitiated, firePutStarted, fireSessionConnectionRefused, fireSessionDebug, fireSessionDisconnected, fireSessionDisconnecting, fireSessionError, fireSessionLoggedIn, fireSessionLoggedOff, fireSessionOpened, fireSessionOpening, fireTransferDebug, fireTransferError, fireTransferProgress, getAuthenticationInfo, getPath, getProxyInfo, getRepository, getSessionEventSupport, getTransfer, getTransfer, getTransferEventSupport, hasSessionListener, hasTransferListener, isInteractive, postProcessListeners, putTransfer, removeSessionListener, removeTransferListener, setInteractive, setSessionEventSupport, setTransferEventSupport, transfer, transfer, transfer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.maven.wagon.CommandExecutor
executeCommand
 
Methods inherited from interface org.apache.maven.wagon.Wagon
addSessionListener, addTransferListener, connect, connect, connect, connect, disconnect, get, getRepository, hasSessionListener, hasTransferListener, isInteractive, put, removeSessionListener, removeTransferListener, setInteractive
 

Field Detail

knownHostsProvider

protected KnownHostsProvider knownHostsProvider

interactiveUserInfo

protected InteractiveUserInfo interactiveUserInfo

PATH_SEPARATOR

protected static final char PATH_SEPARATOR
See Also:
Constant Field Values

DEFAULT_SSH_PORT

protected static final int DEFAULT_SSH_PORT
See Also:
Constant Field Values
Constructor Detail

AbstractSshWagon

public AbstractSshWagon()
Method Detail

getIfNewer

public boolean getIfNewer(java.lang.String resourceName,
                          java.io.File destination,
                          long timestamp)
                   throws org.apache.maven.wagon.TransferFailedException,
                          org.apache.maven.wagon.ResourceDoesNotExistException,
                          org.apache.maven.wagon.authorization.AuthorizationException
Specified by:
getIfNewer in interface org.apache.maven.wagon.Wagon
Throws:
org.apache.maven.wagon.TransferFailedException
org.apache.maven.wagon.ResourceDoesNotExistException
org.apache.maven.wagon.authorization.AuthorizationException

getOctalMode

protected java.lang.String getOctalMode(org.apache.maven.wagon.repository.RepositoryPermissions permissions)

getDirectoryMode

protected int getDirectoryMode(org.apache.maven.wagon.repository.RepositoryPermissions permissions)
Parameters:
permissions - repository's permissions
Returns:
the directory mode for the repository or -1 if it wasn't set

getOctalMode

protected int getOctalMode(java.lang.String mode)

getResourceDirectory

protected static java.lang.String getResourceDirectory(java.lang.String resourceName)

getResourceFilename

protected static java.lang.String getResourceFilename(java.lang.String r)

getResource

protected static org.apache.maven.wagon.resource.Resource getResource(java.lang.String resourceName)

openConnection

public void openConnection()
                    throws org.apache.maven.wagon.authentication.AuthenticationException
Specified by:
openConnection in interface org.apache.maven.wagon.Wagon
Throws:
org.apache.maven.wagon.authentication.AuthenticationException

getPrivateKey

protected java.io.File getPrivateKey()

getPort

protected int getPort()

findPrivateKey

private java.io.File findPrivateKey()

executeCommand

public void executeCommand(java.lang.String command)
                    throws org.apache.maven.wagon.CommandExecutionException
Specified by:
executeCommand in interface org.apache.maven.wagon.CommandExecutor
Throws:
org.apache.maven.wagon.CommandExecutionException

getKnownHostsProvider

public final KnownHostsProvider getKnownHostsProvider()

setKnownHostsProvider

public final void setKnownHostsProvider(KnownHostsProvider knownHostsProvider)
Specified by:
setKnownHostsProvider in interface SshWagon

getInteractiveUserInfo

public InteractiveUserInfo getInteractiveUserInfo()

setInteractiveUserInfo

public void setInteractiveUserInfo(InteractiveUserInfo interactiveUserInfo)

putDirectory

public void putDirectory(java.io.File sourceDirectory,
                         java.lang.String destinationDirectory)
                  throws org.apache.maven.wagon.TransferFailedException,
                         org.apache.maven.wagon.ResourceDoesNotExistException,
                         org.apache.maven.wagon.authorization.AuthorizationException
Specified by:
putDirectory in interface org.apache.maven.wagon.Wagon
Overrides:
putDirectory in class org.apache.maven.wagon.AbstractWagon
Throws:
org.apache.maven.wagon.TransferFailedException
org.apache.maven.wagon.ResourceDoesNotExistException
org.apache.maven.wagon.authorization.AuthorizationException

supportsDirectoryCopy

public boolean supportsDirectoryCopy()
Specified by:
supportsDirectoryCopy in interface org.apache.maven.wagon.Wagon
Overrides:
supportsDirectoryCopy in class org.apache.maven.wagon.AbstractWagon

getFileList

public java.util.List getFileList(java.lang.String destinationDirectory)
                           throws org.apache.maven.wagon.TransferFailedException,
                                  org.apache.maven.wagon.ResourceDoesNotExistException,
                                  org.apache.maven.wagon.authorization.AuthorizationException
Specified by:
getFileList in interface org.apache.maven.wagon.Wagon
Overrides:
getFileList in class org.apache.maven.wagon.AbstractWagon
Throws:
org.apache.maven.wagon.TransferFailedException
org.apache.maven.wagon.ResourceDoesNotExistException
org.apache.maven.wagon.authorization.AuthorizationException

resourceExists

public boolean resourceExists(java.lang.String resourceName)
                       throws org.apache.maven.wagon.TransferFailedException,
                              org.apache.maven.wagon.authorization.AuthorizationException
Specified by:
resourceExists in interface org.apache.maven.wagon.Wagon
Overrides:
resourceExists in class org.apache.maven.wagon.AbstractWagon
Throws:
org.apache.maven.wagon.TransferFailedException
org.apache.maven.wagon.authorization.AuthorizationException

handleGetException

protected void handleGetException(org.apache.maven.wagon.resource.Resource resource,
                                  java.lang.Exception e,
                                  java.io.File destination)
                           throws org.apache.maven.wagon.TransferFailedException,
                                  org.apache.maven.wagon.ResourceDoesNotExistException
Throws:
org.apache.maven.wagon.TransferFailedException
org.apache.maven.wagon.ResourceDoesNotExistException