Class \Scrivo\File

Extends \Scrivo\Asset .
Defined in: File.php.


Constructor summary

Attr. Name / Description
public

File($context)

Create an empty asset object.

Constant summary

Name Description
TYPE_FILE Value indicating that the asset is a file.
TYPE_FOLDER Value indicating that the asset is a folder.

Member summary

Attr. Type Name Description
protected \..\AssetSet $children The child assets of this asset.
protected \..\Context $context A Scrivo context.
protected DateTime $dateCreated The date/time that this asset was created.
protected DateTime $dateModified The last date/time that this asset was modified.
private DateTime $dateOffline The date/time this asset need to go offline.
private DateTime $dateOnline The date/time this asset need to go online.
protected int $id The asset id (DB key).
private \..\String $location The asset location.
private \..\String $mimeType The asset mimeType.
protected int $parentId The id of the parent asset.
protected \..\AssetSet $path The parent assets of this asset.
protected \..\RoleSet $roles The attached roles.
private int $size The size in bytes of the asset.
protected \..\String $title The asset title.
protected int $type The asset type: one out of the Asset::TYPE_* constant values.

Method summary

Attr. Type Name / Description
public mixed

__get($name)

Implementation of the readable properties using the PHP magic method __get().

public

__set($name, $value)

Implementation of the writable properties using the PHP magic method __set().

private boolean

checkUnique()

Test if the asset title is unique within the scope of the directory.

public static

delete($context, $id)

Delete an existing asset from the database.

public static

fetch($context, $id)

Retrieve a asset from the database or cache.

private \..\AssetSet

getChildren()

Get the child assets of this asset.

private \..\AssetSet

getPath()

Get the child assets of this asset.

private

getUniqueName()

Get a unique filename within the scope of the selected directory.

public

insert()

Insert a new asset into the database.

public

move($dir)

Move a asset one position up or down amongst its siblings.

private static \..\AssetSet

selectChildren($asset)

Select child assets from the database.

protected static \..\AssetSet

selectPath($asset)

Select the asset path.

private static

selectRoles($context, $assets)

Select the roles for this asset.

private

setContext($context)

Set the asset context.

private

setDateOffline($dateOffline)

Set the date/time this asset need to go offline.

private

setDateOnline($dateOnline)

Set the date/time this asset needs to go online.

protected

setFields($context, $rd)

Convenience method to set the fields of a asset definition object from an array (result set row).

private

setLocation($location)

Set the asset location (<location>).

private

setMimeType($mimeType)

Set the mimeType for this asset (<mimeType>).

private

setParentId($parentId)

Set the id of the parent asset.

private

setSize($size)

Set the id of the asset template.

private

setTitle($title)

Set The asset title (<title>).

private

setType($type)

Set the asset type: one out of the Asset::TYPE_* constant values.

public

update()

Update an existing asset in the database.

protected static

validateDelete($context, $id)

Check if deletion of asset object data does not violate any business rules.

private

validateInsert()

Check if the asset data can be inserted into the database.

private

validateUpdate()

Check if this the asset data can be updated in the database.

 


Constructor

public File(\Scrivo\Context $context=null)

Create an empty asset object.

Parameters:

Type Name Def. Description
\Scrivo\Context $context null

A Scrivo context.


Constants

TYPE_FILE

Value indicating that the asset is a file.

Inherited from \Scrivo\Asset

Value: 1

TYPE_FOLDER

Value indicating that the asset is a folder.

Inherited from \Scrivo\Asset

Value: 0


Members


				
protected \Scrivo\AssetSet $children

The child assets of this asset.

Inherited from \Scrivo\Asset

Inital value: null


				
protected \Scrivo\Context $context

A Scrivo context.

Inherited from \Scrivo\Asset

Inital value: null


				
protected \DateTime $dateCreated

The date/time that this asset was created.

Inherited from \Scrivo\Asset

Inital value: null


				
protected \DateTime $dateModified

The last date/time that this asset was modified.

Inherited from \Scrivo\Asset

Inital value: null


				
private \DateTime $dateOffline

The date/time this asset need to go offline.

Inital value: null


				
private \DateTime $dateOnline

The date/time this asset need to go online.

Inital value: null


				
protected int $id

The asset id (DB key).

Inherited from \Scrivo\Asset

Inital value: 0


				
private \Scrivo\String $location

The asset location.

Inital value: null


				
private \Scrivo\String $mimeType

The asset mimeType.

Inital value: null


				
protected int $parentId

The id of the parent asset.

Inherited from \Scrivo\Asset

Inital value: 0


				
protected \Scrivo\AssetSet $path

The parent assets of this asset.

Inherited from \Scrivo\Asset

Inital value: null


				
protected \Scrivo\RoleSet $roles

The attached roles.

Inherited from \Scrivo\Asset

Inital value: null


				
private int $size

The size in bytes of the asset.

Inital value: 0


				
protected \Scrivo\String $title

The asset title.

Inherited from \Scrivo\Asset

Inital value: null


				
protected int $type

The asset type: one out of the Asset::TYPE_* constant values.

Inherited from \Scrivo\Asset

Inital value: 0


Methods

public mixed __get(string $name)

Implementation of the readable properties using the PHP magic method __get().

Parameters:

Type Name Def. Description
string $name

The name of the property to get.

Returns:

mixed Implementation of the readable properties using the PHP magic method __get().

public __set(string $name, mixed $value)

Implementation of the writable properties using the PHP magic method __set().

Parameters:

Type Name Def. Description
string $name

The name of the property to set.

mixed $value

The value of the property to set.

private boolean checkUnique()

Test if the asset title is unique within the scope of the directory.

Returns:

boolean Test if the asset title is unique within the scope of the directory.

public static delete(\Scrivo\Context $context, int $id)

Delete an existing asset from the database.

First it is is checked if it's possible to delete this asset then the asset data including its dependecies is deleted from the database.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\Context $context

A Scrivo context.

int $id

The id of the asset to delete.

Throws:

Exception Type Description
\Scrivo\ApplicationException If it is not possible to delete this asset.
public static fetch(\Scrivo\Context $context, int $id=null)

Retrieve a asset from the database or cache.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\Context $context

A Scrivo context.

int $id null

An object id of a asset.

Throws:

Exception Type Description
\Scrivo\ApplicationException if the asset was not readable for the user defined in the context.
private \Scrivo\AssetSet getChildren()

Get the child assets of this asset.

Inherited from \Scrivo\Asset

Returns:

\Scrivo\AssetSet Get the child assets of this asset.

private \Scrivo\AssetSet getPath()

Get the child assets of this asset.

Inherited from \Scrivo\Asset

Returns:

\Scrivo\AssetSet Get the child assets of this asset.

private getUniqueName()

Get a unique filename within the scope of the selected directory.

public insert()

Insert a new asset into the database.

First the data fields of this asset will be validated. If no id is set a new object id is generated. Then the data is inserted into to database.

Throws:

Exception Type Description
\Scrivo\ApplicationException If one or more of the fields contain invalid data.
public move(int $dir=\Scrivo\SequenceNo::MOVE_DOWN)

Move a asset one position up or down amongst its siblings.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
int $dir \Scrivo\SequenceNo::MOVE_DOWN

Direction of the move, see \Scrivo\SequenceNo:::MOVE_*

private static \Scrivo\AssetSet selectChildren(\Scrivo\Asset $asset)

Select child assets from the database.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\Asset $asset

A Scrivo asset.

Returns:

\Scrivo\AssetSet Select child assets from the database.

protected static \Scrivo\AssetSet selectPath(\Scrivo\Asset $asset)

Select the asset path.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\Asset $asset

A Scrivo asset.

Returns:

\Scrivo\AssetSet Select the asset path.

private static selectRoles(\Scrivo\Context $context, array $assets)

Select the roles for this asset.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\Context $context

A valid Scrivo context.

array $assets

the set of assets for which to retrieve the properties.

private setContext(\Scrivo\Context $context)

Set the asset context.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\Context $context

A Scrivo context.

private setDateOffline(\DateTime $dateOffline=null)

Set the date/time this asset need to go offline.

Parameters:

Type Name Def. Description
\DateTime $dateOffline null

The date/time this asset need to go offline.

private setDateOnline(\DateTime $dateOnline)

Set the date/time this asset needs to go online.

Parameters:

Type Name Def. Description
\DateTime $dateOnline

The date/time this asset needs to go online.

protected setFields(\Scrivo\Context $context, array $rd)

Convenience method to set the fields of a asset definition object from an array (result set row).

Parameters:

Type Name Def. Description
\Scrivo\Context $context

A Scrivo context.

array $rd

An array containing the field data using the database field names as keys.

private setLocation(\Scrivo\String $location)

Set the asset location (<location>).

Parameters:

Type Name Def. Description
\Scrivo\String $location

The asset location (<location>).

private setMimeType(\Scrivo\String $mimeType)

Set the mimeType for this asset (<mimeType>).

Parameters:

Type Name Def. Description
\Scrivo\String $mimeType

The mimeType for this asset (<mimeType>).

private setParentId(int $parentId)

Set the id of the parent asset.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
int $parentId

The id of the parent asset.

private setSize(int $size)

Set the id of the asset template.

Parameters:

Type Name Def. Description
int $size

The id ot the asset template.

private setTitle(\Scrivo\String $title)

Set The asset title (<title>).

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
\Scrivo\String $title

The asset title (<title>).

private setType(int $type)

Set the asset type: one out of the Asset::TYPE_* constant values.

Inherited from \Scrivo\Asset

Parameters:

Type Name Def. Description
int $type

The asset type: one out of the Asset::TYPE_* constant values.

public update()

Update an existing asset in the database.

First the data fields of this user will be validated, then the data is updated in to database.

Throws:

Exception Type Description
\Scrivo\ApplicationException If one or more of the fields contain invalid data.
protected static validateDelete(\Scrivo\Context $context, int $id)

Check if deletion of asset object data does not violate any business rules.

Parameters:

Type Name Def. Description
\Scrivo\Context $context

A Scrivo context.

int $id

The object id of the asset definition to select.

Throws:

Exception Type Description
\Scrivo\ApplicationException If the data is not accessible or if it is not possible to delete the language data.
private validateInsert()

Check if the asset data can be inserted into the database.

Throws:

Exception Type Description
\Scrivo\ApplicationException If the data is not accessible, one or more of the fields contain invalid data or some other business rule is not met.
private validateUpdate()

Check if this the asset data can be updated in the database.

Throws:

Exception Type Description
\Scrivo\ApplicationException If the data is not accessible, one or more of the fields contain invalid data or some other business rule is not met.

Documentation generated by phpDocumentor 2.0.0a12 and ScrivoDocumentor on August 29, 2013