trait InteractsWithPooledFilesystem

Traits

Properties

protected Closure|null $serveCallback
protected Closure|null $temporaryUrlCallback
protected Closure|null $temporaryUploadUrlCallback

Methods

mixed
when(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) truthy.

mixed
unless(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) falsy.

bool
copyToDisk(Filesystem|string|UnitEnum $disk, string $from, string|null $to = null)

Copy a file to another disk.

bool
moveToDisk(Filesystem|string|UnitEnum $disk, string $from, string|null $to = null)

Move a file to another disk.

bool
transferFile(Filesystem $source, string $from, Filesystem $destination, string $to)

Transfer a file without holding a source lease during the destination write.

assertExists(array|string $path, string|null $content = null)

Assert that the given file or directory exists.

assertCount(string $path, int $count, bool $recursive = false)

Assert that the number of files in path equals the expected count.

assertMissing(array|string $path)

Assert that the given file or directory does not exist.

assertDirectoryEmpty(string $path)

Assert that the given directory is empty.

assertEmpty()

Assert that the disk contains no files.

bool
exists(string $path)

Determine if a file or directory exists.

bool
missing(string $path)

Determine if a file or directory is missing.

bool
fileExists(string $path)

Determine if a file exists.

bool
fileMissing(string $path)

Determine if a file is missing.

bool
directoryExists(string $path)

Determine if a directory exists.

bool
directoryMissing(string $path)

Determine if a directory is missing.

string
path(string $path)

Get the full path to the file that exists at the given relative path.

bool
has(string $location)

Determine if a file or directory exists using the Flysystem operator.

string
read(string $location)

Read a file using the Flysystem operator.

int
fileSize(string $path)

Get a file size using the Flysystem operator.

string
visibility(string $path)

Get raw Flysystem visibility for a path.

void
write(string $location, string $contents, array $config = [])

Write a file using the Flysystem operator.

void
createDirectory(string $location, array $config = [])

Create a directory using the Flysystem operator.

string|null
get(string $path)

Get the contents of a file.

array|bool|float|int|string|null
json(string $path, int $flags = 0)

Get the contents of a file as decoded JSON.

StreamedResponse
response(string $path, string|null $name = null, array $headers = [], string $disposition = 'inline')

Create a streamed response for a given file.

Response
serve(Request $request, string $path, string|null $name = null, array $headers = [])

Create a streamed response for serving a given file.

StreamedResponse
download(string $path, string|null $name = null, array $headers = [])

Create a streamed download response for a given file.

image(string $path)

Create an image instance from a file in storage.

bool|string
put(string $path, mixed $contents, mixed $options = [])

Write the contents of a file.

false|string
putFile(string|File|UploadedFile $path, array|string|File|UploadedFile|null $file = null, mixed $options = [])

Store the uploaded file on the disk.

false|string
putFileAs(string|File|UploadedFile $path, array|string|File|UploadedFile|null $file, array|string|null $name = null, mixed $options = [])

Store the uploaded file on the disk with a given name.

string
getVisibility(string $path)

Get the visibility for the given path.

bool
setVisibility(string $path, string $visibility)

Set the visibility for the given path.

bool
prepend(string $path, string $data, string $separator = PHP_EOL)

Prepend to a file.

bool
append(string $path, string $data, string $separator = PHP_EOL)

Append to a file.

bool
delete(array|string $paths)

Delete the file at a given path.

bool
copy(string $from, string $to)

Copy a file to a new location.

bool
move(string $from, string $to)

Move a file to a new location.

int
size(string $path)

Get the file size of a given file.

false|string
checksum(string $path, array $options = [])

Get the checksum for a file.

false|string
mimeType(string $path)

Get the mime-type of a given file.

int
lastModified(string $path)

Get the file's last modification time.

mixed
readStream(string $path)

Get a resource to read the file.

mixed
readStreamRange(string $path, int|null $start, int|null $end)

Get a resource to read the partial file.

bool
writeStream(string $path, mixed $resource, array $options = [])

Write a new file using a stream.

string
url(string $path)

Get the URL for the file at the given path.

bool
providesTemporaryUrls()

Determine if temporary URLs can be generated.

bool
providesTemporaryUploadUrls()

Determine if temporary upload URLs can be generated.

string
temporaryUrl(string $path, DateTimeInterface $expiration, array $options = [])

Get a temporary URL for the file at the given path.

array|string
temporaryUploadUrl(string $path, DateTimeInterface $expiration, array $options = [])

Get a temporary upload URL for the file at the given path.

array
files(string|null $directory = null, bool $recursive = false)

Get an array of all files in a directory.

array
allFiles(string|null $directory = null)

Get all of the files from the given directory recursively.

array
directories(string|null $directory = null, bool $recursive = false)

Get all of the directories within a given directory.

array
allDirectories(string|null $directory = null)

Get all of the directories within a given directory recursively.

bool
makeDirectory(string $path)

Create a directory.

bool
deleteDirectory(string $directory)

Recursively delete a directory.

never
getDriver()

Reject access to the borrowed Flysystem driver.

never
getAdapter()

Reject access to the borrowed Flysystem adapter.

never
getClient()

Reject access to a borrowed client.

mixed
withDriver(Closure $callback)

Run a callback with borrow-scoped access to the Flysystem driver.

FilesystemOperator
getOperator()

Get an operator that owns each operation's borrow and each stream's lease.

mixed
withAdapter(Closure $callback)

Run a callback with borrow-scoped access to the Flysystem adapter.

mixed
withClient(Closure $callback)

Run a callback with borrow-scoped access to the driver client.

array
getConfig()

Get the disk configuration.

void
serveUsing(Closure|null $callback)

Define a custom callback that generates file download responses.

void
buildTemporaryUrlsUsing(Closure|null $callback)

Define a custom temporary URL builder callback.

void
buildTemporaryUploadUrlsUsing(Closure|null $callback)

Define a custom temporary upload URL builder callback.

mixed
invoke(string $method, array $parameters)

Invoke a synchronous method within one borrow.

mixed
leasedStream(Closure $operation)

Open a stream that retains its lease until closure.

mixed
withBorrowedAccessor(string $accessor, Closure $callback)

Run a callback with an accessor result from a borrowed filesystem.

StreamedResponse
buildFileResponse(Request $request, string $path, string|null $name, array $headers, string $disposition)

Build a file response using short borrows and a leased stream.

borrowedInternalsException()

Create the exception used for every rejected borrowed-internal accessor.

never
__call(string $method, array $parameters)

Reject methods that have not been audited for deferred results.

Details

in Conditionable at line 23
mixed when(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) truthy.

Parameters

mixed $value
callable|null $callback
callable|null $default

Return Value

mixed

in Conditionable at line 56
mixed unless(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) falsy.

Parameters

mixed $value
callable|null $callback
callable|null $default

Return Value

mixed

in TransfersFiles at line 21
bool copyToDisk(Filesystem|string|UnitEnum $disk, string $from, string|null $to = null)

Copy a file to another disk.

Parameters

Filesystem|string|UnitEnum $disk
string $from
string|null $to

Return Value

bool

in TransfersFiles at line 33
bool moveToDisk(Filesystem|string|UnitEnum $disk, string $from, string|null $to = null)

Move a file to another disk.

Parameters

Filesystem|string|UnitEnum $disk
string $from
string|null $to

Return Value

bool

in TransfersFiles at line 41
protected bool transferFile(Filesystem $source, string $from, Filesystem $destination, string $to)

Transfer a file without holding a source lease during the destination write.

Parameters

Filesystem $source
string $from
Filesystem $destination
string $to

Return Value

bool

at line 42
InteractsWithPooledFilesystem assertExists(array|string $path, string|null $content = null)

Assert that the given file or directory exists.

Parameters

array|string $path
string|null $content

Return Value

InteractsWithPooledFilesystem

at line 52
InteractsWithPooledFilesystem assertCount(string $path, int $count, bool $recursive = false)

Assert that the number of files in path equals the expected count.

Parameters

string $path
int $count
bool $recursive

Return Value

InteractsWithPooledFilesystem

at line 62
InteractsWithPooledFilesystem assertMissing(array|string $path)

Assert that the given file or directory does not exist.

Parameters

array|string $path

Return Value

InteractsWithPooledFilesystem

at line 72
InteractsWithPooledFilesystem assertDirectoryEmpty(string $path)

Assert that the given directory is empty.

Parameters

string $path

Return Value

InteractsWithPooledFilesystem

at line 82
InteractsWithPooledFilesystem assertEmpty()

Assert that the disk contains no files.

at line 92
bool exists(string $path)

Determine if a file or directory exists.

Parameters

string $path

Return Value

bool

at line 100
bool missing(string $path)

Determine if a file or directory is missing.

Parameters

string $path

Return Value

bool

at line 108
bool fileExists(string $path)

Determine if a file exists.

Parameters

string $path

Return Value

bool

at line 116
bool fileMissing(string $path)

Determine if a file is missing.

Parameters

string $path

Return Value

bool

at line 124
bool directoryExists(string $path)

Determine if a directory exists.

Parameters

string $path

Return Value

bool

at line 132
bool directoryMissing(string $path)

Determine if a directory is missing.

Parameters

string $path

Return Value

bool

at line 140
string path(string $path)

Get the full path to the file that exists at the given relative path.

Parameters

string $path

Return Value

string

at line 148
bool has(string $location)

Determine if a file or directory exists using the Flysystem operator.

Parameters

string $location

Return Value

bool

at line 156
string read(string $location)

Read a file using the Flysystem operator.

Parameters

string $location

Return Value

string

at line 164
int fileSize(string $path)

Get a file size using the Flysystem operator.

Parameters

string $path

Return Value

int

at line 172
string visibility(string $path)

Get raw Flysystem visibility for a path.

Parameters

string $path

Return Value

string

at line 180
void write(string $location, string $contents, array $config = [])

Write a file using the Flysystem operator.

Parameters

string $location
string $contents
array $config

Return Value

void

at line 188
void createDirectory(string $location, array $config = [])

Create a directory using the Flysystem operator.

Parameters

string $location
array $config

Return Value

void

at line 196
string|null get(string $path)

Get the contents of a file.

Parameters

string $path

Return Value

string|null

at line 204
array|bool|float|int|string|null json(string $path, int $flags = 0)

Get the contents of a file as decoded JSON.

Parameters

string $path
int $flags

Return Value

array|bool|float|int|string|null

at line 212
StreamedResponse response(string $path, string|null $name = null, array $headers = [], string $disposition = 'inline')

Create a streamed response for a given file.

Parameters

string $path
string|null $name
array $headers
string $disposition

Return Value

StreamedResponse

at line 230
Response serve(Request $request, string $path, string|null $name = null, array $headers = [])

Create a streamed response for serving a given file.

Parameters

Request $request
string $path
string|null $name
array $headers

Return Value

Response

at line 240
StreamedResponse download(string $path, string|null $name = null, array $headers = [])

Create a streamed download response for a given file.

Parameters

string $path
string|null $name
array $headers

Return Value

StreamedResponse

at line 248
Image image(string $path)

Create an image instance from a file in storage.

Parameters

string $path

Return Value

Image

at line 261
bool|string put(string $path, mixed $contents, mixed $options = [])

Write the contents of a file.

Parameters

string $path
mixed $contents
mixed $options

Return Value

bool|string

at line 269
false|string putFile(string|File|UploadedFile $path, array|string|File|UploadedFile|null $file = null, mixed $options = [])

Store the uploaded file on the disk.

Parameters

string|File|UploadedFile $path
array|string|File|UploadedFile|null $file
mixed $options

Return Value

false|string

at line 280
false|string putFileAs(string|File|UploadedFile $path, array|string|File|UploadedFile|null $file, array|string|null $name = null, mixed $options = [])

Store the uploaded file on the disk with a given name.

Parameters

string|File|UploadedFile $path
array|string|File|UploadedFile|null $file
array|string|null $name
mixed $options

Return Value

false|string

at line 292
string getVisibility(string $path)

Get the visibility for the given path.

Parameters

string $path

Return Value

string

at line 300
bool setVisibility(string $path, string $visibility)

Set the visibility for the given path.

Parameters

string $path
string $visibility

Return Value

bool

at line 308
bool prepend(string $path, string $data, string $separator = PHP_EOL)

Prepend to a file.

Parameters

string $path
string $data
string $separator

Return Value

bool

at line 316
bool append(string $path, string $data, string $separator = PHP_EOL)

Append to a file.

Parameters

string $path
string $data
string $separator

Return Value

bool

at line 324
bool delete(array|string $paths)

Delete the file at a given path.

Parameters

array|string $paths

Return Value

bool

at line 332
bool copy(string $from, string $to)

Copy a file to a new location.

Parameters

string $from
string $to

Return Value

bool

at line 340
bool move(string $from, string $to)

Move a file to a new location.

Parameters

string $from
string $to

Return Value

bool

at line 348
int size(string $path)

Get the file size of a given file.

Parameters

string $path

Return Value

int

at line 356
false|string checksum(string $path, array $options = [])

Get the checksum for a file.

Parameters

string $path
array $options

Return Value

false|string

at line 364
false|string mimeType(string $path)

Get the mime-type of a given file.

Parameters

string $path

Return Value

false|string

at line 372
int lastModified(string $path)

Get the file's last modification time.

Parameters

string $path

Return Value

int

at line 382
mixed readStream(string $path)

Get a resource to read the file.

Parameters

string $path

Return Value

mixed

the leased resource or null on failure

at line 394
mixed readStreamRange(string $path, int|null $start, int|null $end)

Get a resource to read the partial file.

Parameters

string $path
int|null $start
int|null $end

Return Value

mixed

the leased resource or null on failure

at line 406
bool writeStream(string $path, mixed $resource, array $options = [])

Write a new file using a stream.

Parameters

string $path
mixed $resource
array $options

Return Value

bool

at line 414
string url(string $path)

Get the URL for the file at the given path.

Parameters

string $path

Return Value

string

at line 422
bool providesTemporaryUrls()

Determine if temporary URLs can be generated.

Return Value

bool

at line 430
bool providesTemporaryUploadUrls()

Determine if temporary upload URLs can be generated.

Return Value

bool

at line 438
string temporaryUrl(string $path, DateTimeInterface $expiration, array $options = [])

Get a temporary URL for the file at the given path.

Parameters

string $path
DateTimeInterface $expiration
array $options

Return Value

string

at line 446
array|string temporaryUploadUrl(string $path, DateTimeInterface $expiration, array $options = [])

Get a temporary upload URL for the file at the given path.

Parameters

string $path
DateTimeInterface $expiration
array $options

Return Value

array|string

at line 457
array files(string|null $directory = null, bool $recursive = false)

Get an array of all files in a directory.

Parameters

string|null $directory
bool $recursive

Return Value

array

at line 465
array allFiles(string|null $directory = null)

Get all of the files from the given directory recursively.

Parameters

string|null $directory

Return Value

array

at line 473
array directories(string|null $directory = null, bool $recursive = false)

Get all of the directories within a given directory.

Parameters

string|null $directory
bool $recursive

Return Value

array

at line 481
array allDirectories(string|null $directory = null)

Get all of the directories within a given directory recursively.

Parameters

string|null $directory

Return Value

array

at line 489
bool makeDirectory(string $path)

Create a directory.

Parameters

string $path

Return Value

bool

at line 497
bool deleteDirectory(string $directory)

Recursively delete a directory.

Parameters

string $directory

Return Value

bool

at line 505
never getDriver()

Reject access to the borrowed Flysystem driver.

Return Value

never

at line 513
never getAdapter()

Reject access to the borrowed Flysystem adapter.

Return Value

never

at line 521
never getClient()

Reject access to a borrowed client.

Return Value

never

at line 529
mixed withDriver(Closure $callback)

Run a callback with borrow-scoped access to the Flysystem driver.

Parameters

Closure $callback

Return Value

mixed

at line 537
FilesystemOperator getOperator()

Get an operator that owns each operation's borrow and each stream's lease.

Return Value

FilesystemOperator

at line 565
mixed withAdapter(Closure $callback)

Run a callback with borrow-scoped access to the Flysystem adapter.

Parameters

Closure $callback

Return Value

mixed

at line 573
mixed withClient(Closure $callback)

Run a callback with borrow-scoped access to the driver client.

Parameters

Closure $callback

Return Value

mixed

at line 583
array getConfig()

Get the disk configuration.

Nested objects remain shared references; the configuration is not deep-copied.

Return Value

array

at line 594
void serveUsing(Closure|null $callback)

Define a custom callback that generates file download responses.

Boot-only. The callback persists on the manager-cached disk for the worker lifetime and is written to every borrowed adapter.

Parameters

Closure|null $callback

Return Value

void

at line 605
void buildTemporaryUrlsUsing(Closure|null $callback)

Define a custom temporary URL builder callback.

Boot-only. The callback persists on the manager-cached disk for the worker lifetime and is written to every borrowed adapter.

Parameters

Closure|null $callback

Return Value

void

at line 616
void buildTemporaryUploadUrlsUsing(Closure|null $callback)

Define a custom temporary upload URL builder callback.

Boot-only. The callback persists on the manager-cached disk for the worker lifetime and is written to every borrowed adapter.

Parameters

Closure|null $callback

Return Value

void

at line 624
abstract protected mixed invoke(string $method, array $parameters)

Invoke a synchronous method within one borrow.

Parameters

string $method
array $parameters

Return Value

mixed

at line 631
abstract protected mixed leasedStream(Closure $operation)

Open a stream that retains its lease until closure.

Parameters

Closure $operation

Return Value

mixed

at line 636
abstract protected mixed withBorrowedAccessor(string $accessor, Closure $callback)

Run a callback with an accessor result from a borrowed filesystem.

Parameters

string $accessor
Closure $callback

Return Value

mixed

at line 641
protected StreamedResponse buildFileResponse(Request $request, string $path, string|null $name, array $headers, string $disposition)

Build a file response using short borrows and a leased stream.

Parameters

Request $request
string $path
string|null $name
array $headers
string $disposition

Return Value

StreamedResponse

at line 667
protected RuntimeException borrowedInternalsException()

Create the exception used for every rejected borrowed-internal accessor.

Return Value

RuntimeException

at line 678
never __call(string $method, array $parameters)

Reject methods that have not been audited for deferred results.

Parameters

string $method
array $parameters

Return Value

never