FileSystem
Section titled “FileSystem”File system operations facade for a specific Sandbox.
Provides methods for directory management, file upload/download, metadata inspection, and search/replace operations.
Methods
Section titled “Methods”createFolder()
Section titled “createFolder()”public void createFolder(String path, String mode)Creates a directory in the Sandbox.
Parameters:
pathString - directory pathmodeString - POSIX mode (for example755); defaults to755whennull
Throws:
io.daytona.sdk.exception.DaytonaException- if creation fails
deleteFile()
Section titled “deleteFile()”public void deleteFile(String path)Deletes a file.
Parameters:
pathString - file path to delete
Throws:
io.daytona.sdk.exception.DaytonaException- if deletion fails
downloadFile()
Section titled “downloadFile()”public byte[] downloadFile(String remotePath)Downloads a file into memory.
Parameters:
remotePathString - source file path in the Sandbox
Returns:
byte[]- file bytes; empty array when no file payload is returned
Throws:
io.daytona.sdk.exception.DaytonaException- if download or local read fails
downloadFileStream()
Section titled “downloadFileStream()”public InputStream downloadFileStream(String remotePath) throws io.daytona.sdk.exception.DaytonaExceptionDownloads a single file from the Sandbox as a stream without buffering the entire file
into memory. The returned InputStream can be piped directly to an HTTP response,
written to a file, or processed on the fly.
The caller is responsible for closing the returned stream.
Parameters:
remotePathString - source file path in the Sandbox
Returns:
InputStream- anInputStreamstreaming the file content
Throws:
io.daytona.sdk.exception.DaytonaException- if the file does not exist or access is denied
downloadFileStream()
Section titled “downloadFileStream()”public InputStream downloadFileStream(String remotePath, int timeoutSeconds) throws io.daytona.sdk.exception.DaytonaExceptionDownloads a single file from the Sandbox as a stream without buffering the entire file into memory, with a custom timeout.
The caller is responsible for closing the returned stream.
Parameters:
remotePathString - source file path in the SandboxtimeoutSecondsint - timeout in seconds; 0 means no timeout
Returns:
InputStream- anInputStreamstreaming the file content
Throws:
io.daytona.sdk.exception.DaytonaException- if the file does not exist or access is denied
downloadFileStream()
Section titled “downloadFileStream()”public InputStream downloadFileStream(String remotePath, DownloadStreamOptions options) throws io.daytona.sdk.exception.DaytonaExceptionDownloads a single file from the Sandbox as a stream with configurable options.
Parameters:
remotePathString - source file path in the SandboxoptionsDownloadStreamOptions - download options including timeout and progress callback
Returns:
InputStream- an InputStream streaming the file content
Throws:
io.daytona.sdk.exception.DaytonaException- if download fails
uploadFile()
Section titled “uploadFile()”public void uploadFile(byte[] content, String remotePath)Uploads in-memory file content to a Sandbox path.
Parameters:
contentbyte[] - file bytes;nulluploads an empty fileremotePathString - destination file path in the Sandbox
Throws:
io.daytona.sdk.exception.DaytonaException- if upload fails
uploadFileStream()
Section titled “uploadFileStream()”public void uploadFileStream(InputStream source, String remotePath, UploadStreamOptions options)Streams an upload to a Sandbox path without buffering the source. The bytes are piped through a progress-counting wrapper directly into a streaming multipart request, so heap usage stays flat regardless of source size.
Parameters:
sourceInputStream - the data source; the caller retains ownership and is responsible for closing itremotePathString - destination file path in the SandboxoptionsUploadStreamOptions - upload options including timeout, cancellation, and progress callback
Throws:
io.daytona.sdk.exception.DaytonaException- if upload fails
uploadFileStream()
Section titled “uploadFileStream()”public void uploadFileStream(InputStream source, String remotePath)Convenience overload using default options.
Parameters:
sourceInputStream -remotePathString -
listFiles()
Section titled “listFiles()”public List<FileInfo> listFiles(String path)Lists files and directories under a path.
Parameters:
pathString - directory path
Returns:
List\<FileInfo\>- file metadata entries
Throws:
io.daytona.sdk.exception.DaytonaException- if listing fails
getFileDetails()
Section titled “getFileDetails()”public FileInfo getFileDetails(String path)Returns metadata for a single file or directory.
Parameters:
pathString - file or directory path
Returns:
FileInfo- metadata record
Throws:
io.daytona.sdk.exception.DaytonaException- if lookup fails
findFiles()
Section titled “findFiles()”public List<Map<String, Object>> findFiles(String path, String pattern)Searches files by content pattern.
Parameters:
pathString - root directory to searchpatternString - text pattern to find
Returns:
List\<Map\<String, Object\>\>- list of matches containing file, line, and content
Throws:
io.daytona.sdk.exception.DaytonaException- if the search request fails
searchFiles()
Section titled “searchFiles()”public Map<String, Object> searchFiles(String path, String pattern)Searches files by file-name pattern.
Parameters:
pathString - root directory to searchpatternString - file-name pattern
Returns:
Map\<String, Object\>- result map containingfiles
Throws:
io.daytona.sdk.exception.DaytonaException- if the search request fails
replaceInFiles()
Section titled “replaceInFiles()”public void replaceInFiles(List<String> files, String pattern, String newValue)Performs in-place replacement in multiple files.
Parameters:
filesList<String> - files to processpatternString - pattern to replacenewValueString - replacement text
Throws:
io.daytona.sdk.exception.DaytonaException- if replacement fails
moveFiles()
Section titled “moveFiles()”public void moveFiles(String source, String destination)Moves or renames a file or directory.
Parameters:
sourceString - source pathdestinationString - destination path
Throws:
io.daytona.sdk.exception.DaytonaException- if move fails