Definition

class Definition

Definition represents a service definition.

Methods

__construct(string|null $class = null, array $arguments = array())
$this setFactory(string|array $factory)

Sets a factory.

string|array getFactory()

Gets the factory.

$this setDecoratedService(null|string $id, null|string $renamedId = null, int $priority)

Sets the service that this service is decorating.

null|array getDecoratedService()

Gets the service that this service is decorating.

$this setClass(string $class)

Sets the service class.

string|null getClass()

Gets the service class.

$this setArguments(array $arguments)

Sets the arguments to pass to the service constructor/factory method.

$this setProperties(array $properties)

Sets the properties to define when creating the service.

array getProperties()

Gets the properties to define when creating the service.

$this setProperty(string $name, mixed $value)

Sets a specific property.

$this addArgument(mixed $argument)

Adds an argument to pass to the service constructor/factory method.

$this replaceArgument(int $index, mixed $argument)

Replaces a specific argument.

array getArguments()

Gets the arguments to pass to the service constructor/factory method.

mixed getArgument(int $index)

Gets an argument to pass to the service constructor/factory method.

$this setMethodCalls(array $calls = array())

Sets the methods to call after service initialization.

$this addMethodCall(string $method, array $arguments = array())

Adds a method to call after service initialization.

$this removeMethodCall(string $method)

Removes a method to call after service initialization.

bool hasMethodCall(string $method)

Check if the current definition has a given method to call after service initialization.

array getMethodCalls()

Gets the methods to call after service initialization.

$this setTags(array $tags)

Sets tags for this definition.

array getTags()

Returns all tags.

array getTag(string $name)

Gets a tag by name.

$this addTag(string $name, array $attributes = array())

Adds a tag for this definition.

bool hasTag(string $name)

Whether this definition has a tag with the given name.

$this clearTag(string $name)

Clears all tags for a given name.

$this clearTags()

Clears the tags for this definition.

$this setFile(string $file)

Sets a file to require before creating the service.

string|null getFile()

Gets the file to require before creating the service.

$this setShared(bool $shared)

Sets if the service must be shared or not.

bool isShared()

Whether this service is shared.

$this setPublic(bool $boolean)

Sets the visibility of this service.

bool isPublic()

Whether this service is public facing.

$this setLazy(bool $lazy)

Sets the lazy flag of this service.

bool isLazy()

Whether this service is lazy.

$this setSynthetic(bool $boolean)

Sets whether this definition is synthetic, that is not constructed by the container, but dynamically injected.

bool isSynthetic()

Whether this definition is synthetic, that is not constructed by the container, but dynamically injected.

$this setAbstract(bool $boolean)

Whether this definition is abstract, that means it merely serves as a template for other definitions.

bool isAbstract()

Whether this definition is abstract, that means it merely serves as a template for other definitions.

$this setDeprecated(bool $status = true, string $template = null)

Whether this definition is deprecated, that means it should not be called anymore.

bool isDeprecated()

Whether this definition is deprecated, that means it should not be called anymore.

string getDeprecationMessage(string $id)

Message to use if this definition is deprecated.

$this setConfigurator(string|array $configurator)

Sets a configurator to call after the service is fully initialized.

callable|null getConfigurator()

Gets the configurator to call after the service is fully initialized.

$this setAutowiringTypes(array $types)

Sets types that will default to this definition.

bool isAutowired()

Is the definition autowired?

$this setAutowired(bool $autowired)

Enables/disables autowiring.

string[] getAutowiringTypes()

Gets autowiring types that will default to this definition.

$this addAutowiringType(string $type)

Adds a type that will default to this definition.

$this removeAutowiringType(string $type)

Removes a type.

bool hasAutowiringType(string $type)

Will this definition default for the given type?

Details

__construct(string|null $class = null, array $arguments = array())

Parameters

string|null $class The service class
array $arguments An array of arguments to pass to the service constructor

$this setFactory(string|array $factory)

Sets a factory.

Parameters

string|array $factory A PHP function or an array containing a class/Reference and a method to call

Return Value

$this

string|array getFactory()

Gets the factory.

Return Value

string|array The PHP function or an array containing a class/Reference and a method to call

$this setDecoratedService(null|string $id, null|string $renamedId = null, int $priority)

Sets the service that this service is decorating.

Parameters

null|string $id The decorated service id, use null to remove decoration
null|string $renamedId The new decorated service id
int $priority The priority of decoration

Return Value

$this

Exceptions

InvalidArgumentException In case the decorated service id and the new decorated service id are equals.

null|array getDecoratedService()

Gets the service that this service is decorating.

Return Value

null|array An array composed of the decorated service id, the new id for it and the priority of decoration, null if no service is decorated

$this setClass(string $class)

Sets the service class.

Parameters

string $class The service class

Return Value

$this

string|null getClass()

Gets the service class.

Return Value

string|null The service class

$this setArguments(array $arguments)

Sets the arguments to pass to the service constructor/factory method.

Parameters

array $arguments An array of arguments

Return Value

$this

$this setProperties(array $properties)

Sets the properties to define when creating the service.

Parameters

array $properties

Return Value

$this

array getProperties()

Gets the properties to define when creating the service.

Return Value

array

$this setProperty(string $name, mixed $value)

Sets a specific property.

Parameters

string $name
mixed $value

Return Value

$this

$this addArgument(mixed $argument)

Adds an argument to pass to the service constructor/factory method.

Parameters

mixed $argument An argument

Return Value

$this

$this replaceArgument(int $index, mixed $argument)

Replaces a specific argument.

Parameters

int $index
mixed $argument

Return Value

$this

Exceptions

OutOfBoundsException When the replaced argument does not exist

array getArguments()

Gets the arguments to pass to the service constructor/factory method.

Return Value

array The array of arguments

mixed getArgument(int $index)

Gets an argument to pass to the service constructor/factory method.

Parameters

int $index

Return Value

mixed The argument value

Exceptions

OutOfBoundsException When the argument does not exist

$this setMethodCalls(array $calls = array())

Sets the methods to call after service initialization.

Parameters

array $calls An array of method calls

Return Value

$this

$this addMethodCall(string $method, array $arguments = array())

Adds a method to call after service initialization.

Parameters

string $method The method name to call
array $arguments An array of arguments to pass to the method call

Return Value

$this

Exceptions

InvalidArgumentException on empty $method param

$this removeMethodCall(string $method)

Removes a method to call after service initialization.

Parameters

string $method The method name to remove

Return Value

$this

bool hasMethodCall(string $method)

Check if the current definition has a given method to call after service initialization.

Parameters

string $method The method name to search for

Return Value

bool

array getMethodCalls()

Gets the methods to call after service initialization.

Return Value

array An array of method calls

$this setTags(array $tags)

Sets tags for this definition.

Parameters

array $tags

Return Value

$this

array getTags()

Returns all tags.

Return Value

array An array of tags

array getTag(string $name)

Gets a tag by name.

Parameters

string $name The tag name

Return Value

array An array of attributes

$this addTag(string $name, array $attributes = array())

Adds a tag for this definition.

Parameters

string $name The tag name
array $attributes An array of attributes

Return Value

$this

bool hasTag(string $name)

Whether this definition has a tag with the given name.

Parameters

string $name

Return Value

bool

$this clearTag(string $name)

Clears all tags for a given name.

Parameters

string $name The tag name

Return Value

$this

$this clearTags()

Clears the tags for this definition.

Return Value

$this

$this setFile(string $file)

Sets a file to require before creating the service.

Parameters

string $file A full pathname to include

Return Value

$this

string|null getFile()

Gets the file to require before creating the service.

Return Value

string|null The full pathname to include

$this setShared(bool $shared)

Sets if the service must be shared or not.

Parameters

bool $shared Whether the service must be shared or not

Return Value

$this

bool isShared()

Whether this service is shared.

Return Value

bool

$this setPublic(bool $boolean)

Sets the visibility of this service.

Parameters

bool $boolean

Return Value

$this

bool isPublic()

Whether this service is public facing.

Return Value

bool

$this setLazy(bool $lazy)

Sets the lazy flag of this service.

Parameters

bool $lazy

Return Value

$this

bool isLazy()

Whether this service is lazy.

Return Value

bool

$this setSynthetic(bool $boolean)

Sets whether this definition is synthetic, that is not constructed by the container, but dynamically injected.

Parameters

bool $boolean

Return Value

$this

bool isSynthetic()

Whether this definition is synthetic, that is not constructed by the container, but dynamically injected.

Return Value

bool

$this setAbstract(bool $boolean)

Whether this definition is abstract, that means it merely serves as a template for other definitions.

Parameters

bool $boolean

Return Value

$this

bool isAbstract()

Whether this definition is abstract, that means it merely serves as a template for other definitions.

Return Value

bool

$this setDeprecated(bool $status = true, string $template = null)

Whether this definition is deprecated, that means it should not be called anymore.

Parameters

bool $status
string $template Template message to use if the definition is deprecated

Return Value

$this

Exceptions

InvalidArgumentException When the message template is invalid.

bool isDeprecated()

Whether this definition is deprecated, that means it should not be called anymore.

Return Value

bool

string getDeprecationMessage(string $id)

Message to use if this definition is deprecated.

Parameters

string $id Service id relying on this definition

Return Value

string

$this setConfigurator(string|array $configurator)

Sets a configurator to call after the service is fully initialized.

Parameters

string|array $configurator A PHP callable

Return Value

$this

callable|null getConfigurator()

Gets the configurator to call after the service is fully initialized.

Return Value

callable|null The PHP callable to call

$this setAutowiringTypes(array $types)

Sets types that will default to this definition.

Parameters

array $types

Return Value

$this

bool isAutowired()

Is the definition autowired?

Return Value

bool

$this setAutowired(bool $autowired)

Enables/disables autowiring.

Parameters

bool $autowired

Return Value

$this

string[] getAutowiringTypes()

Gets autowiring types that will default to this definition.

Return Value

string[]

$this addAutowiringType(string $type)

Adds a type that will default to this definition.

Parameters

string $type

Return Value

$this

$this removeAutowiringType(string $type)

Removes a type.

Parameters

string $type

Return Value

$this

bool hasAutowiringType(string $type)

Will this definition default for the given type?

Parameters

string $type

Return Value

bool

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.2/Symfony/Component/DependencyInjection/Definition.html