LoadBalancedTransport.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. /*
  3. * This file is part of SwiftMailer.
  4. * (c) 2004-2009 Chris Corbyn
  5. *
  6. * For the full copyright and license information, please view the LICENSE
  7. * file that was distributed with this source code.
  8. */
  9. /**
  10. * Redundantly and rotationally uses several Transport implementations when sending.
  11. *
  12. * @author Chris Corbyn
  13. */
  14. class Swift_LoadBalancedTransport extends Swift_Transport_LoadBalancedTransport
  15. {
  16. /**
  17. * Creates a new LoadBalancedTransport with $transports.
  18. *
  19. * @param array $transports
  20. */
  21. public function __construct($transports = array())
  22. {
  23. call_user_func_array(
  24. array($this, 'Swift_Transport_LoadBalancedTransport::__construct'),
  25. Swift_DependencyContainer::getInstance()
  26. ->createDependenciesFor('transport.loadbalanced')
  27. );
  28. $this->setTransports($transports);
  29. }
  30. /**
  31. * Create a new LoadBalancedTransport instance.
  32. *
  33. * @param array $transports
  34. *
  35. * @return Swift_LoadBalancedTransport
  36. */
  37. public static function newInstance($transports = array())
  38. {
  39. return new self($transports);
  40. }
  41. }