Improve Xsendfile tools, allow dump whenever the conf is disabled

This commit is contained in:
Romain Neutron
2014-02-26 18:46:10 +01:00
parent 965a685236
commit 51b9a7f89a
3 changed files with 13 additions and 12 deletions

View File

@@ -33,27 +33,26 @@ class XSendFileConfigurationDumper extends Command
$output->writeln(''); $output->writeln('');
if (!$this->container['phraseanet.xsendfile-factory']->isXSendFileModeEnabled()) { if (!$this->container['phraseanet.xsendfile-factory']->isXSendFileModeEnabled()) {
$output->writeln('XSendFile support is <error>disabled</error>'); $output->writeln('XSendFile support is <error>disabled</error>, enable it to use this feature.');
$ret = 1;
return 1; } else {
$output->writeln('XSendFile support is <info>enabled</info>');
$ret = 0;
} }
$output->writeln('XSendFile support is <info>enabled</info>');
try { try {
$configuration = $this->container['phraseanet.xsendfile-factory']->getMode(true)->getVirtualHostConfiguration(); $configuration = $this->container['phraseanet.xsendfile-factory']->getMode(true, true)->getVirtualHostConfiguration();
$output->writeln('XSendFile configuration seems <info>OK</info>'); $output->writeln('XSendFile configuration seems <info>OK</info>');
$output->writeln($configuration); $output->writeln($configuration);
return 0;
} catch (RuntimeException $e) { } catch (RuntimeException $e) {
$output->writeln('XSendFile configuration seems <error>invalid</error>'); $output->writeln('XSendFile configuration seems <error>invalid</error>');
return 1; $ret = 1;
} }
$output->writeln(''); $output->writeln('');
return 0; return $ret;
} }
} }

View File

@@ -56,13 +56,15 @@ class XSendFileMappingGenerator extends Command
$this->container['phraseanet.configuration']['xsendfile'] = $conf; $this->container['phraseanet.configuration']['xsendfile'] = $conf;
$output->writeln(" <info>OK</info>"); $output->writeln(" <info>OK</info>");
$output->writeln(""); $output->writeln("");
$output->write("It is now strongly recommended to use <info>xsendfile:dump-configuration</info> command to upgrade your virtual-host"); $output->writeln("It is now strongly recommended to use <info>xsendfile:dump-configuration</info> command to upgrade your virtual-host");
} else { } else {
$output->writeln("Configuration will <info>not</info> be written, use <info>--write</info> option to write it"); $output->writeln("Configuration will <info>not</info> be written, use <info>--write</info> option to write it");
$output->writeln(""); $output->writeln("");
$output->writeln(Yaml::dump(array('xsendfile' => $conf), 4)); $output->writeln(Yaml::dump(array('xsendfile' => $conf), 4));
} }
$output->writeln("");
return 0; return 0;
} }

View File

@@ -66,9 +66,9 @@ class XSendFileFactory
* *
* @throws InvalidArgumentException if mode type is unknown * @throws InvalidArgumentException if mode type is unknown
*/ */
public function getMode($throwException = false) public function getMode($throwException = false, $forceMode = false)
{ {
if (false === $this->enabled) { if (false === $this->enabled && true !== $forceMode) {
return new NullMode(); return new NullMode();
} }