StaticFileCollection extends AbstractFileCollection
A collection containing a static set of files. This collection is persisted to the database with references to all files it contains.
Table of Contents
Properties
- $description : string
- Collection description
- $itemsCriteria : mixed
- Field contents of $itemsCriteriaField. Defines which the items or search criteria for the items depending on the type (see self::$type above) of this file collection.
- $itemsCriteriaField : string
- The name of the field items are handled with (usually either criteria, items or folder)
- $itemTableName : string
- Name of the table records of this collection are stored in
- $storage : SplDoublyLinkedList
- The local storage
- $storageItemsField : string
- The table name collections are stored to
- $storageTableName : string
- The table name collections are stored to
- $title : string
- Collection title
- $type : string
- The type of file collection (see \TYPO3\CMS\Core\Collection\RecordCollectionRepository::TYPE constants)
- $uid : int
- Uid of the storage
Methods
- __construct() : mixed
- Creates this object.
- __serialize() : array<string|int, mixed>
- Returns class state to be serialized.
- __unserialize() : void
- Load records with the given serialized information
- add() : mixed
- Adds a file to this collection.
- addAll() : mixed
- Adds all files of another collection to the current one.
- count() : int
- Count elements of an object
- create() : CollectionInterface
- Creates a new collection objects and reconstitutes the given database record to the new object.
- current() : T|null
- Return the current element
- fromArray() : mixed
- Similar to method in \TYPO3\CMS\Core\Collection\AbstractRecordCollection, but without $this->itemTableName= $array['table_name'], but with $this->storageItemsFieldContent = $array[self::$storageItemsField];
- getDescription() : string
- Getter for the description
- getIdentifier() : int
- Returns the uid of the collection
- getItems() : array<string|int, mixed>
- Gets the current available items.
- getItemsCriteria() : mixed
- Gets ths items criteria.
- getItemTableName() : string
- Setter for the name of the data-source table
- getTitle() : string
- Getter for the title
- getUid() : int
- Getter for the UID
- key() : string
- Return the key of the current element
- load() : CollectionInterface
- Loads the collections with the given id from persistence
- loadContents() : mixed
- Populates the content-entries of the storage
- moveItemAt() : mixed
- Moves the item within the collection
- next() : void
- Move forward to next element
- persist() : mixed
- Persists current collection state to underlying storage
- remove() : mixed
- Removes a file from this collection.
- removeAll() : mixed
- Removes all elements of the current collection.
- rewind() : void
- Rewind the Iterator to the first element
- setDescription() : mixed
- Sets the description.
- setIdentifier() : mixed
- Sets the identifier of the collection
- setItemsCriteria() : mixed
- Sets the items criteria.
- setItemTableName() : mixed
- Setter for the name of the data-source table
- setTitle() : mixed
- Setter for the title
- toArray() : array<string|int, mixed>
- Similar to method in \TYPO3\CMS\Core\Collection\AbstractRecordCollection, but without 'table_name' => $this->getItemTableName()
- usort() : mixed
- Sorts collection via given callBackFunction
- valid() : bool
- Checks if current position is valid
- getCollectionDatabaseTable() : string
- getItemUidList() : string
- Generates comma-separated list of entry uids for usage in DataHandler
- getPersistableDataArray() : array<string|int, mixed>
- Returns an array of the persistable properties and contents which are processable by DataHandler.
Properties
$description
Collection description
        protected
            string
    $description
    
    
    
    
    
    
$itemsCriteria
Field contents of $itemsCriteriaField. Defines which the items or search criteria for the items depending on the type (see self::$type above) of this file collection.
        protected
            mixed
    $itemsCriteria
    
    
    
    
    
    
$itemsCriteriaField
The name of the field items are handled with (usually either criteria, items or folder)
        protected
        static    string
    $itemsCriteriaField
     = 'files'
    
    
    
    
    
$itemTableName
Name of the table records of this collection are stored in
        protected
            string
    $itemTableName
     = 'sys_file_reference'
    
    
    
    
    
$storage
The local storage
        protected
            SplDoublyLinkedList
    $storage
    
    
    
    
    
    
$storageItemsField
The table name collections are stored to
        protected
        static    string
    $storageItemsField
     = 'items'
    
    
    
    
    
$storageTableName
The table name collections are stored to
        protected
        static    string
    $storageTableName
     = 'sys_file_collection'
    
    
    
    
    
$title
Collection title
        protected
            string
    $title
    
    
    
    
    
    
$type
The type of file collection (see \TYPO3\CMS\Core\Collection\RecordCollectionRepository::TYPE constants)
        protected
        static    string
    $type
     = 'static'
    
    
    
    
    
$uid
Uid of the storage
        protected
            int
    $uid
     = 0
    
    
    
    
    
Methods
__construct()
Creates this object.
    public
                    __construct() : mixed
    __serialize()
Returns class state to be serialized.
    public
                    __serialize() : array<string|int, mixed>
    Return values
array<string|int, mixed>__unserialize()
Load records with the given serialized information
    public
                    __unserialize(array<string|int, mixed> $arrayRepresentation) : void
    Parameters
- $arrayRepresentation : array<string|int, mixed>
add()
Adds a file to this collection.
    public
                    add(FileInterface $data) : mixed
    Parameters
- $data : FileInterface
addAll()
Adds all files of another collection to the current one.
    public
                    addAll(CollectionInterface $other) : mixed
    Parameters
- $other : CollectionInterface
count()
Count elements of an object
    public
                    count() : int
    Return values
int —The custom count as an integer.
create()
Creates a new collection objects and reconstitutes the given database record to the new object.
    public
            static        create(array<string|int, mixed> $collectionRecord[, bool $fillItems = false ]) : CollectionInterface
    Parameters
- $collectionRecord : array<string|int, mixed>
- 
                    Database record 
- $fillItems : bool = false
- 
                    Populates the entries directly on load, might be bad for memory on large collections 
Return values
CollectionInterfacecurrent()
Return the current element
    public
                    current() : T|null
    Return values
T|nullfromArray()
Similar to method in \TYPO3\CMS\Core\Collection\AbstractRecordCollection, but without $this->itemTableName= $array['table_name'], but with $this->storageItemsFieldContent = $array[self::$storageItemsField];
    public
                    fromArray(array<string|int, mixed> $array) : mixed
    Parameters
- $array : array<string|int, mixed>
getDescription()
Getter for the description
    public
                    getDescription() : string
    Return values
stringgetIdentifier()
Returns the uid of the collection
    public
                    getIdentifier() : int
    Return values
intgetItems()
Gets the current available items.
    public
                    getItems() : array<string|int, mixed>
    Return values
array<string|int, mixed>getItemsCriteria()
Gets ths items criteria.
    public
                    getItemsCriteria() : mixed
    getItemTableName()
Setter for the name of the data-source table
    public
                    getItemTableName() : string
    Return values
stringgetTitle()
Getter for the title
    public
                    getTitle() : string
    Return values
stringgetUid()
Getter for the UID
    public
                    getUid() : int
    Return values
intkey()
Return the key of the current element
    public
                    key() : string
    Return values
stringload()
Loads the collections with the given id from persistence
    public
            static        load(int $id[, bool $fillItems = false ]) : CollectionInterface
    For memory reasons, per default only f.e. title, database-table, identifier (what ever static data is defined) is loaded. Entries can be load on first access.
Parameters
- $id : int
- 
                    Id of database record to be loaded 
- $fillItems : bool = false
- 
                    Populates the entries directly on load, might be bad for memory on large collections 
Return values
CollectionInterfaceloadContents()
Populates the content-entries of the storage
    public
                    loadContents() : mixed
    Queries the underlying storage for entries of the collection and adds them to the collection data.
If the content entries of the storage had not been loaded on creation ($fillItems = false) this function is to be used for loading the contents afterwards.
moveItemAt()
Moves the item within the collection
    public
                    moveItemAt(int $currentPosition[, int $newPosition = 0 ]) : mixed
    the item at $currentPosition will be moved to $newPosition. Omitting $newPosition will move to top.
Parameters
- $currentPosition : int
- $newPosition : int = 0
next()
Move forward to next element
    public
                    next() : void
    persist()
Persists current collection state to underlying storage
    public
                    persist() : mixed
    remove()
Removes a file from this collection.
    public
                    remove(File $file) : mixed
    Parameters
- $file : File
removeAll()
Removes all elements of the current collection.
    public
                    removeAll() : mixed
    rewind()
Rewind the Iterator to the first element
    public
                    rewind() : void
    setDescription()
Sets the description.
    public
                    setDescription(string $description) : mixed
    Parameters
- $description : string
setIdentifier()
Sets the identifier of the collection
    public
                    setIdentifier(int $id) : mixed
    Parameters
- $id : int
setItemsCriteria()
Sets the items criteria.
    public
                    setItemsCriteria(mixed $itemsCriteria) : mixed
    Parameters
- $itemsCriteria : mixed
setItemTableName()
Setter for the name of the data-source table
    public
                    setItemTableName(string $tableName) : mixed
    Parameters
- $tableName : string
setTitle()
Setter for the title
    public
                    setTitle(string $title) : mixed
    Parameters
- $title : string
toArray()
Similar to method in \TYPO3\CMS\Core\Collection\AbstractRecordCollection, but without 'table_name' => $this->getItemTableName()
    public
                    toArray() : array<string|int, mixed>
    Return values
array<string|int, mixed>usort()
Sorts collection via given callBackFunction
    public
                    usort(callable $callbackFunction) : mixed
    The comparison function given as must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second.
Parameters
- $callbackFunction : callable
Tags
valid()
Checks if current position is valid
    public
                    valid() : bool
    Return values
bool —The return value will be cast to boolean and then evaluated.
getCollectionDatabaseTable()
    protected
            static        getCollectionDatabaseTable() : string
    Return values
stringgetItemUidList()
Generates comma-separated list of entry uids for usage in DataHandler
    protected
                    getItemUidList([bool $includeTableName = false ]) : string
    Parameters
- $includeTableName : bool = false
Return values
stringgetPersistableDataArray()
Returns an array of the persistable properties and contents which are processable by DataHandler.
    protected
                    getPersistableDataArray() : array<string|int, mixed>