Lines Matching refs:self

36 for multi-line output), calling self.found_terminator() on its
41 of the connection, you'll have self.terminator set to '\r\n', in
46 you - by calling your self.found_terminator() method.
74 def __init__(self, sock=None, map=None):
76 self.ac_in_buffer = b''
81 self.incoming = []
85 self.producer_fifo = deque()
86 asyncore.dispatcher.__init__(self, sock, map)
88 def collect_incoming_data(self, data):
91 def _collect_incoming_data(self, data):
92 self.incoming.append(data)
94 def _get_data(self):
95 d = b''.join(self.incoming)
96 del self.incoming[:]
99 def found_terminator(self):
102 def set_terminator(self, term):
107 if isinstance(term, str) and self.use_encoding:
108 term = bytes(term, self.encoding)
111 self.terminator = term
113 def get_terminator(self):
114 return self.terminator
121 def handle_read(self):
124 data = self.recv(self.ac_in_buffer_size)
128 self.handle_error()
131 if isinstance(data, str) and self.use_encoding:
132 data = bytes(str, self.encoding)
133 self.ac_in_buffer = self.ac_in_buffer + data
135 # Continue to search for self.terminator in self.ac_in_buffer,
136 # while calling self.collect_incoming_data. The while loop
140 while self.ac_in_buffer:
141 lb = len(self.ac_in_buffer)
142 terminator = self.get_terminator()
145 self.collect_incoming_data(self.ac_in_buffer)
146 self.ac_in_buffer = b''
151 self.collect_incoming_data(self.ac_in_buffer)
152 self.ac_in_buffer = b''
153 self.terminator = self.terminator - lb
155 self.collect_incoming_data(self.ac_in_buffer[:n])
156 self.ac_in_buffer = self.ac_in_buffer[n:]
157 self.terminator = 0
158 self.found_terminator()
168 index = self.ac_in_buffer.find(terminator)
174 self.collect_incoming_data(self.ac_in_buffer[:index])
175 self.ac_in_buffer = self.ac_in_buffer[index+terminator_len:]
178 self.found_terminator()
181 index = find_prefix_at_end(self.ac_in_buffer, terminator)
185 self.collect_incoming_data(self.ac_in_buffer[:-index])
186 self.ac_in_buffer = self.ac_in_buffer[-index:]
190 self.collect_incoming_data(self.ac_in_buffer)
191 self.ac_in_buffer = b''
193 def handle_write(self):
194 self.initiate_send()
196 def handle_close(self):
197 self.close()
199 def push(self, data):
203 sabs = self.ac_out_buffer_size
206 self.producer_fifo.append(data[i:i+sabs])
208 self.producer_fifo.append(data)
209 self.initiate_send()
211 def push_with_producer(self, producer):
212 self.producer_fifo.append(producer)
213 self.initiate_send()
215 def readable(self):
220 # return (len(self.ac_in_buffer) <= self.ac_in_buffer_size)
223 def writable(self):
225 return self.producer_fifo or (not self.connected)
227 def close_when_done(self):
229 self.producer_fifo.append(None)
231 def initiate_send(self):
232 while self.producer_fifo and self.connected:
233 first = self.producer_fifo[0]
236 del self.producer_fifo[0]
238 self.handle_close()
242 obs = self.ac_out_buffer_size
248 self.producer_fifo.appendleft(data)
250 del self.producer_fifo[0]
253 if isinstance(data, str) and self.use_encoding:
254 data = bytes(data, self.encoding)
258 num_sent = self.send(data)
260 self.handle_error()
265 self.producer_fifo[0] = first[num_sent:]
267 del self.producer_fifo[0]
271 def discard_buffers(self):
273 self.ac_in_buffer = b''
274 del self.incoming[:]
275 self.producer_fifo.clear()
280 def __init__(self, data, buffer_size=512):
281 self.data = data
282 self.buffer_size = buffer_size
284 def more(self):
285 if len(self.data) > self.buffer_size:
286 result = self.data[:self.buffer_size]
287 self.data = self.data[self.buffer_size:]
290 result = self.data
291 self.data = b''