(self, termination=None, encoding=None, recv_chunk=None)
| 178 | send.__doc__ = TextualMixin.send.__doc__ |
| 179 | |
| 180 | def recv(self, termination=None, encoding=None, recv_chunk=None): |
| 181 | |
| 182 | termination = termination or self.RECV_TERMINATION |
| 183 | encoding = encoding or self.ENCODING |
| 184 | recv_chunk = recv_chunk or self.RECV_CHUNK |
| 185 | |
| 186 | eom = False |
| 187 | |
| 188 | received = self._received |
| 189 | |
| 190 | while not (termination in received or eom): |
| 191 | self._btag = (self._btag % 255) + 1 |
| 192 | |
| 193 | req = BulkInMessage.build_array(self._btag, recv_chunk, None) |
| 194 | |
| 195 | self.raw_send(req) |
| 196 | |
| 197 | resp = self.raw_recv(recv_chunk) |
| 198 | |
| 199 | response = BulkInMessage.from_bytes(resp) |
| 200 | |
| 201 | received += str(response.data, encoding) |
| 202 | eom = response.transfer_attributes & 1 |
| 203 | |
| 204 | self.log_debug('Received {!r} (len={})', received, len(received)) |
| 205 | |
| 206 | received, self._received = received.split(termination, 1) |
| 207 | |
| 208 | return received |
| 209 | |
| 210 | recv.__doc__ = TextualMixin.recv.__doc__ |
| 211 |
nothing calls this directly
no test coverage detected