class CreateNew extends GDImageToolkitOperationBase (View source)

Defines GD2 create_new image operation.

Traits

Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.

Provides dependency injection friendly methods for serialization.

Provides a trait for the messenger service.

Constants

DERIVATIVE_SEPARATOR

A string which is used to separate base plugin IDs from the derivative ID.

Properties

protected string $pluginId

The plugin_id.

from  PluginBase
protected array $pluginDefinition

The plugin implementation definition.

from  PluginBase
protected array $configuration

Configuration information passed into the plugin.

from  PluginBase
protected TranslationInterface $stringTranslation

The string translation service.

from  StringTranslationTrait
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 MessengerInterface $messenger

The messenger.

from  MessengerTrait
protected ImageToolkitInterface $toolkit

The image toolkit.

from  ImageToolkitOperationBase
protected LoggerInterface $logger

A logger instance.

from  ImageToolkitOperationBase

Methods

__construct(array $configuration, string $plugin_id, mixed $plugin_definition, ImageToolkitInterface $toolkit, LoggerInterface $logger)

Constructs an image toolkit operation plugin.

string
getPluginId()

Gets the plugin_id of the plugin instance.

string
getBaseId()

Gets the base_plugin_id of the plugin instance.

string|null
getDerivativeId()

Gets the derivative_id of the plugin instance.

array
getPluginDefinition()

Gets the definition of the plugin implementation.

bool
isConfigurable()

Determines if the plugin is configurable.

t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

getStringTranslation()

Gets the string translation service.

$this
setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

__sleep()

{@inheritdoc}

__wakeup()

{@inheritdoc}

setMessenger(MessengerInterface $messenger)

Sets the messenger.

messenger()

Gets the messenger.

getToolkit()

The correctly typed image toolkit for GD operations.

array
arguments()

Returns the definition of the operation arguments.

array
prepareArguments(array $arguments)

Checks if required arguments are passed in and adds defaults for non passed in optional arguments.

array
validateArguments(array $arguments)

Validates the arguments.

bool
apply(array $arguments)

Applies a toolkit specific operation to an image.

bool
execute(array $arguments)

Performs the actual manipulation on the image.

Details

__construct(array $configuration, string $plugin_id, mixed $plugin_definition, ImageToolkitInterface $toolkit, LoggerInterface $logger)

Constructs an image toolkit operation plugin.

Parameters

array $configuration

A configuration array containing information about the plugin instance.

string $plugin_id

The plugin_id for the plugin instance.

mixed $plugin_definition

The plugin implementation definition.

ImageToolkitInterface $toolkit

The image toolkit.

LoggerInterface $logger

A logger instance.

string getPluginId()

Gets the plugin_id of the plugin instance.

Return Value

string

The plugin_id of the plugin instance.

string getBaseId()

Gets the base_plugin_id of the plugin instance.

Return Value

string

The base_plugin_id of the plugin instance.

string|null getDerivativeId()

Gets the derivative_id of the plugin instance.

Return Value

string|null

The derivative_id of the plugin instance NULL otherwise.

array getPluginDefinition()

Gets the definition of the plugin implementation.

Return Value

array

The plugin definition, as returned by the discovery object used by the plugin manager.

bool isConfigurable()

Determines if the plugin is configurable.

Return Value

bool

A boolean indicating whether the plugin is configurable.

protected TranslatableMarkup t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.

In order for strings to be localized, make them available in one of the ways supported by the

Parameters

string $string

A string containing the English text to translate.

array $args

(optional) An associative array of replacements to make after translation. Based on the first character of the key, the value is escaped and/or themed. See \Drupal\Component\Render\FormattableMarkup::placeholderFormat() for details.

array $options

(optional) An associative array of additional options, with the following elements:

  • 'langcode' (defaults to the current language): A language code, to translate to a language other than what is used to display the page.
  • 'context' (defaults to the empty context): The context the source string belongs to. See the @link i18n Internationalization topic @endlink for more information about string contexts.

Return Value

TranslatableMarkup

An object that, when cast to a string, returns the translated string.

See also

FormattableMarkup::placeholderFormat
TranslatableMarkup::__construct

protected formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

Parameters

$count
$singular
$plural
array $args
array $options

See also

TranslationInterface::formatPlural

protected getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

Parameters

$langcode

See also

PluralFormulaInterface::getNumberOfPlurals

protected TranslationInterface getStringTranslation()

Gets the string translation service.

Return Value

TranslationInterface

The string translation service.

$this setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

Parameters

TranslationInterface $translation

The string translation service.

Return Value

$this

__sleep()

{@inheritdoc}

__wakeup()

{@inheritdoc}

setMessenger(MessengerInterface $messenger)

Sets the messenger.

Parameters

MessengerInterface $messenger

The messenger.

MessengerInterface messenger()

Gets the messenger.

Return Value

MessengerInterface

The messenger.

protected ImageToolkitInterface getToolkit()

The correctly typed image toolkit for GD operations.

Return Value

ImageToolkitInterface

protected array arguments()

Returns the definition of the operation arguments.

Image toolkit operation implementers must implement this method to "document" their operation, thus also if no arguments are expected.

Return Value

array

An array whose keys are the names of the arguments (e.g. "width", "degrees") and each value is an associative array having the following keys:

  • description: A string with the argument description. This is used only internally for documentation purposes, so it does not need to be translatable.
  • required: (optional) A boolean indicating if this argument should be provided or not. Defaults to TRUE.
  • default: (optional) When the argument is set to "required" = FALSE, this must be set to a default value. Ignored for "required" = TRUE arguments.

protected array prepareArguments(array $arguments)

Checks if required arguments are passed in and adds defaults for non passed in optional arguments.

Image toolkit operation implementers should not normally need to override this method as they should place their own validation in validateArguments.

Parameters

array $arguments

An associative array of arguments to be used by the toolkit operation.

Return Value

array

The prepared arguments array.

Exceptions

InvalidArgumentException.
InvalidPluginDefinitionException.

protected array validateArguments(array $arguments)

Validates the arguments.

Image toolkit operation implementers should place any argument validation in this method, throwing an InvalidArgumentException when an error is encountered.

Validation typically includes things like:

  • Checking that width and height are not negative.
  • Checking that a color value is indeed a color.

But validation may also include correcting the arguments, e.g:

  • Casting arguments to the correct type.
  • Rounding pixel values to an integer.

This base implementation just returns the array of arguments and thus does not need to be called by overriding methods.

Parameters

array $arguments

An associative array of arguments to be used by the toolkit operation.

Return Value

array

The validated and corrected arguments array.

Exceptions

InvalidArgumentException
InvalidPluginDefinitionException

final bool apply(array $arguments)

Applies a toolkit specific operation to an image.

Parameters

array $arguments

An associative array of data to be used by the toolkit operation.

Return Value

bool

TRUE if the operation was performed successfully, FALSE otherwise.

Exceptions

InvalidArgumentException

protected bool execute(array $arguments)

Performs the actual manipulation on the image.

Image toolkit operation implementers must implement this method. This method is responsible for actually performing the operation on the image. When this method gets called, the implementer may assume all arguments, also the optional ones, to be available, validated and corrected.

Parameters

array $arguments

An associative array of arguments to be used by the toolkit operation.

Return Value

bool

TRUE if the operation was performed successfully, FALSE otherwise.