Security update for Core, with self-updated composer
[yaffs-website] / vendor / symfony / translation / Dumper / FileDumper.php
index b217d108a5080a13ac8ab46d113ecd4e0dc36316..b2b50cfc9470d3fdc3e67571cb1975cc1f076b6d 100644 (file)
@@ -12,6 +12,8 @@
 namespace Symfony\Component\Translation\Dumper;
 
 use Symfony\Component\Translation\MessageCatalogue;
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\RuntimeException;
 
 /**
  * FileDumper is an implementation of DumperInterface that dump a message catalogue to file(s).
@@ -64,7 +66,7 @@ abstract class FileDumper implements DumperInterface
     public function dump(MessageCatalogue $messages, $options = array())
     {
         if (!array_key_exists('path', $options)) {
-            throw new \InvalidArgumentException('The file dumper needs a path option.');
+            throw new InvalidArgumentException('The file dumper needs a path option.');
         }
 
         // save a file for each domain
@@ -73,12 +75,13 @@ abstract class FileDumper implements DumperInterface
             $fullpath = $options['path'].'/'.$this->getRelativePath($domain, $messages->getLocale());
             if (file_exists($fullpath)) {
                 if ($this->backup) {
+                    @trigger_error('Creating a backup while dumping a message catalogue is deprecated since version 3.1 and will be removed in 4.0. Use TranslationWriter::disableBackup() to disable the backup.', E_USER_DEPRECATED);
                     copy($fullpath, $fullpath.'~');
                 }
             } else {
                 $directory = dirname($fullpath);
                 if (!file_exists($directory) && !@mkdir($directory, 0777, true)) {
-                    throw new \RuntimeException(sprintf('Unable to create directory "%s".', $directory));
+                    throw new RuntimeException(sprintf('Unable to create directory "%s".', $directory));
                 }
             }
             // save file
@@ -89,35 +92,13 @@ abstract class FileDumper implements DumperInterface
     /**
      * Transforms a domain of a message catalogue to its string representation.
      *
-     * Override this function in child class if $options is used for message formatting.
-     *
      * @param MessageCatalogue $messages
      * @param string           $domain
      * @param array            $options
      *
      * @return string representation
      */
-    public function formatCatalogue(MessageCatalogue $messages, $domain, array $options = array())
-    {
-        @trigger_error('The '.__METHOD__.' method will replace the format method in 3.0. You should overwrite it instead of overwriting format instead.', E_USER_DEPRECATED);
-
-        return $this->format($messages, $domain);
-    }
-
-    /**
-     * Transforms a domain of a message catalogue to its string representation.
-     *
-     * @param MessageCatalogue $messages
-     * @param string           $domain
-     *
-     * @return string representation
-     *
-     * @deprecated since version 2.8, to be removed in 3.0. Overwrite formatCatalogue() instead.
-     */
-    protected function format(MessageCatalogue $messages, $domain)
-    {
-        throw new \LogicException('The "FileDumper::format" method needs to be overwritten, you should implement either "format" or "formatCatalogue".');
-    }
+    abstract public function formatCatalogue(MessageCatalogue $messages, $domain, array $options = array());
 
     /**
      * Gets the file extension of the dumper.