# Copyright (C) 2001-2018, Python Software Foundation
# For licence information, see README file.
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
"PO-Revision-Date: 2018-10-06 17:04+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.1.1\n"

#: library/asynchat.rst:2
msgid ":mod:`asynchat` --- Asynchronous socket command/response handler"
msgstr ""
":mod:`asynchat` --- Gestionnaire d'interfaces de connexion (*socket*) "
"commande/réponse asynchrones"

#: library/asynchat.rst:11
msgid "**Source code:** :source:`Lib/asynchat.py`"
msgstr "*Code source :** :source:`Lib/asynchat.py`"

#: library/asynchat.rst:17
msgid ""
"The :mod:`asynchat` module is deprecated (see :pep:`PEP 594 <594#asynchat>` "
"for details). Please use :mod:`asyncio` instead."
msgstr ""

#: library/asynchat.rst:22
msgid ""
"This module exists for backwards compatibility only.  For new code we "
"recommend using :mod:`asyncio`."
msgstr ""
"Ce module n'existe que pour des raisons de rétrocompatibilité. Pour du code "
"nouveau, l'utilisation de :mod:`asyncio` est recommandée."

#: library/asynchat.rst:25
msgid ""
"This module builds on the :mod:`asyncore` infrastructure, simplifying "
"asynchronous clients and servers and making it easier to handle protocols "
"whose elements are terminated by arbitrary strings, or are of variable "
"length. :mod:`asynchat` defines the abstract class :class:`async_chat` that "
"you subclass, providing implementations of the :meth:`collect_incoming_data` "
"and :meth:`found_terminator` methods. It uses the same asynchronous loop as :"
"mod:`asyncore`, and the two types of channel, :class:`asyncore.dispatcher` "
"and :class:`asynchat.async_chat`, can freely be mixed in the channel map. "
"Typically an :class:`asyncore.dispatcher` server channel generates new :"
"class:`asynchat.async_chat` channel objects as it receives incoming "
"connection requests."
msgstr ""
"Ce module s'appuie sur l'infrastructure de :mod:`asyncore`, en simplifiant "
"les clients et serveurs asynchrones et en rendant plus facile la gestion de "
"protocoles dont les éléments finissent par une chaine arbitraire, ou sont de "
"longueur variable. :mod:`asynchat` définit une classe abstraite :class:"
"`async_chat` dont vous héritez, et qui fournit des implémentations des "
"méthodes :meth:`collect_incoming_data` et :meth:`found_terminator`. Il "
"utilise la même boucle asynchrone que :mod:`asyncore`, et deux types de "
"canaux, :class:`asyncore.dispatcher` et :class:`asynchat.async_chat`, qui "
"peuvent être librement mélangés dans la carte des canaux. Habituellement, un "
"canal de serveur :class:`asyncore.dispatcher` génère de nouveaux canaux "
"d'objets :class:`asynchat.async_chat` à la réception de requêtes de "
"connexion."

#: library/asynchat.rst:40
msgid ""
"This class is an abstract subclass of :class:`asyncore.dispatcher`. To make "
"practical use of the code you must subclass :class:`async_chat`, providing "
"meaningful :meth:`collect_incoming_data` and :meth:`found_terminator` "
"methods. The :class:`asyncore.dispatcher` methods can be used, although not "
"all make sense in a message/response context."
msgstr ""
"Cette classe est une sous-classe abstraite de :class:`asyncore.dispatcher`. "
"Pour en faire un usage pratique, vous devez créer une classe héritant de :"
"class:`async_chat`, et implémentant des méthodes :meth:"
"`collect_incoming_data` et :meth:`found_terminator` sensées. Les méthodes "
"de  :class:`asyncore.dispatcher` peuvent être utilisées, même si toutes "
"n'ont pas de sens dans un contexte de messages/réponse."

#: library/asynchat.rst:47
msgid ""
"Like :class:`asyncore.dispatcher`, :class:`async_chat` defines a set of "
"events that are generated by an analysis of socket conditions after a :c:"
"func:`select` call. Once the polling loop has been started the :class:"
"`async_chat` object's methods are called by the event-processing framework "
"with no action on the part of the programmer."
msgstr ""
"Comme :class:`asyncore.dispatcher`, :class:`async_chat` définit un ensemble "
"d’événements générés par une analyse de l'état des interfaces de connexion "
"(*socket* en anglais) après un appel à :c:func:`select`. Une fois que la "
"boucle de scrutation (*polling* en anglais) a été lancée, les méthodes des "
"objets :class:`async_chat` sont appelées par le *framework* de traitement "
"d’événements sans que le programmeur n'ait à le spécifier."

#: library/asynchat.rst:53
msgid ""
"Two class attributes can be modified, to improve performance, or possibly "
"even to conserve memory."
msgstr ""
"Deux attributs de classe peuvent être modifiés, pour améliorer la "
"performance, ou potentiellement pour économiser de la mémoire."

#: library/asynchat.rst:59
msgid "The asynchronous input buffer size (default ``4096``)."
msgstr "La taille du tampon d'entrées asynchrones (``4096`` par défaut)."

#: library/asynchat.rst:64
msgid "The asynchronous output buffer size (default ``4096``)."
msgstr "La taille du tampon de sorties asynchrones (``4096`` par défaut)."

#: library/asynchat.rst:66
msgid ""
"Unlike :class:`asyncore.dispatcher`, :class:`async_chat` allows you to "
"define a :abbr:`FIFO (first-in, first-out)` queue of *producers*. A producer "
"need have only one method, :meth:`more`, which should return data to be "
"transmitted on the channel. The producer indicates exhaustion (*i.e.* that "
"it contains no more data) by having its :meth:`more` method return the empty "
"bytes object. At this point the :class:`async_chat` object removes the "
"producer from the queue and starts using the next producer, if any. When the "
"producer queue is empty the :meth:`handle_write` method does nothing. You "
"use the channel object's :meth:`set_terminator` method to describe how to "
"recognize the end of, or an important breakpoint in, an incoming "
"transmission from the remote endpoint."
msgstr ""
"Contrairement à :class:`asyncore.dispatcher`, :class:`async_chat` permet de "
"définir une queue :abbr:`FIFO (first-in, first-out)` de *producteurs*. Un "
"producteur nécessite seulement une méthode, :meth:`more`, qui renvoie la "
"donnée à transmettre au canal. Le producteur indique son épuisement (*c.-à-d."
"* qu'il ne contiens plus de données) en ne retournant avec sa méthode :meth:"
"`more` l'objet bytes vide. L'objet :class:`async_chat` retire alors le "
"producteur de la queue et commence à utiliser le producteur suivant, si il y "
"en à un. Quand la queue de producteurs est vide, la méthode :meth:"
"`handle_write` ne fait rien. La méthode :meth:`set_terminator` de l'objet du "
"canal est utilisé pour décrire comment reconnaître la fin, ou la présence "
"d'un point d'arrêt, dans in transmission entrante depuis le point d’accès "
"distant."

#: library/asynchat.rst:79
msgid ""
"To build a functioning :class:`async_chat` subclass your  input methods :"
"meth:`collect_incoming_data` and :meth:`found_terminator` must handle the "
"data that the channel receives asynchronously. The methods are described "
"below."
msgstr ""
"Pour construire une sous classe fonctionnelle de :class:`async_chat` pour "
"vos méthodes d'entrées :meth:`collect_incoming_data` et :meth:"
"`found_terminator` doivent gérer la donnée que le canal reçoit de manière "
"asynchrone. Ces méthodes sont décrites ci-dessous."

#: library/asynchat.rst:87
msgid ""
"Pushes a ``None`` on to the producer queue. When this producer is popped off "
"the queue it causes the channel to be closed."
msgstr ""
"Pousse un ``None`` sur la pile de producteurs. Quand ce producteur est "
"récupéré dans la queue, le canal est fermé."

#: library/asynchat.rst:93
msgid ""
"Called with *data* holding an arbitrary amount of received data.  The "
"default method, which must be overridden, raises a :exc:"
"`NotImplementedError` exception."
msgstr ""
"Appelé avec *data* contenant une quantité arbitraire de données. La méthode "
"par défaut, qui doit être écrasée, lève une :exc:`NotImplementedError`."

#: library/asynchat.rst:100
msgid ""
"In emergencies this method will discard any data held in the input and/or "
"output buffers and the producer queue."
msgstr ""
"En cas d'urgence, cette méthode va supprimer tout donnée présente dans les "
"tampons d'entrée et/ou de sortie dans la queue de producteurs."

#: library/asynchat.rst:106
msgid ""
"Called when the incoming data stream  matches the termination condition set "
"by :meth:`set_terminator`. The default method, which must be overridden, "
"raises a :exc:`NotImplementedError` exception. The buffered input data "
"should be available via an instance attribute."
msgstr ""
"Appelée quand le flux de donné corresponds à la condition de fin décrite "
"par :meth:`set_terminator`. La méthode par défaut, qui doit être écrasée, "
"lève une :exc:`NotImplementedError`. Les données entrantes mise en tampon "
"devraient être disponible via un attribut de l'instance."

#: library/asynchat.rst:114
msgid "Returns the current terminator for the channel."
msgstr "Renvoie le terminateur courant pour le canal."

#: library/asynchat.rst:119
msgid ""
"Pushes data on to the channel's queue to ensure its transmission. This is "
"all you need to do to have the channel write the data out to the network, "
"although it is possible to use your own producers in more complex schemes to "
"implement encryption and chunking, for example."
msgstr ""
"Pousse *data* sur la pile du canal pour assurer sa transmission. C'est tout "
"ce dont on a besoin pour que le canal envoie des données sur le réseau. "
"Cependant, il est possible d'utiliser vos propres producteurs dans des "
"schémas plus complexes qui implémentent de la cryptographie et du *chunking* "
"par exemple."

#: library/asynchat.rst:127
msgid ""
"Takes a producer object and adds it to the producer queue associated with "
"the channel.  When all currently-pushed producers have been exhausted the "
"channel will consume this producer's data by calling its :meth:`more` method "
"and send the data to the remote endpoint."
msgstr ""
"Prends un objet producteur l'ajoute à la queue de producteurs associée au "
"canal. Quand tout les producteurs actuellement poussés ont été épuisé, le "
"canal consomme les données de ce producteur en appelant sa méthode :meth:"
"`more` et envoie les données au point d’accès distant."

#: library/asynchat.rst:135
msgid ""
"Sets the terminating condition to be recognized on the channel.  ``term`` "
"may be any of three types of value, corresponding to three different ways to "
"handle incoming protocol data."
msgstr ""
"Définit le marqueur de fin que le canal doit reconnaître. ``term`` peut être "
"n'importe lequel des trois types de valeurs, correspondant aux trois "
"différentes manières de gérer les données entrantes."

#: library/asynchat.rst:140
msgid "term"
msgstr "*term*"

#: library/asynchat.rst:140
msgid "Description"
msgstr "Description"

#: library/asynchat.rst:142
msgid "*string*"
msgstr "*string*"

#: library/asynchat.rst:142
msgid ""
"Will call :meth:`found_terminator` when the string is found in the input "
"stream"
msgstr ""
"Appellera :meth:`found_terminator` quand la chaîne est trouvée dans le flux "
"d'entré"

#: library/asynchat.rst:145
msgid "*integer*"
msgstr "*integer*"

#: library/asynchat.rst:145
msgid ""
"Will call :meth:`found_terminator` when the indicated number of characters "
"have been received"
msgstr ""
"Appellera :meth:`found_terminator` quand le nombre de caractère indiqué à "
"été reçu"

#: library/asynchat.rst:149
msgid "``None``"
msgstr "``None``"

#: library/asynchat.rst:149
msgid "The channel continues to collect data forever"
msgstr "Le canal continue de collecter des informations indéfiniment"

#: library/asynchat.rst:153
msgid ""
"Note that any data following the terminator will be available for reading by "
"the channel after :meth:`found_terminator` is called."
msgstr ""
"Notez que toute donnée située après le marqueur de fin sera accessible en "
"lecture par le canal après que :meth:`found_terminator` ai été appelé."

#: library/asynchat.rst:160
msgid "asynchat Example"
msgstr "Exemple *asynchat*"

#: library/asynchat.rst:162
msgid ""
"The following partial example shows how HTTP requests can be read with :"
"class:`async_chat`.  A web server might create an :class:"
"`http_request_handler` object for each incoming client connection. Notice "
"that initially the channel terminator is set to match the blank line at the "
"end of the HTTP headers, and a flag indicates that the headers are being "
"read."
msgstr ""
"L'exemple partiel suivant montre comment des requêtes HTTP peuvent être lues "
"avec :class:`async_chat`. Un serveur web pourrait créer un objet :class:"
"`http_request_handler` pour chaque connections lient entrantes. Notez que "
"initialement, le marqueur de fin du canal est défini pour reconnaître les "
"lignes vides à la fin des entêtes HTTP, et une option indique que les "
"entêtes sont en train d'être lues."

#: library/asynchat.rst:169
msgid ""
"Once the headers have been read, if the request is of type POST (indicating "
"that further data are present in the input stream) then the ``Content-Length:"
"`` header is used to set a numeric terminator to read the right amount of "
"data from the channel."
msgstr ""
"Une fois que les entêtes ont été lues, si la requête est de type *POST* (ce "
"qui indique que davantage de données sont présent dans dans le flux entrant) "
"alors l'entête ``Content-Length:`` est utilisé pour définir un marqueur de "
"fin numérique pour lire la bonne quantité de donné depuis le canal."

#: library/asynchat.rst:174
msgid ""
"The :meth:`handle_request` method is called once all relevant input has been "
"marshalled, after setting the channel terminator to ``None`` to ensure that "
"any extraneous data sent by the web client are ignored. ::"
msgstr ""
"La méthode :meth:`handle_request` est appelée une fois que toutes les "
"données pertinentes ont été rassemblées, après avoir définit le marqueur de "
"fin à ``None`` pour s'assurer que toute données étrangères envoyées par le "
"client web sont ignorées. ::"

#~ msgid "Please use :mod:`asyncio` instead."
#~ msgstr "Utilisez :mod:`asyncio` à la place."
