diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php index 44ebdeb36e7d4..767a935286b04 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php @@ -15,6 +15,7 @@ use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Style\SymfonyStyle; use Symfony\Component\Process\PhpExecutableFinder; use Symfony\Component\Process\ProcessBuilder; @@ -84,6 +85,8 @@ protected function configure() */ protected function execute(InputInterface $input, OutputInterface $output) { + $stdout = $output; + $output = new SymfonyStyle($input, $output); $documentRoot = $input->getOption('docroot'); if (null === $documentRoot) { @@ -91,7 +94,7 @@ protected function execute(InputInterface $input, OutputInterface $output) } if (!is_dir($documentRoot)) { - $output->writeln(sprintf('The given document root directory "%s" does not exist', $documentRoot)); + $output->error(sprintf('The given document root directory "%s" does not exist', $documentRoot)); return 1; } @@ -104,17 +107,17 @@ protected function execute(InputInterface $input, OutputInterface $output) } if ($this->isOtherServerProcessRunning($address)) { - $output->writeln(sprintf('A process is already listening on http://%s.', $address)); + $output->error(sprintf('A process is already listening on http://%s.', $address)); return 1; } if ('prod' === $env) { - $output->writeln('Running PHP built-in server in production environment is NOT recommended!'); + $output->error('Running PHP built-in server in production environment is NOT recommended!'); } - $output->writeln(sprintf("Server running on http://%s\n", $address)); - $output->writeln('Quit the server with CONTROL-C.'); + $output->success(sprintf('Server running on http://%s', $address)); + $output->comment('Quit the server with CONTROL-C.'); if (null === $builder = $this->createPhpProcessBuilder($output, $address, $input->getOption('router'), $env)) { return 1; @@ -124,26 +127,28 @@ protected function execute(InputInterface $input, OutputInterface $output) $builder->setTimeout(null); $process = $builder->getProcess(); - if (OutputInterface::VERBOSITY_VERBOSE > $output->getVerbosity()) { + if (OutputInterface::VERBOSITY_VERBOSE > $stdout->getVerbosity()) { $process->disableOutput(); } $this ->getHelper('process') - ->run($output, $process, null, null, OutputInterface::VERBOSITY_VERBOSE); + ->run($stdout, $process, null, null, OutputInterface::VERBOSITY_VERBOSE); if (!$process->isSuccessful()) { - $output->writeln('Built-in server terminated unexpectedly'); + $errorMessages = array('Built-in server terminated unexpectedly.'); if ($process->isOutputDisabled()) { - $output->writeln('Run the command again with -v option for more details'); + $errorMessages[] = 'Run the command again with -v option for more details.'; } + + $output->error($errorMessages); } return $process->getExitCode(); } - private function createPhpProcessBuilder(OutputInterface $output, $address, $router, $env) + private function createPhpProcessBuilder(SymfonyStyle $output, $address, $router, $env) { $router = $router ?: $this ->getContainer() @@ -152,7 +157,7 @@ private function createPhpProcessBuilder(OutputInterface $output, $address, $rou ; if (!file_exists($router)) { - $output->writeln(sprintf('The given router script "%s" does not exist', $router)); + $output->error(sprintf('The given router script "%s" does not exist.', $router)); return; } @@ -161,7 +166,7 @@ private function createPhpProcessBuilder(OutputInterface $output, $address, $rou $finder = new PhpExecutableFinder(); if (false === $binary = $finder->find()) { - $output->writeln('Unable to find PHP binary to run server'); + $output->error('Unable to find PHP binary to run server.'); return; } diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ServerStartCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ServerStartCommand.php index 6300e9774a25d..309ede6d068d3 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ServerStartCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ServerStartCommand.php @@ -11,11 +11,11 @@ namespace Symfony\Bundle\FrameworkBundle\Command; -use Symfony\Component\Console\Question\ConfirmationQuestion; use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Style\SymfonyStyle; use Symfony\Component\Process\PhpExecutableFinder; use Symfony\Component\Process\Process; @@ -74,11 +74,15 @@ protected function configure() */ protected function execute(InputInterface $input, OutputInterface $output) { + $output = new SymfonyStyle($input, $output); + if (!extension_loaded('pcntl')) { - $output->writeln('This command needs the pcntl extension to run.'); - $output->writeln('You can either install it or use the server:run command instead to run the built-in web server.'); + $output->error(array( + 'This command needs the pcntl extension to run.', + 'You can either install it or use the "server:run" command instead to run the built-in web server.', + )); - if ($this->getHelper('question')->ask($input, $output, new ConfirmationQuestion('Do you want to start server:run immediately? [Yn] ', true))) { + if ($output->ask('Do you want to execute server:run immediately? [Yn] ', true)) { $command = $this->getApplication()->find('server:run'); return $command->run($input, $output); @@ -94,7 +98,7 @@ protected function execute(InputInterface $input, OutputInterface $output) } if (!is_dir($documentRoot)) { - $output->writeln(sprintf('The given document root directory "%s" does not exist', $documentRoot)); + $output->error(sprintf('The given document root directory "%s" does not exist.', $documentRoot)); return 1; } @@ -112,32 +116,34 @@ protected function execute(InputInterface $input, OutputInterface $output) } if (!$input->getOption('force') && $this->isOtherServerProcessRunning($address)) { - $output->writeln(sprintf('A process is already listening on http://%s.', $address)); - $output->writeln(sprintf('Use the --force option if the server process terminated unexpectedly to start a new web server process.')); + $output->error(array( + sprintf('A process is already listening on http://%s.', $address), + 'Use the --force option if the server process terminated unexpectedly to start a new web server process.', + )); return 1; } if ('prod' === $env) { - $output->writeln('Running PHP built-in server in production environment is NOT recommended!'); + $output->error('Running PHP built-in server in production environment is NOT recommended!'); } $pid = pcntl_fork(); if ($pid < 0) { - $output->writeln('Unable to start the server process'); + $output->error('Unable to start the server process.'); return 1; } if ($pid > 0) { - $output->writeln(sprintf('Web server listening on http://%s', $address)); + $output->success(sprintf('Web server listening on http://%s', $address)); return; } if (posix_setsid() < 0) { - $output->writeln('Unable to set the child process as session leader'); + $output->error('Unable to set the child process as session leader'); return 1; } @@ -152,7 +158,7 @@ protected function execute(InputInterface $input, OutputInterface $output) touch($lockFile); if (!$process->isRunning()) { - $output->writeln('Unable to start the server process'); + $output->error('Unable to start the server process'); unlink($lockFile); return 1; @@ -172,13 +178,13 @@ protected function execute(InputInterface $input, OutputInterface $output) * Determine the absolute file path for the router script, using the environment to choose a standard script * if no custom router script is specified. * - * @param string|null $router File path of the custom router script, if set by the user; otherwise null - * @param string $env The application environment - * @param OutputInterface $output An OutputInterface instance + * @param string|null $router File path of the custom router script, if set by the user; otherwise null + * @param string $env The application environment + * @param SymfonyStyle $output An SymfonyStyle instance * * @return string|bool The absolute file path of the router script, or false on failure */ - private function determineRouterScript($router, $env, OutputInterface $output) + private function determineRouterScript($router, $env, SymfonyStyle $output) { if (null === $router) { $router = $this @@ -189,7 +195,7 @@ private function determineRouterScript($router, $env, OutputInterface $output) } if (false === $path = realpath($router)) { - $output->writeln(sprintf('The given router script "%s" does not exist', $router)); + $output->error(sprintf('The given router script "%s" does not exist.', $router)); return false; } @@ -200,18 +206,18 @@ private function determineRouterScript($router, $env, OutputInterface $output) /** * Creates a process to start PHP's built-in web server. * - * @param OutputInterface $output A OutputInterface instance - * @param string $address IP address and port to listen to - * @param string $documentRoot The application's document root - * @param string $router The router filename + * @param SymfonyStyle $output A SymfonyStyle instance + * @param string $address IP address and port to listen to + * @param string $documentRoot The application's document root + * @param string $router The router filename * * @return Process The process */ - private function createServerProcess(OutputInterface $output, $address, $documentRoot, $router) + private function createServerProcess(SymfonyStyle $output, $address, $documentRoot, $router) { $finder = new PhpExecutableFinder(); if (false === $binary = $finder->find()) { - $output->writeln('Unable to find PHP binary to start server'); + $output->error('Unable to find PHP binary to start server.'); return; } diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ServerStatusCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ServerStatusCommand.php index 2c6d2c49ff09c..7b73fc9384c93 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ServerStatusCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ServerStatusCommand.php @@ -14,6 +14,7 @@ use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Style\SymfonyStyle; /** * Shows the status of a process that is running PHP's built-in web server in @@ -42,6 +43,7 @@ protected function configure() */ protected function execute(InputInterface $input, OutputInterface $output) { + $output = new SymfonyStyle($input, $output); $address = $input->getArgument('address'); // remove an orphaned lock file @@ -50,9 +52,9 @@ protected function execute(InputInterface $input, OutputInterface $output) } if (file_exists($this->getLockFile($address))) { - $output->writeln(sprintf('Web server still listening on http://%s', $address)); + $output->success(sprintf('Web server still listening on http://%s', $address)); } else { - $output->writeln(sprintf('No web server is listening on http://%s', $address)); + $output->warning(sprintf('No web server is listening on http://%s', $address)); } } diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ServerStopCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ServerStopCommand.php index c40952059a294..d2bdaa167d80b 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ServerStopCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ServerStopCommand.php @@ -15,6 +15,7 @@ use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Input\InputOption; +use Symfony\Component\Console\Style\SymfonyStyle; /** * Stops a background process running PHP's built-in web server. @@ -54,6 +55,8 @@ protected function configure() */ protected function execute(InputInterface $input, OutputInterface $output) { + $output = new SymfonyStyle($input, $output); + $address = $input->getArgument('address'); if (false === strpos($address, ':')) { $address = $address.':'.$input->getOption('port'); @@ -62,12 +65,12 @@ protected function execute(InputInterface $input, OutputInterface $output) $lockFile = $this->getLockFile($address); if (!file_exists($lockFile)) { - $output->writeln(sprintf('No web server is listening on http://%s', $address)); + $output->error(sprintf('No web server is listening on http://%s', $address)); return 1; } unlink($lockFile); - $output->writeln(sprintf('Stopped the web server listening on http://%s', $address)); + $output->success(sprintf('Stopped the web server listening on http://%s', $address)); } } pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy