class FilterPluginCollection extends DefaultLazyPluginCollection (View source)

A collection of filters.

Traits

Provides dependency injection friendly methods for serialization.

Properties

protected array $pluginInstances

Stores all instantiated plugins.

from  LazyPluginCollection
protected array $instanceIds

Stores the IDs of all potential plugin instances.

from  LazyPluginCollection
protected array $_serviceIds

An array of service IDs keyed by property name used for serialization.

from  DependencySerializationTrait
protected array $_entityStorages

An array of entity type IDs keyed by the property name of their storages.

from  DependencySerializationTrait
protected PluginManagerInterface $manager

The manager used to instantiate the plugins.

from  DefaultLazyPluginCollection
protected array $configurations

The initial configuration for each plugin in the collection.

from  DefaultLazyPluginCollection
protected string $pluginKey

The key within the plugin configuration that contains the plugin ID.

from  DefaultLazyPluginCollection
protected array $originalOrder

The original order of the instances.

from  DefaultLazyPluginCollection
protected array $definitions

All possible filter plugin IDs.

Methods

initializePlugin(string $instance_id)

Initializes and stores a plugin.

array
getConfiguration()

Gets the current configuration of all plugins in this collection.

$this
setConfiguration(array $configuration)

Sets the configuration for all plugins in this collection.

clear()

Clears all instantiated plugins.

bool
has(string $instance_id)

Determines if a plugin instance exists.

get(string $instance_id)

Gets a plugin instance, initializing it if necessary.

set(string $instance_id, mixed $value)

Stores an initialized plugin.

remove(string $instance_id)

Removes an initialized plugin.

addInstanceId(string $id, array|null $configuration = NULL)

Adds an instance ID to the available instance IDs.

array
getInstanceIds()

Gets all instance IDs.

removeInstanceId(string $instance_id)

Removes an instance ID.

getIterator()

No description

count()

{@inheritdoc}

__sleep()

{@inheritdoc}

__wakeup()

{@inheritdoc}

__construct(PluginManagerInterface $manager, array $configurations = [])

Constructs a new DefaultLazyPluginCollection object.

$this
sort()

Sorts all plugin instances in this collection.

sortHelper($aID, $bID)

Provides uasort() callback to sort plugins.

setInstanceConfiguration(string $instance_id, array $configuration)

Updates the configuration for a plugin instance.

getAll()

Retrieves filter definitions and creates an instance for each filter.

Details

protected initializePlugin(string $instance_id)

Initializes and stores a plugin.

Parameters

string $instance_id

The ID of the plugin instance to initialize.

array getConfiguration()

Gets the current configuration of all plugins in this collection.

Return Value

array

An array of up-to-date plugin configuration.

$this setConfiguration(array $configuration)

Sets the configuration for all plugins in this collection.

Parameters

array $configuration

An array of up-to-date plugin configuration.

Return Value

$this

clear()

Clears all instantiated plugins.

bool has(string $instance_id)

Determines if a plugin instance exists.

Parameters

string $instance_id

The ID of the plugin instance to check.

Return Value

bool

TRUE if the plugin instance exists, FALSE otherwise.

get(string $instance_id)

Gets a plugin instance, initializing it if necessary.

Parameters

string $instance_id

The ID of the plugin instance being retrieved.

set(string $instance_id, mixed $value)

Stores an initialized plugin.

Parameters

string $instance_id

The ID of the plugin instance being stored.

mixed $value

An instantiated plugin.

remove(string $instance_id)

Removes an initialized plugin.

The plugin can still be used; it will be reinitialized.

Parameters

string $instance_id

The ID of the plugin instance to remove.

addInstanceId(string $id, array|null $configuration = NULL)

Adds an instance ID to the available instance IDs.

Parameters

string $id

The ID of the plugin instance to add.

array|null $configuration

(optional) The configuration used by this instance. Defaults to NULL.

array getInstanceIds()

Gets all instance IDs.

Return Value

array

An array of all available instance IDs.

removeInstanceId(string $instance_id)

Removes an instance ID.

Parameters

string $instance_id

The ID of the plugin instance to remove.

getIterator()

No description

count()

{@inheritdoc}

__sleep()

{@inheritdoc}

__wakeup()

{@inheritdoc}

__construct(PluginManagerInterface $manager, array $configurations = [])

Constructs a new DefaultLazyPluginCollection object.

Parameters

PluginManagerInterface $manager

The manager to be used for instantiating plugins.

array $configurations

(optional) An associative array containing the initial configuration for each plugin in the collection, keyed by plugin instance ID.

$this sort()

Sorts all plugin instances in this collection.

Return Value

$this

sortHelper($aID, $bID)

Provides uasort() callback to sort plugins.

Parameters

$aID
$bID

setInstanceConfiguration(string $instance_id, array $configuration)

Updates the configuration for a plugin instance.

If there is no plugin instance yet, a new will be instantiated. Otherwise, the existing instance is updated with the new configuration.

Parameters

string $instance_id

The ID of a plugin to set the configuration for.

array $configuration

The plugin configuration to set.

getAll()

Retrieves filter definitions and creates an instance for each filter.

This is exclusively used for the text format administration page, on which all available filter plugins are exposed, regardless of whether the current text format has an active instance.

Refactor text format administration to actually construct/create and destruct/remove actual filter plugin instances, using a library approach à la blocks.