annotate vendor/consolidation/site-process/src/Factory/TransportFactoryInterface.php @ 5:12f9dff5fda9 tip

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:34:47 +0100
parents
children
rev   line source
Chris@5 1 <?php
Chris@5 2
Chris@5 3 namespace Consolidation\SiteProcess\Factory;
Chris@5 4
Chris@5 5 use Consolidation\SiteAlias\SiteAliasInterface;
Chris@5 6 use Consolidation\SiteProcess\Transport\TransportInterface;
Chris@5 7 use Consolidation\Config\ConfigInterface;
Chris@5 8
Chris@5 9 /**
Chris@5 10 * TransportFactoryInterface defines a transport factory that is responsible
Chris@5 11 * for:
Chris@5 12 *
Chris@5 13 * - Determining whether a provided site alias is applicable to this transport
Chris@5 14 * - Creating an instance of a transport for an applicable site alias.
Chris@5 15 *
Chris@5 16 * There is always a transport for every factory, and visa-versa.
Chris@5 17 * @see Consolidation\SiteProcess\Transport\TransportInterface
Chris@5 18 */
Chris@5 19 interface TransportFactoryInterface
Chris@5 20 {
Chris@5 21 /**
Chris@5 22 * Check to see if a provided site alias is applicable to this transport type.
Chris@5 23 * @param SiteAliasInterface $siteAlias
Chris@5 24 * @return bool
Chris@5 25 */
Chris@5 26 public function check(SiteAliasInterface $siteAlias);
Chris@5 27
Chris@5 28 /**
Chris@5 29 * Create a transport instance for an applicable site alias.
Chris@5 30 * @param SiteAliasInterface $siteAlias
Chris@5 31 * @return TransportInterface
Chris@5 32 */
Chris@5 33 public function create(SiteAliasInterface $siteAlias);
Chris@5 34 }