\Swift_Transport_LoadBalancedTransport
Redundantly and rotationally uses several Transports when sending.
- Author: Chris Corbyn
Synopsis
class Swift_Transport_LoadBalancedTransport
implements
Swift_Transport
{
- // members
- private array $_deadTransports;
- protected array $_transports;
- // methods
- public void __construct()
- public void setTransports()
- public array getTransports()
- public boolean isStarted()
- public void start()
- public void stop()
- public int send()
- public void registerPlugin()
- protected Swift_Transport _getNextTransport()
- protected void _killCurrentTransport()
Hierarchy
Extended by
Implements
Members
private
- $_deadTransports
—
array
Transports which are deemed useless.
protected
- $_transports
—
array
The Transports which are used in rotation.
Methods
protected
- _getNextTransport() — Rotates the transport list around and returns the first instance.
- _killCurrentTransport() — Tag the currently used (top of stack) transport as dead/useless.
public
- __construct() — Creates a new LoadBalancedTransport.
- getTransports() — Get $transports to delegate to.
- isStarted() — Test if this Transport mechanism has started.
- registerPlugin() — Register a plugin.
- send() — Send the given Message.
- setTransports() — Set $transports to delegate to.
- start() — Start this Transport mechanism.
- stop() — Stop this Transport mechanism.