abstract class AbstractController implements ServiceSubscriberInterface

Provides common features needed in controllers.

Traits

Common features needed in controllers.

Properties

protected ContainerInterface $container

Methods

bool
has(string $id)

Returns true if the service id is defined.

object
get(string $id)

Gets a container service by its id.

string
generateUrl(string $route, array $parameters = array(), int $referenceType = UrlGeneratorInterface::ABSOLUTE_PATH)

Generates a URL from the given parameters.

forward(string $controller, array $path = array(), array $query = array())

Forwards the request to another controller.

redirect(string $url, int $status = 302)

Returns a RedirectResponse to the given URL.

redirectToRoute(string $route, array $parameters = array(), int $status = 302)

Returns a RedirectResponse to the given route with the given parameters.

json($data, int $status = 200, array $headers = array(), array $context = array())

Returns a JsonResponse that uses the serializer component if enabled, or json_encode.

file($file, string $fileName = null, string $disposition = ResponseHeaderBag::DISPOSITION_ATTACHMENT)

Returns a BinaryFileResponse object with original or customized file name and disposition header.

addFlash(string $type, string $message)

Adds a flash message to the current session for type.

bool
isGranted($attributes, $subject = null)

Checks if the attributes are granted against the current authentication token and optionally supplied subject.

denyAccessUnlessGranted($attributes, $subject = null, string $message = 'Access Denied.')

Throws an exception unless the attributes are granted against the current authentication token and optionally supplied subject.

string
renderView(string $view, array $parameters = array())

Returns a rendered view.

render(string $view, array $parameters = array(), Response $response = null)

Renders a view.

stream(string $view, array $parameters = array(), StreamedResponse $response = null)

Streams a view.

createNotFoundException(string $message = 'Not Found', Exception $previous = null)

Returns a NotFoundHttpException.

createAccessDeniedException(string $message = 'Access Denied.', Exception $previous = null)

Returns an AccessDeniedException.

createForm(string $type, $data = null, array $options = array())

Creates and returns a Form instance from the type of the form.

createFormBuilder($data = null, array $options = array())

Creates and returns a form builder instance.

ManagerRegistry
getDoctrine()

Shortcut to return the Doctrine Registry service.

mixed
getUser()

Get a user from the Security Token Storage.

bool
isCsrfTokenValid(string $id, string|null $token)

Checks the validity of a CSRF token.

dispatchMessage(object|Envelope $message)

Dispatches a message to the bus.

addLink(Request $request, Link $link)

Adds a Link HTTP header to the current response.

setContainer(ContainerInterface $container)

No description

mixed
getParameter(string $name)

Gets a container parameter by its name.

static array
getSubscribedServices()

Returns an array of service types required by such instances, optionally keyed by the service names used internally.

Details

protected bool has(string $id)

Returns true if the service id is defined.

Parameters

string $id

Return Value

bool

protected object get(string $id)

Gets a container service by its id.

Parameters

string $id

Return Value

object The service

protected string generateUrl(string $route, array $parameters = array(), int $referenceType = UrlGeneratorInterface::ABSOLUTE_PATH)

Generates a URL from the given parameters.

Parameters

string $route
array $parameters
int $referenceType

Return Value

string

See also

protected Response forward(string $controller, array $path = array(), array $query = array())

Forwards the request to another controller.

Parameters

string $controller
array $path
array $query

Return Value

Response

protected RedirectResponse redirect(string $url, int $status = 302)

Returns a RedirectResponse to the given URL.

Parameters

string $url
int $status

Return Value

RedirectResponse

protected RedirectResponse redirectToRoute(string $route, array $parameters = array(), int $status = 302)

Returns a RedirectResponse to the given route with the given parameters.

Parameters

string $route
array $parameters
int $status

Return Value

RedirectResponse

protected JsonResponse json($data, int $status = 200, array $headers = array(), array $context = array())

Returns a JsonResponse that uses the serializer component if enabled, or json_encode.

Parameters

$data
int $status
array $headers
array $context

Return Value

JsonResponse

protected BinaryFileResponse file($file, string $fileName = null, string $disposition = ResponseHeaderBag::DISPOSITION_ATTACHMENT)

Returns a BinaryFileResponse object with original or customized file name and disposition header.

Parameters

$file
string $fileName
string $disposition

Return Value

BinaryFileResponse

protected addFlash(string $type, string $message)

Adds a flash message to the current session for type.

Parameters

string $type
string $message

Exceptions

LogicException

protected bool isGranted($attributes, $subject = null)

Checks if the attributes are granted against the current authentication token and optionally supplied subject.

Parameters

$attributes
$subject

Return Value

bool

Exceptions

LogicException

protected denyAccessUnlessGranted($attributes, $subject = null, string $message = 'Access Denied.')

Throws an exception unless the attributes are granted against the current authentication token and optionally supplied subject.

Parameters

$attributes
$subject
string $message

Exceptions

AccessDeniedException

protected string renderView(string $view, array $parameters = array())

Returns a rendered view.

Parameters

string $view
array $parameters

Return Value

string

protected Response render(string $view, array $parameters = array(), Response $response = null)

Renders a view.

Parameters

string $view
array $parameters
Response $response

Return Value

Response

protected StreamedResponse stream(string $view, array $parameters = array(), StreamedResponse $response = null)

Streams a view.

Parameters

string $view
array $parameters
StreamedResponse $response

Return Value

StreamedResponse

protected NotFoundHttpException createNotFoundException(string $message = 'Not Found', Exception $previous = null)

Returns a NotFoundHttpException.

This will result in a 404 response code. Usage example:

throw $this->createNotFoundException('Page not found!');

Parameters

string $message
Exception $previous

Return Value

NotFoundHttpException

protected AccessDeniedException createAccessDeniedException(string $message = 'Access Denied.', Exception $previous = null)

Returns an AccessDeniedException.

This will result in a 403 response code. Usage example:

throw $this->createAccessDeniedException('Unable to access this page!');

Parameters

string $message
Exception $previous

Return Value

AccessDeniedException

Exceptions

LogicException If the Security component is not available

protected FormInterface createForm(string $type, $data = null, array $options = array())

Creates and returns a Form instance from the type of the form.

Parameters

string $type
$data
array $options

Return Value

FormInterface

protected FormBuilderInterface createFormBuilder($data = null, array $options = array())

Creates and returns a form builder instance.

Parameters

$data
array $options

Return Value

FormBuilderInterface

protected ManagerRegistry getDoctrine()

Shortcut to return the Doctrine Registry service.

Return Value

ManagerRegistry

Exceptions

LogicException If DoctrineBundle is not available

protected mixed getUser()

Get a user from the Security Token Storage.

Return Value

mixed

Exceptions

LogicException If SecurityBundle is not available

See also

protected bool isCsrfTokenValid(string $id, string|null $token)

Checks the validity of a CSRF token.

Parameters

string $id The id used when generating the token
string|null $token The actual token sent with the request that should be validated

Return Value

bool

protected Envelope dispatchMessage(object|Envelope $message)

Dispatches a message to the bus.

Parameters

object|Envelope $message The message or the message pre-wrapped in an envelope

Return Value

Envelope

Adds a Link HTTP header to the current response.

Parameters

Request $request
Link $link

See also

setContainer(ContainerInterface $container)

Parameters

ContainerInterface $container

protected mixed getParameter(string $name)

Gets a container parameter by its name.

Parameters

string $name

Return Value

mixed

static array getSubscribedServices()

Returns an array of service types required by such instances, optionally keyed by the service names used internally.

For mandatory dependencies:

  • array('logger' => 'Psr\Log\LoggerInterface') means the objects use the "logger" name internally to fetch a service which must implement Psr\Log\LoggerInterface.
  • array('loggers' => 'Psr\Log\LoggerInterface[]') means the objects use the "loggers" name internally to fetch an iterable of Psr\Log\LoggerInterface instances.
  • array('Psr\Log\LoggerInterface') is a shortcut for
  • array('Psr\Log\LoggerInterface' => 'Psr\Log\LoggerInterface')

otherwise:

  • array('logger' => '?Psr\Log\LoggerInterface') denotes an optional dependency
  • array('loggers' => '?Psr\Log\LoggerInterface[]') denotes an optional iterable dependency
  • array('?Psr\Log\LoggerInterface') is a shortcut for
  • array('Psr\Log\LoggerInterface' => '?Psr\Log\LoggerInterface')

Return Value

array The required service types, optionally keyed by service names