Package org.apache.sshd.common.scp
Interface ScpTargetStreamResolver
-
- All Known Implementing Classes:
LocalFileScpTargetStreamResolver
public interface ScpTargetStreamResolver
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default void
closeTargetStream(Session session, java.lang.String name, long length, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms, java.io.OutputStream stream)
Called when target stream received fromresolveTargetStream
call is no longer needed since copy is successfully completed.java.nio.file.Path
getEventListenerFilePath()
void
postProcessReceivedData(java.lang.String name, boolean preserve, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms, ScpTimestamp time)
Called after successful reception of the data (and after closing the stream)java.io.OutputStream
resolveTargetStream(Session session, java.lang.String name, long length, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms, java.nio.file.OpenOption... options)
Called when receiving a file in order to obtain an output stream for the incoming data
-
-
-
Method Detail
-
resolveTargetStream
java.io.OutputStream resolveTargetStream(Session session, java.lang.String name, long length, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms, java.nio.file.OpenOption... options) throws java.io.IOException
Called when receiving a file in order to obtain an output stream for the incoming data- Parameters:
session
- The associatedSession
name
- File name as received from remote sitelength
- Number of bytes expected to receiveperms
- TheSet
ofPosixFilePermission
expectedoptions
- TheOpenOption
s to use - may benull
/empty- Returns:
- The
OutputStream
to write the incoming data - Throws:
java.io.IOException
- If failed to create the stream
-
closeTargetStream
default void closeTargetStream(Session session, java.lang.String name, long length, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms, java.io.OutputStream stream) throws java.io.IOException
Called when target stream received fromresolveTargetStream
call is no longer needed since copy is successfully completed.- Parameters:
session
- The associatedSession
name
- File name as received from remote sitelength
- Number of bytes expected to receiveperms
- TheSet
ofPosixFilePermission
expectedstream
- TheOutputStream
to close- Throws:
java.io.IOException
- If failed to close the stream - Note: stream will be closed regardless of whether this method throws an exception or not.
-
getEventListenerFilePath
java.nio.file.Path getEventListenerFilePath()
- Returns:
- The
Path
to use when invoking theScpTransferEventListener
-
postProcessReceivedData
void postProcessReceivedData(java.lang.String name, boolean preserve, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms, ScpTimestamp time) throws java.io.IOException
Called after successful reception of the data (and after closing the stream)- Parameters:
name
- File name as received from remote sitepreserve
- Iftrue
then the resolver should attempt to preserve the specified permissions and timestampperms
- TheSet
ofPosixFilePermission
expectedtime
- If notnull
then the required timestamp(s) on the incoming data- Throws:
java.io.IOException
- If failed to post-process the incoming data
-
-