class AwsS3V3Adapter extends FilesystemAdapter

Traits

Properties

static protected array $macros

The registered string macros.

from  Macroable
protected array $config

The filesystem configuration.

from  FilesystemAdapter
protected PathPrefixer $prefixer

The Flysystem PathPrefixer instance.

from  FilesystemAdapter
protected PathNormalizer $pathNormalizer

The Flysystem path normalizer instance.

from  FilesystemAdapter
protected Closure|null $serveCallback

The file server callback.

from  FilesystemAdapter
protected Closure|null $temporaryUrlCallback

The temporary URL builder callback.

from  FilesystemAdapter
protected Closure|null $temporaryUploadUrlCallback

The temporary upload URL builder callback.

from  FilesystemAdapter
protected S3Client $client

The AWS S3 client.

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.

static void
macro(string $name, callable|object $macro)

Register a custom macro.

static void
mixin(object $mixin, bool $replace = true)

Mix another object into the class.

static bool
hasMacro(string $name)

Check if macro is registered.

static void
flushMacros()

Flush the existing macros.

static mixed
__callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

mixed
__call(string $method, array $parameters)

Dynamically handle calls to the class.

__construct(FilesystemOperator $driver, FilesystemAdapter $adapter, array $config, S3Client $client)

Create a new AwsS3V3FilesystemAdapter instance.

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.

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.

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

Build a file response using the supplied request context.

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 without dropping configured HTTP options.

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

Get a resource to read a byte range without downloading the full object.

array
normalizeStreamRange(int|null $start, int|null $end)

Normalize and validate byte-range stream arguments.

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.

string
getFtpUrl(string $path)

Get the URL for the file at the given path.

string
getLocalUrl(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.

string
concatPathToUrl(string $url, string $path)

Concatenate a path to a URL.

UriInterface
replaceBaseUrl(UriInterface $uri, string $url)

Replace the scheme, host and port of the given UriInterface with values from the given URL.

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 (recursive).

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 the directories within a given directory (recursive).

bool
makeDirectory(string $path)

Create a directory.

bool
deleteDirectory(string $directory)

Recursively delete a directory.

FilesystemOperator
getDriver()

Get the Flysystem driver.

FilesystemAdapter
getAdapter()

Get the Flysystem adapter.

array
getConfig()

Get the configuration values.

string|null
parseVisibility(string|null $visibility)

Parse the given visibility value.

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.

Closure|null
prepareTemporaryUrlCallback(Closure|null $callback)

Prepare a temporary URL callback for direct invocation.

bool
throwsExceptions()

Determine if Flysystem exceptions should be thrown.

void
report(Throwable $exception)

Report the exception.

bool
shouldReport()

Determine if Flysystem exceptions should be reported.

static void
flushState()

Flush all static state.

S3Client
getClient()

Get the underlying S3 client.

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 Macroable at line 28
static void macro(string $name, callable|object $macro)

Register a custom macro.

Boot-only. Macros persist in a static property for the worker lifetime and apply to every subsequent call on the macroable class.

Parameters

string $name
callable|object $macro

Return Value

void

in Macroable at line 41
static void mixin(object $mixin, bool $replace = true)

Mix another object into the class.

Boot-only. Delegates to macro() for each method; registered macros persist in a static property for the worker lifetime.

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

in Macroable at line 57
static bool hasMacro(string $name)

Check if macro is registered.

Parameters

string $name

Return Value

bool

in Macroable at line 68
static void flushMacros()

Flush the existing macros.

Boot or tests only. Clears worker-wide macros; concurrent coroutines may resolve different methods depending on timing.

Return Value

void

in Macroable at line 78
static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

in Macroable at line 103
mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

at line 28
__construct(FilesystemOperator $driver, FilesystemAdapter $adapter, array $config, S3Client $client)

Create a new AwsS3V3FilesystemAdapter instance.

Parameters

FilesystemOperator $driver
FilesystemAdapter $adapter
array $config
S3Client $client

in FilesystemAdapter at line 113
FilesystemAdapter 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

FilesystemAdapter

in FilesystemAdapter at line 142
FilesystemAdapter 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

FilesystemAdapter

in FilesystemAdapter at line 160
FilesystemAdapter assertMissing(array|string $path)

Assert that the given file or directory does not exist.

Parameters

array|string $path

Return Value

FilesystemAdapter

in FilesystemAdapter at line 179
FilesystemAdapter assertDirectoryEmpty(string $path)

Assert that the given directory is empty.

Parameters

string $path

Return Value

FilesystemAdapter

in FilesystemAdapter at line 192
FilesystemAdapter assertEmpty()

Assert that the disk contains no files.

Return Value

FilesystemAdapter

in FilesystemAdapter at line 202
bool exists(string $path)

Determine if a file or directory exists.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 210
bool missing(string $path)

Determine if a file or directory is missing.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 218
bool fileExists(string $path)

Determine if a file exists.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 226
bool fileMissing(string $path)

Determine if a file is missing.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 234
bool directoryExists(string $path)

Determine if a directory exists.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 242
bool directoryMissing(string $path)

Determine if a directory is missing.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 250
string path(string $path)

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

Parameters

string $path

Return Value

string

in FilesystemAdapter at line 258
string|null get(string $path)

Get the contents of a file.

Parameters

string $path

Return Value

string|null

in FilesystemAdapter at line 274
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

in FilesystemAdapter at line 284
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

in FilesystemAdapter at line 302
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

in FilesystemAdapter at line 312
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

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

Build a file response using the supplied request context.

Parameters

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

Return Value

StreamedResponse

in FilesystemAdapter at line 348
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

in FilesystemAdapter at line 386
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

in FilesystemAdapter at line 400
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

in FilesystemAdapter at line 435
string getVisibility(string $path)

Get the visibility for the given path.

Parameters

string $path

Return Value

string

in FilesystemAdapter at line 447
bool setVisibility(string $path, string $visibility)

Set the visibility for the given path.

Parameters

string $path
string $visibility

Return Value

bool

in FilesystemAdapter at line 465
bool prepend(string $path, string $data, string $separator = PHP_EOL)

Prepend to a file.

Parameters

string $path
string $data
string $separator

Return Value

bool

in FilesystemAdapter at line 483
bool append(string $path, string $data, string $separator = PHP_EOL)

Append to a file.

Parameters

string $path
string $data
string $separator

Return Value

bool

in FilesystemAdapter at line 501
bool delete(array|string $paths)

Delete the file at a given path.

Parameters

array|string $paths

Return Value

bool

in FilesystemAdapter at line 525
bool copy(string $from, string $to)

Copy a file to a new location.

Parameters

string $from
string $to

Return Value

bool

in FilesystemAdapter at line 543
bool move(string $from, string $to)

Move a file to a new location.

Parameters

string $from
string $to

Return Value

bool

in FilesystemAdapter at line 561
int size(string $path)

Get the file size of a given file.

Parameters

string $path

Return Value

int

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

Get the checksum for a file.

Parameters

string $path
array $options

Return Value

false|string

Exceptions

UnableToProvideChecksum

in FilesystemAdapter at line 587
false|string mimeType(string $path)

Get the mime-type of a given file.

Parameters

string $path

Return Value

false|string

in FilesystemAdapter at line 603
int lastModified(string $path)

Get the file's last modification time.

Parameters

string $path

Return Value

int

at line 127
mixed readStream(string $path)

Get a resource to read the file without dropping configured HTTP options.

Parameters

string $path

Return Value

mixed

the path resource or null on failure

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

Get a resource to read a byte range without downloading the full object.

Parameters

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

Return Value

mixed

the path resource or null on failure

in FilesystemAdapter at line 691
protected array normalizeStreamRange(int|null $start, int|null $end)

Normalize and validate byte-range stream arguments.

Parameters

int|null $start
int|null $end

Return Value

array

in FilesystemAdapter at line 713
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 42
string url(string $path)

Get the URL for the file at the given path.

Parameters

string $path

Return Value

string

Exceptions

RuntimeException

in FilesystemAdapter at line 759
protected string getFtpUrl(string $path)

Get the URL for the file at the given path.

Parameters

string $path

Return Value

string

in FilesystemAdapter at line 769
protected string getLocalUrl(string $path)

Get the URL for the file at the given path.

Parameters

string $path

Return Value

string

at line 60
bool providesTemporaryUrls()

Determine if temporary URLs can be generated.

Return Value

bool

in FilesystemAdapter at line 801
bool providesTemporaryUploadUrls()

Determine if temporary upload URLs can be generated.

Return Value

bool

at line 68
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 94
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

in FilesystemAdapter at line 853
protected string concatPathToUrl(string $url, string $path)

Concatenate a path to a URL.

Parameters

string $url
string $path

Return Value

string

in FilesystemAdapter at line 861
protected UriInterface replaceBaseUrl(UriInterface $uri, string $url)

Replace the scheme, host and port of the given UriInterface with values from the given URL.

Parameters

UriInterface $uri
string $url

Return Value

UriInterface

in FilesystemAdapter at line 874
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

in FilesystemAdapter at line 890
array allFiles(string|null $directory = null)

Get all of the files from the given directory (recursive).

Parameters

string|null $directory

Return Value

array

in FilesystemAdapter at line 898
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

in FilesystemAdapter at line 913
array allDirectories(string|null $directory = null)

Get all the directories within a given directory (recursive).

Parameters

string|null $directory

Return Value

array

in FilesystemAdapter at line 921
bool makeDirectory(string $path)

Create a directory.

Parameters

string $path

Return Value

bool

in FilesystemAdapter at line 939
bool deleteDirectory(string $directory)

Recursively delete a directory.

Parameters

string $directory

Return Value

bool

in FilesystemAdapter at line 957
FilesystemOperator getDriver()

Get the Flysystem driver.

Return Value

FilesystemOperator

in FilesystemAdapter at line 965
FilesystemAdapter getAdapter()

Get the Flysystem adapter.

Return Value

FilesystemAdapter

in FilesystemAdapter at line 973
array getConfig()

Get the configuration values.

Return Value

array

in FilesystemAdapter at line 983
protected string|null parseVisibility(string|null $visibility)

Parse the given visibility value.

Parameters

string|null $visibility

Return Value

string|null

Exceptions

InvalidArgumentException

in FilesystemAdapter at line 1002
void serveUsing(Closure|null $callback)

Define a custom callback that generates file download responses.

Boot-only. The callback persists on the cached disk adapter for the worker lifetime and runs on every subsequent serve() call for that disk.

Parameters

Closure|null $callback

Return Value

void

in FilesystemAdapter at line 1014
void buildTemporaryUrlsUsing(Closure|null $callback)

Define a custom temporary URL builder callback.

Boot-only. The callback persists on the cached disk adapter for the worker lifetime and runs on every subsequent temporary URL generation for that disk.

Parameters

Closure|null $callback

Return Value

void

in FilesystemAdapter at line 1026
void buildTemporaryUploadUrlsUsing(Closure|null $callback)

Define a custom temporary upload URL builder callback.

Boot-only. The callback persists on the cached disk adapter for the worker lifetime and runs on every subsequent temporary upload URL generation for that disk.

Parameters

Closure|null $callback

Return Value

void

in FilesystemAdapter at line 1034
protected Closure|null prepareTemporaryUrlCallback(Closure|null $callback)

Prepare a temporary URL callback for direct invocation.

Parameters

Closure|null $callback

Return Value

Closure|null

in FilesystemAdapter at line 1053
protected bool throwsExceptions()

Determine if Flysystem exceptions should be thrown.

Return Value

bool

in FilesystemAdapter at line 1063
protected void report(Throwable $exception)

Report the exception.

Parameters

Throwable $exception

Return Value

void

Exceptions

Throwable

in FilesystemAdapter at line 1073
protected bool shouldReport()

Determine if Flysystem exceptions should be reported.

Return Value

bool

in FilesystemAdapter at line 1081
static void flushState()

Flush all static state.

Return Value

void

at line 199
S3Client getClient()

Get the underlying S3 client.

Return Value

S3Client