interface ContainerInterface

ContainerInterface is the interface implemented by service container classes.

@author Fabien Potencier <fabien@symfony.com> @author Johannes M. Schmitt <schmittjoh@gmail.com>

@api

Hierarchy

Expanded class hierarchy of ContainerInterface

All classes that implement ContainerInterface

130 files declare their use of ContainerInterface
AccountSettingsForm.php in drupal/core/modules/user/lib/Drupal/user/AccountSettingsForm.php
Contains \Drupal\user\AccountSettingsForm.
ActionAddFormController.php in drupal/core/modules/action/lib/Drupal/action/ActionAddFormController.php
Contains \Drupal\action\ActionAddFormController.
ActionAdminManageForm.php in drupal/core/modules/action/lib/Drupal/action/Form/ActionAdminManageForm.php
Contains \Drupal\action\Form\ActionAdminManageForm.
ActionFormControllerBase.php in drupal/core/modules/action/lib/Drupal/action/ActionFormControllerBase.php
Contains Drupal\action\ActionEditFormController.
ActionListController.php in drupal/core/modules/action/lib/Drupal/action/ActionListController.php
Contains \Drupal\action\ActionListController.

... See full list

File

drupal/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerInterface.php, line 26

Namespace

Symfony\Component\DependencyInjection
View source
interface ContainerInterface {
  const EXCEPTION_ON_INVALID_REFERENCE = 1;
  const NULL_ON_INVALID_REFERENCE = 2;
  const IGNORE_ON_INVALID_REFERENCE = 3;
  const SCOPE_CONTAINER = 'container';
  const SCOPE_PROTOTYPE = 'prototype';

  /**
   * Sets a service.
   *
   * @param string $id      The service identifier
   * @param object $service The service instance
   * @param string $scope   The scope of the service
   *
   * @api
   */
  public function set($id, $service, $scope = self::SCOPE_CONTAINER);

  /**
   * Gets a service.
   *
   * @param string $id              The service identifier
   * @param int    $invalidBehavior The behavior when the service does not exist
   *
   * @return object The associated service
   *
   * @throws InvalidArgumentException if the service is not defined
   * @throws ServiceCircularReferenceException When a circular reference is detected
   * @throws ServiceNotFoundException When the service is not defined
   *
   * @see Reference
   *
   * @api
   */
  public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE);

  /**
   * Returns true if the given service is defined.
   *
   * @param string $id The service identifier
   *
   * @return Boolean true if the service is defined, false otherwise
   *
   * @api
   */
  public function has($id);

  /**
   * Gets a parameter.
   *
   * @param string $name The parameter name
   *
   * @return mixed  The parameter value
   *
   * @throws InvalidArgumentException if the parameter is not defined
   *
   * @api
   */
  public function getParameter($name);

  /**
   * Checks if a parameter exists.
   *
   * @param string $name The parameter name
   *
   * @return Boolean The presence of parameter in container
   *
   * @api
   */
  public function hasParameter($name);

  /**
   * Sets a parameter.
   *
   * @param string $name  The parameter name
   * @param mixed  $value The parameter value
   *
   * @api
   */
  public function setParameter($name, $value);

  /**
   * Enters the given scope
   *
   * @param string $name
   *
   * @api
   */
  public function enterScope($name);

  /**
   * Leaves the current scope, and re-enters the parent scope
   *
   * @param string $name
   *
   * @api
   */
  public function leaveScope($name);

  /**
   * Adds a scope to the container
   *
   * @param ScopeInterface $scope
   *
   * @api
   */
  public function addScope(ScopeInterface $scope);

  /**
   * Whether this container has the given scope
   *
   * @param string $name
   *
   * @return Boolean
   *
   * @api
   */
  public function hasScope($name);

  /**
   * Determines whether the given scope is currently active.
   *
   * It does however not check if the scope actually exists.
   *
   * @param string $name
   *
   * @return Boolean
   *
   * @api
   */
  public function isScopeActive($name);

}

Members

Namesort descending Modifiers Type Description Overrides
ContainerInterface::addScope public function Adds a scope to the container 1
ContainerInterface::enterScope public function Enters the given scope 1
ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE constant
ContainerInterface::get public function Gets a service. 1
ContainerInterface::getParameter public function Gets a parameter. 1
ContainerInterface::has public function Returns true if the given service is defined. 1
ContainerInterface::hasParameter public function Checks if a parameter exists. 1
ContainerInterface::hasScope public function Whether this container has the given scope 1
ContainerInterface::IGNORE_ON_INVALID_REFERENCE constant
ContainerInterface::isScopeActive public function Determines whether the given scope is currently active. 1
ContainerInterface::leaveScope public function Leaves the current scope, and re-enters the parent scope 1
ContainerInterface::NULL_ON_INVALID_REFERENCE constant
ContainerInterface::SCOPE_CONTAINER constant
ContainerInterface::SCOPE_PROTOTYPE constant
ContainerInterface::set public function Sets a service. 1
ContainerInterface::setParameter public function Sets a parameter. 1