TreeFileTester
extends File
in package
implements
IProperties
File class.
This is a helper class, that should aid in getting file classes setup. Most of its methods are implemented, and throw permission denied exceptions
Interfaces, Classes and Traits
- IProperties
- IProperties interface.
Table of Contents
- $data : mixed
- $name : mixed
- $properties : mixed
- __construct() : mixed
- delete() : mixed
- Deletes the current node.
- get() : mixed
- Returns the data.
- getContentType() : string|null
- Returns the mime-type for a file.
- getETag() : string|null
- Returns the ETag for a file.
- getLastModified() : int
- Returns the last modification time as a unix timestamp.
- getName() : mixed
- getProperties() : array<string|int, mixed>
- Returns a list of properties for this nodes.
- getSize() : int
- Returns the size of the file, in bytes.
- propPatch() : mixed
- Updates properties on this node.
- put() : string|null
- Replaces the contents of the file.
- setName() : mixed
- Renames the node.
Properties
$data
public
mixed
$data
$name
public
mixed
$name
$properties
public
mixed
$properties
Methods
__construct()
public
__construct(mixed $name[, mixed $data = null ]) : mixed
Parameters
- $name : mixed
- $data : mixed = null
Return values
mixed —delete()
Deletes the current node.
public
delete() : mixed
Tags
Return values
mixed —get()
Returns the data.
public
get() : mixed
This method may either return a string or a readable stream resource
Return values
mixed —getContentType()
Returns the mime-type for a file.
public
getContentType() : string|null
If null is returned, we'll assume application/octet-stream
Return values
string|null —getETag()
Returns the ETag for a file.
public
getETag() : string|null
An ETag is a unique identifier representing the current version of the file. If the file changes, the ETag MUST change. The ETag is an arbitrary string, but MUST be surrounded by double-quotes.
Return null if the ETag can not effectively be determined
Return values
string|null —getLastModified()
Returns the last modification time as a unix timestamp.
public
getLastModified() : int
If the information is not available, return null.
Return values
int —getName()
public
getName() : mixed
Return values
mixed —getProperties()
Returns a list of properties for this nodes.
public
getProperties(mixed $properties) : array<string|int, mixed>
The properties list is a list of propertynames the client requested, encoded in clark-notation {xmlnamespace}tagname
If the array is empty, it means 'all properties' were requested.
Note that it's fine to liberally give properties back, instead of conforming to the list of requested properties. The Server class will filter out the extra.
Parameters
- $properties : mixed
Return values
array<string|int, mixed> —getSize()
Returns the size of the file, in bytes.
public
getSize() : int
Return values
int —propPatch()
Updates properties on this node.
public
propPatch(PropPatch $propPatch) : mixed
This method received a PropPatch object, which contains all the information about the update.
To update specific properties, call the 'handle' method on this object. Read the PropPatch documentation for more information.
Parameters
- $propPatch : PropPatch
Return values
mixed —put()
Replaces the contents of the file.
public
put(string|resource $data) : string|null
The data argument is a readable stream resource.
After a successful put operation, you may choose to return an ETag. The etag must always be surrounded by double-quotes. These quotes must appear in the actual string you're returning.
Clients may use the ETag from a PUT request to later on make sure that when they update the file, the contents haven't changed in the mean time.
If you don't plan to store the file byte-by-byte, and you return a different object on a subsequent GET you are strongly recommended to not return an ETag, and just return null.
Parameters
- $data : string|resource
Return values
string|null —setName()
Renames the node.
public
setName(string $name) : mixed
Parameters
- $name : string
-
The new name