public static function startHttp($options)
 {
     $tcpOptions = ranch_utils::config($options, 'tcp', []);
     $httpOptions = ranch_utils::config($options, 'http', []);
     cowboy_router::compile($options['routes']);
     cowboy::startHttp($tcpOptions, $httpOptions);
 }
 function init(cowboy_request $req, array $opts)
 {
     $handler = ranch_utils::config($opts, 'handler');
     if (!$handler) {
         $req->reply(500);
     } else {
         return new $handler();
     }
 }
 public function __construct(array $opts, $protocol, $protoOpts)
 {
     $this->opts = ['port' => ranch_utils::config($opts, 'port', 3000)];
     $this->protocol = new $protocol($protoOpts);
 }
 public function init(cowboy_request $req, array $opts)
 {
     $module = ranch_utils::config($opts, 'module');
     $function = ranch_utils::config($opts, 'function');
     return $module::$function($req);
 }