1234567891011121314151617181920212223242526272829303132333435363738 |
- <?php
- namespace Drupal\Core\Session;
- /**
- * Defines an interface for a service for safe account switching.
- *
- * @ingroup user_api
- */
- interface AccountSwitcherInterface {
- /**
- * Safely switches to another account.
- *
- * Each invocation of AccountSwitcherInterface::switchTo() must be
- * matched by a corresponding invocation of
- * AccountSwitcherInterface::switchBack() in the same function.
- *
- * @param \Drupal\Core\Session\AccountInterface $account
- * The account to switch to.
- *
- * @return \Drupal\Core\Session\AccountSwitcherInterface
- * $this.
- */
- public function switchTo(AccountInterface $account);
- /**
- * Reverts to a previous account after switching.
- *
- * @return \Drupal\Core\Session\AccountSwitcherInterface
- * $this.
- *
- * @throws \RuntimeException
- * When there are no more account switches to revert.
- */
- public function switchBack();
- }
|