AssetManipulationList
class AssetManipulationList (View source)
Provides a mechanism for determining the effective visibility of a set of assets (identified by filename and hash), given their membership to objects of varying visibility.
The effective visibility of assets is based on three rules:
- If an asset is attached to any public record, that asset is public.
- If an asset is not attached to any public record, but is attached to a protected record, that asset is protected.
- If an asset is attached to a record being deleted, but not any existing public or protected record, then that asset is marked for deletion.
Variants are ignored for the purpose of determining visibility
Constants
STATE_PUBLIC |
|
STATE_PROTECTED |
|
STATE_DELETED |
|
Properties
protected | array | $public | List of public assets |
|
protected | array | $protected | List of protected assets |
|
protected | array | $deleted | List of deleted assets |
Methods
Details
protected string
getAssetKey(array $asset)
Get an identifying key for a given filename and hash
bool
addAsset(array $asset, string $state)
Add asset with the given state
bool
addPublicAsset(array $asset)
Mark a file as public
bool
addProtectedAsset(array $asset)
Record an asset as protected
bool
addDeletedAsset(array $asset)
Record an asset as deleted
array
getPublicAssets()
Get all public assets
array
getProtectedAssets()
Get protected assets
array
getDeletedAssets()
Get deleted assets