Class ScpWagon
- java.lang.Object
-
- org.apache.maven.wagon.AbstractWagon
-
- org.apache.maven.wagon.StreamWagon
-
- org.apache.maven.wagon.providers.ssh.jsch.AbstractJschWagon
-
- org.apache.maven.wagon.providers.ssh.jsch.ScpWagon
-
- All Implemented Interfaces:
CommandExecutor,SshWagon,StreamingWagon,Wagon
- Direct Known Subclasses:
ScpCommandExecutor
public class ScpWagon extends AbstractJschWagon
SCP protocol wagon. Note that this implementation is not thread-safe, and multiple channels can not be used on the session at the same time. See http://blogs.sun.com/janp/entry/how_the_scp_protocol_works for information on how the SCP protocol works.
-
-
Field Summary
Fields Modifier and Type Field Description private static charACK_SEPARATORprivate com.jcraft.jsch.ChannelExecchannelprivate java.io.InputStreamchannelInputStreamprivate java.io.OutputStreamchannelOutputStreamprivate static charCOPY_START_CHARprivate static java.lang.StringEND_OF_FILES_MSGprivate static byteLFprivate static intLINE_BUFFER_SIZE-
Fields inherited from class org.apache.maven.wagon.providers.ssh.jsch.AbstractJschWagon
EXEC_CHANNEL, session, sshTool
-
Fields inherited from class org.apache.maven.wagon.AbstractWagon
authenticationInfo, BUFFER_SEGMENT_SIZE, DEFAULT_BUFFER_SIZE, interactive, MAXIMUM_BUFFER_SIZE, MINIMUM_AMOUNT_OF_TRANSFER_CHUNKS, proxyInfo, repository, sessionEventSupport, transferEventSupport
-
Fields inherited from interface org.apache.maven.wagon.CommandExecutor
ROLE
-
Fields inherited from interface org.apache.maven.wagon.Wagon
DEFAULT_CONNECTION_TIMEOUT, DEFAULT_READ_TIMEOUT, ROLE
-
-
Constructor Summary
Constructors Constructor Description ScpWagon()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description private voidcheckAck(java.io.InputStream in)protected voidcleanupGetTransfer(Resource resource)protected voidcleanupPutTransfer(Resource resource)voidfillInputData(InputData inputData)voidfillOutputData(OutputData outputData)protected voidfinishGetTransfer(Resource resource, java.io.InputStream input, java.io.OutputStream output)protected voidfinishPutTransfer(Resource resource, java.io.InputStream input, java.io.OutputStream output)java.lang.StringgetOctalMode(RepositoryPermissions permissions)protected voidgetTransfer(Resource resource, java.io.OutputStream output, java.io.InputStream input, boolean closeInput, int maxSize)Deprecated.protected voidgetTransfer(Resource resource, java.io.OutputStream output, java.io.InputStream input, boolean closeInput, long maxSize)private voidhandleIOException(Resource resource, java.io.IOException e)protected java.lang.StringreadLine(java.io.InputStream in)protected static voidsendEom(java.io.OutputStream out)private voidsetFileGroup(RepositoryPermissions permissions, java.lang.String basedir, Resource resource)-
Methods inherited from class org.apache.maven.wagon.providers.ssh.jsch.AbstractJschWagon
closeConnection, executeCommand, executeCommand, executeCommand, getFileList, getInteractiveUserInfo, getKnownHostsProvider, getPreferredAuthentications, getStrictHostKeyChecking, handleGetException, openConnectionInternal, putDirectory, resourceExists, setInteractiveUserInfo, setKnownHostsProvider, setPreferredAuthentications, setStrictHostKeyChecking, setUIKeyboardInteractive, supportsDirectoryCopy, transfer
-
Methods inherited from class org.apache.maven.wagon.StreamWagon
checkInputStream, checkOutputStream, get, getIfNewer, getIfNewerToStream, getInputStream, getOutputStream, getToStream, put, putFromStream, putFromStream, putFromStream
-
Methods inherited from class org.apache.maven.wagon.AbstractWagon
addSessionListener, addTransferListener, connect, connect, connect, connect, connect, connect, createParentDirectories, disconnect, fireGetCompleted, fireGetInitiated, fireGetStarted, firePutCompleted, firePutInitiated, firePutStarted, fireSessionConnectionRefused, fireSessionDebug, fireSessionDisconnected, fireSessionDisconnecting, fireSessionError, fireSessionLoggedIn, fireSessionLoggedOff, fireSessionOpened, fireSessionOpening, fireTransferDebug, fireTransferError, fireTransferProgress, getAuthenticationInfo, getBufferCapacityForTransfer, getPath, getPermissionsOverride, getProxyInfo, getProxyInfo, getReadTimeout, getRepository, getSessionEventSupport, getTimeout, getTransfer, getTransfer, getTransfer, getTransfer, getTransferEventSupport, hasSessionListener, hasTransferListener, isInteractive, openConnection, postProcessListeners, putTransfer, putTransfer, removeSessionListener, removeTransferListener, setInteractive, setPermissionsOverride, setReadTimeout, setSessionEventSupport, setTimeout, 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.Wagon
addSessionListener, addTransferListener, connect, connect, connect, connect, connect, connect, disconnect, get, getIfNewer, getReadTimeout, getRepository, getTimeout, hasSessionListener, hasTransferListener, isInteractive, openConnection, put, removeSessionListener, removeTransferListener, setInteractive, setReadTimeout, setTimeout
-
-
-
-
Field Detail
-
COPY_START_CHAR
private static final char COPY_START_CHAR
- See Also:
- Constant Field Values
-
ACK_SEPARATOR
private static final char ACK_SEPARATOR
- See Also:
- Constant Field Values
-
END_OF_FILES_MSG
private static final java.lang.String END_OF_FILES_MSG
- See Also:
- Constant Field Values
-
LINE_BUFFER_SIZE
private static final int LINE_BUFFER_SIZE
- See Also:
- Constant Field Values
-
LF
private static final byte LF
- See Also:
- Constant Field Values
-
channel
private com.jcraft.jsch.ChannelExec channel
-
channelInputStream
private java.io.InputStream channelInputStream
-
channelOutputStream
private java.io.OutputStream channelOutputStream
-
-
Method Detail
-
setFileGroup
private void setFileGroup(RepositoryPermissions permissions, java.lang.String basedir, Resource resource) throws CommandExecutionException
- Throws:
CommandExecutionException
-
cleanupPutTransfer
protected void cleanupPutTransfer(Resource resource)
- Overrides:
cleanupPutTransferin classAbstractWagon
-
finishPutTransfer
protected void finishPutTransfer(Resource resource, java.io.InputStream input, java.io.OutputStream output) throws TransferFailedException
- Overrides:
finishPutTransferin classAbstractWagon- Throws:
TransferFailedException
-
checkAck
private void checkAck(java.io.InputStream in) throws java.io.IOException- Throws:
java.io.IOException
-
finishGetTransfer
protected void finishGetTransfer(Resource resource, java.io.InputStream input, java.io.OutputStream output) throws TransferFailedException
- Overrides:
finishGetTransferin classAbstractWagon- Throws:
TransferFailedException
-
cleanupGetTransfer
protected void cleanupGetTransfer(Resource resource)
- Overrides:
cleanupGetTransferin classAbstractWagon
-
getTransfer
@Deprecated protected void getTransfer(Resource resource, java.io.OutputStream output, java.io.InputStream input, boolean closeInput, int maxSize) throws TransferFailedException
Deprecated.- Overrides:
getTransferin classAbstractWagon- Throws:
TransferFailedException
-
getTransfer
protected void getTransfer(Resource resource, java.io.OutputStream output, java.io.InputStream input, boolean closeInput, long maxSize) throws TransferFailedException
- Overrides:
getTransferin classAbstractWagon- Throws:
TransferFailedException
-
readLine
protected java.lang.String readLine(java.io.InputStream in) throws java.io.IOException- Throws:
java.io.IOException
-
sendEom
protected static void sendEom(java.io.OutputStream out) throws java.io.IOException- Throws:
java.io.IOException
-
fillInputData
public void fillInputData(InputData inputData) throws TransferFailedException, ResourceDoesNotExistException
- Specified by:
fillInputDatain classStreamWagon- Throws:
TransferFailedExceptionResourceDoesNotExistException
-
fillOutputData
public void fillOutputData(OutputData outputData) throws TransferFailedException
- Specified by:
fillOutputDatain classStreamWagon- Throws:
TransferFailedException
-
handleIOException
private void handleIOException(Resource resource, java.io.IOException e) throws TransferFailedException
- Throws:
TransferFailedException
-
getOctalMode
public java.lang.String getOctalMode(RepositoryPermissions permissions)
-
-