static function client($discovery = self::DISCOVER_ENV, $arg = null) { switch ($discovery) { case self::DISCOVER_ENV: $path = $_SERVER["EINHORN_SOCK_PATH"]; $client = Client::forPath($path); break; case self::DISCOVER_FD: $fd = $_SERVER["EINHORN_SOCK_FD"]; $client = Client::forFd($fd); break; case self::DISCOVER_DIRECT: $client = Client::forPath($arg); break; default: throw new UnexpectedValueException("Unexpected discovery strategy '{$discovery}'."); break; } return $client; }