Mercurial > hg > isophonics-drupal-site
view core/modules/language/src/LanguageNegotiationMethodInterface.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
line wrap: on
line source
<?php namespace Drupal\language; use Drupal\Core\Config\ConfigFactoryInterface; use Drupal\Core\Language\LanguageInterface; use Drupal\Core\Session\AccountInterface; use Symfony\Component\HttpFoundation\Request; /** * Interface for language negotiation classes. */ interface LanguageNegotiationMethodInterface { /** * Injects the language manager. * * @param \Drupal\language\ConfigurableLanguageManagerInterface $language_manager * The language manager to be used to retrieve the language list and the * already negotiated languages. */ public function setLanguageManager(ConfigurableLanguageManagerInterface $language_manager); /** * Injects the configuration factory. * * @param \Drupal\Core\Config\ConfigFactoryInterface $config * The configuration factory. */ public function setConfig(ConfigFactoryInterface $config); /** * Injects the current user. * * @param \Drupal\Core\Session\AccountInterface $current_user * The current active user. */ public function setCurrentUser(AccountInterface $current_user); /** * Performs language negotiation. * * @param \Symfony\Component\HttpFoundation\Request $request * (optional) The current request. Defaults to NULL if it has not been * initialized yet. * * @return string * A valid language code or FALSE if the negotiation was unsuccessful. */ public function getLangcode(Request $request = NULL); /** * Notifies the plugin that the language code it returned has been accepted. * * @param \Drupal\Core\Language\LanguageInterface $language * The accepted language. */ public function persist(LanguageInterface $language); }