-
-
Notifications
You must be signed in to change notification settings - Fork 32
/
Copy pathasynchat.po
307 lines (274 loc) · 15 KB
/
asynchat.po
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001-2020, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
# Translators:
# tomo, 2018
# Takanori Suzuki <[email protected]>, 2021
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-02-09 18:48+0900\n"
"PO-Revision-Date: 2018-06-29 17:31+0000\n"
"Last-Translator: Takanori Suzuki <[email protected]>, 2021\n"
"Language-Team: Japanese (https://www.transifex.com/python-doc/teams/5390/"
"ja/)\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../../library/asynchat.rst:2
msgid ":mod:`asynchat` --- Asynchronous socket command/response handler"
msgstr ":mod:`asynchat` --- 非同期ソケットコマンド/レスポンスハンドラ"
#: ../../library/asynchat.rst:10
msgid "**Source code:** :source:`Lib/asynchat.py`"
msgstr "**ソースコード:** :source:`Lib/asynchat.py`"
#: ../../library/asynchat.rst:12
msgid "Please use :mod:`asyncio` instead."
msgstr "代わりに :mod:`asyncio` を使ってください。"
#: ../../library/asynchat.rst:19
msgid ""
"This module exists for backwards compatibility only. For new code we "
"recommend using :mod:`asyncio`."
msgstr ""
"このモジュールは後方互換性のためだけに存在します。新しいコードでは :mod:"
"`asyncio` を利用することを推奨します。"
#: ../../library/asynchat.rst:22
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 ""
":mod:`asynchat` を使うと、 :mod:`asyncore` を基盤とした非同期なサーバ・クライ"
"アントをより簡単に開発する事ができます。 :mod:`asynchat` では、プロトコルの要"
"素が任意の文字列で終了するか、または可変長の文字列であるようなプロトコルを容"
"易に制御できるようになっています。 :mod:`asynchat` は、抽象クラス :class:"
"`async_chat` を定義しており、 :class:`async_chat` を継承して :meth:"
"`collect_incoming_data` メソッドと :meth:`found_terminator` メソッドを実装す"
"れば使うことができます。 :class:`async_chat` と :mod:`asyncore` は同じ非同期"
"ループを使用しており、 :class:`asyncore.dispatcher` も :class:`asynchat."
"async_chat` も同じチャネルマップに登録する事ができます。通常、 :class:"
"`asyncore.dispatcher` はサーバチャネルとして使用し、リクエストの受け付け時"
"に :class:`asynchat.async_chat` オブジェクトを生成します。"
#: ../../library/asynchat.rst:37
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 ""
"このクラスは、 :class:`asyncore.dispatcher` から継承した抽象クラスです。使用"
"する際には :class:`async_chat` のサブクラスを作成し、 :meth:"
"`collect_incoming_data` と :meth:`found_terminator` を定義しなければなりませ"
"ん。 :class:`asyncore.dispatcher` のメソッドを使用する事もできますが、メッ"
"セージ/レスポンス処理を中心に行う場合には使えないメソッドもあります。"
#: ../../library/asynchat.rst:44
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 ""
":class:`asyncore.dispatcher` と同様に、 :class:`async_chat` も :c:func:"
"`select` 呼出し後のソケットの状態からイベントを生成します。ポーリングループ開"
"始後、イベント処理フレームワークが自動的に :class:`async_chat` のメソッドを呼"
"び出しますので、プログラマが処理を記述する必要はありません。"
#: ../../library/asynchat.rst:50
msgid ""
"Two class attributes can be modified, to improve performance, or possibly "
"even to conserve memory."
msgstr ""
"パフォーマンスの向上やメモリの節約のために、2つのクラス属性を調整することがで"
"きます。"
#: ../../library/asynchat.rst:56
msgid "The asynchronous input buffer size (default ``4096``)."
msgstr "非同期入力バッファサイズ (デフォルト値: ``4096``)。"
#: ../../library/asynchat.rst:61
msgid "The asynchronous output buffer size (default ``4096``)."
msgstr "非同期出力バッファサイズ (デフォルト値: ``4096``)。"
#: ../../library/asynchat.rst:63
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 ""
":class:`asyncore.dispatcher` と違い、 :class:`async_chat` では *producer* "
"の :abbr:`FIFO (first-in, first-out)` キューを作成する事ができます。producer"
"は :meth:`more` メソッドを必ず持ち、このメソッドでチャネル上に送出するデータ"
"を返します。producerが枯渇状態 (*i.e.* これ以上のデータを持たない状態)にある"
"場合、 :meth:`more` は空のバイトオブジェクトを返します。この時、 :class:"
"`async_chat` は枯渇状態にあるproducerをキューから除去し、次のproducerが存在す"
"ればそのproducerを使用します。キューにproducerが存在しない場合、 :meth:"
"`handle_write` は何もしません。リモート端点からの入力の終了や重要な中断点を検"
"出する場合は、 :meth:`set_terminator` に記述します。"
#: ../../library/asynchat.rst:76
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 ""
":class:`async_chat` のサブクラスでは、入力メソッド :meth:"
"`collect_incoming_data` と :meth:`found_terminator` を定義し、チャネルが非同"
"期に受信するデータを処理します。これらのメソッドについては後ろで解説します。"
#: ../../library/asynchat.rst:84
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 ""
"producer キューのトップに ``None`` をプッシュします。このproducerがキューから"
"ポップされると、チャネルがクローズします。"
#: ../../library/asynchat.rst:90
msgid ""
"Called with *data* holding an arbitrary amount of received data. The "
"default method, which must be overridden, raises a :exc:"
"`NotImplementedError` exception."
msgstr ""
"チャネルが受信した不定長のデータを *data* に指定して呼び出されます。このメ"
"ソッドは必ずオーバライドする必要があり、デフォルトの実装では、 :exc:"
"`NotImplementedError` 例外を送出します。"
#: ../../library/asynchat.rst:97
msgid ""
"In emergencies this method will discard any data held in the input and/or "
"output buffers and the producer queue."
msgstr ""
"非常用のメソッドで、全ての入出力バッファとproducer キューを廃棄します。"
#: ../../library/asynchat.rst:103
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 ""
"入力データストリームが、 :meth:`set_terminator` で指定した終了条件と一致した"
"場合に呼び出されます。このメソッドは必ずオーバライドする必要があり、デフォル"
"トの実装では、 :exc:`NotImplementedError` 例外を送出します。入力データを参照"
"する必要がある場合でも引数としては与えられないため、入力バッファをインスタン"
"ス属性として参照しなければなりません。"
#: ../../library/asynchat.rst:111
msgid "Returns the current terminator for the channel."
msgstr "現在のチャネルの終了条件を返します。"
#: ../../library/asynchat.rst:116
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 ""
"チャネルのキューにデータをプッシュして転送します。データをチャネルに書き出す"
"ために必要なのはこれだけですが、データの暗号化やチャンク化などを行う場合には"
"独自の producer を使用する事もできます。"
#: ../../library/asynchat.rst:124
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 ""
"指定したproducerオブジェクトをチャネルのキューに追加します。これより前にpush"
"されたproducerが全て枯渇した後、チャネルはこのproducer から :meth:`more` メ"
"ソッドでデータを取得し、リモート端点に送信します。"
#: ../../library/asynchat.rst:132
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 ""
"チャネルで検出する終了条件を設定します。``term`` は入力プロトコルデータの処理"
"方式によって以下の3つの型の何れかを指定します。"
#: ../../library/asynchat.rst:137
msgid "term"
msgstr "term"
#: ../../library/asynchat.rst:137
msgid "Description"
msgstr "説明"
#: ../../library/asynchat.rst:139
msgid "*string*"
msgstr "*string*"
#: ../../library/asynchat.rst:139
msgid ""
"Will call :meth:`found_terminator` when the string is found in the input "
"stream"
msgstr ""
"入力ストリーム中でstringが検出された時、 :meth:`found_terminator` を呼び出し"
"ます"
#: ../../library/asynchat.rst:142
msgid "*integer*"
msgstr "*integer*"
#: ../../library/asynchat.rst:142
msgid ""
"Will call :meth:`found_terminator` when the indicated number of characters "
"have been received"
msgstr ""
"指定された文字数が読み込まれた時、 :meth:`found_terminator` を呼び出します"
#: ../../library/asynchat.rst:146
msgid "``None``"
msgstr "``None``"
#: ../../library/asynchat.rst:146
msgid "The channel continues to collect data forever"
msgstr "永久にデータを読み込みます"
#: ../../library/asynchat.rst:150
msgid ""
"Note that any data following the terminator will be available for reading by "
"the channel after :meth:`found_terminator` is called."
msgstr ""
"終了条件が成立しても、その後に続くデータは、 :meth:`found_terminator` の呼出"
"し後に再びチャネルを読み込めば取得する事ができます。"
#: ../../library/asynchat.rst:157
msgid "asynchat Example"
msgstr "asynchat 使用例"
#: ../../library/asynchat.rst:159
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 ""
"以下のサンプルは、 :class:`async_chat` でHTTPリクエストを読み込む処理の一部で"
"す。Webサーバは、クライアントからの接続毎に :class:`http_request_handler` オ"
"ブジェクトを作成します。最初はチャネルの終了条件に空行を指定してHTTPヘッダの"
"末尾までを検出し、その後ヘッダ読み込み済みを示すフラグを立てています。"
#: ../../library/asynchat.rst:166
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 ""
"ヘッダ読み込んだ後、リクエストの種類がPOSTであればデータが入力ストリームに流"
"れるため、``Content-Length:`` ヘッダの値を数値として終了条件に指定し、適切な"
"長さのデータをチャネルから読み込みます。"
#: ../../library/asynchat.rst:171
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 ""
"必要な入力データを全て入手したら、チャネルの終了条件に ``None`` を指定して残"
"りのデータを無視するようにしています。この後、 :meth:`handle_request` が呼び"
"出されます。 ::"