<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect1 id="migration.16">
    <title>Zend Framework 1.6</title>

    <para>
        Lors de la migration d'un version précédente vers Zend Framework 1.6 ou plus récent
        vous devriez prendre note de ce qui suit.
    </para>

    <sect2 id="migration.16.zend.controller">
        <title>Zend_Controller</title>

        <sect3 id="migration.16.zend.controller.dispatcher">
            <title>Changement dans l'interface Dispatcher</title>

            <para>
                Les utilisateurs ont porté à notre connaissance le fait que
                <classname>Zend_Controller_Front</classname> et
                <classname>Zend_Controller_Router_Route_Module</classname> utilisent tous les deux
                des méthodes du distributeur qui ne sont pas dans l'interface associée. Nous avons
                donc ajouté les trois méthodes suivantes pour s'assurer que les distributeurs
                personnalisés continueront à fonctionner avec les implémentations embarquées&#160;:
            </para>

            <itemizedlist>
                <listitem>
                    <para>
                        <methodname>getDefaultModule()</methodname>&#160;: retourne le nom du module par
                        défaut.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <methodname>getDefaultControllerName()</methodname>&#160;: retourne le nom du
                        contrôleur par défaut.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <methodname>getDefaultAction()</methodname>&#160;: retourne le nom de l'action par
                        défaut.
                    </para>
                </listitem>
            </itemizedlist>
        </sect3>
    </sect2>

    <sect2 id="migration.16.zend.file.transfer">
        <title>Zend_File_Transfer</title>

        <sect3 id="migration.16.zend.file.transfer.validators">
            <title>Changements quand vous utilisez des validateurs</title>

            <para>
                Certaines remarques des utilisateurs indiquaient que les validateurs de
                <classname>Zend_File_Transfer</classname> ne fonctionnaient pas comme ceux par
                défaut fournis avec <classname>Zend_Form</classname>.
                <classname>Zend_Form</classname> permet par exemple l'utilisation du paramètre
                <code>breakChainOnFailure</code> qui stoppe la validation de tous les validateurs
                suivants dès qu'une erreur de validation apparaît.
            </para>

            <para>
                Nous avons donc ajouter ce paramètre à tous les validateurs existants pour
                <classname>Zend_File_Transfer</classname>.
            </para>

            <itemizedlist>
                <listitem>
                    <para>
                        Ancienne <acronym>API</acronym>&#160;: <code>addValidator($validator, $options,
                        $files)</code>.
                    </para>
                </listitem>

                <listitem>
                    <para>
                        Nouvelle <acronym>API</acronym>&#160;: <code>addValidator($validator, $breakChainOnFailure,
                        $options, $files)</code>.
                    </para>
                </listitem>
            </itemizedlist>

            <para>
                Pour migrer vos scripts vers la nouvelle <acronym>API</acronym>, ajoutez simplement un a
                <constant>FALSE</constant> après voir défini le validateur souhaité.
            </para>

            <example id="migration.16.zend.file.transfer.example">
                <title>Changer les validateurs de fichiers de 1.6.1 vers 1.6.2</title>

                <programlisting language="php"><![CDATA[
// Exemple pour 1.6.1
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->addValidator('FilesSize', array('1B', '100kB'));

// Même exemple pour 1.6.2 et plus récent
// Notez l'ajout du booléen false
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->addValidator('FilesSize', false, array('1B', '100kB'));
]]></programlisting>
            </example>
        </sect3>
    </sect2>
</sect1>
