You are here

interface ContainerInterface in Service Container 7.2

Same name in this branch
  1. 7.2 src/DependencyInjection/ContainerInterface.php \Drupal\service_container\DependencyInjection\ContainerInterface
  2. 7.2 lib/Symfony/Component/DependencyInjection/ContainerInterface.php \Symfony\Component\DependencyInjection\ContainerInterface
  3. 7.2 modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/ContainerInterface.php \Symfony\Component\DependencyInjection\ContainerInterface
Same name and namespace in other branches
  1. 7 lib/Symfony/Component/DependencyInjection/ContainerInterface.php \Symfony\Component\DependencyInjection\ContainerInterface
  2. 7 modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/ContainerInterface.php \Symfony\Component\DependencyInjection\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

51 files declare their use of ContainerInterface
CheckDefinitionValidityPass.php in modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Compiler/CheckDefinitionValidityPass.php
CheckDefinitionValidityPassTest.php in modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php
CheckExceptionOnInvalidReferenceBehaviorPass.php in modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php
CheckReferenceValidityPass.php in modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Compiler/CheckReferenceValidityPass.php
CheckReferenceValidityPassTest.php in modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Tests/Compiler/CheckReferenceValidityPassTest.php

... See full list

File

lib/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 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 bool 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 bool 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 bool
   *
   * @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 bool
   *
   * @api
   */
  public function isScopeActive($name);

}

Members

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