HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/1784574/cwd/node_modules/pusher-js/src/core/strategies/
Upload File :
Current File : //proc/1784574/cwd/node_modules/pusher-js/src/core/strategies/first_connected_strategy.ts
import Strategy from './strategy';
import StrategyRunner from './strategy_runner';

/** Launches the substrategy and terminates on the first open connection.
 *
 * @param {Strategy} strategy
 */
export default class FirstConnectedStrategy implements Strategy {
  strategy: Strategy;

  constructor(strategy: Strategy) {
    this.strategy = strategy;
  }

  isSupported(): boolean {
    return this.strategy.isSupported();
  }

  connect(minPriority: number, callback: Function): StrategyRunner {
    var runner = this.strategy.connect(minPriority, function(error, handshake) {
      if (handshake) {
        runner.abort();
      }
      callback(error, handshake);
    });
    return runner;
  }
}