Documentation

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

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
throws
Forbidden
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

Tags
throws
Forbidden
Return values
mixed

Search results