def execute(self): try: start_time = perf_counter() if os.path.exists(self._file_name): os.remove(self._file_name) message = compose_message({'start': True}) self._client.connection.send(message) self._get_file() end_time = perf_counter() if (end_time - start_time) > 0: bit_rate = self._file_size / float((end_time - start_time)) else: bit_rate = -1 print( f'\nFile {self._file_name} has been successfully uploaded by client,' f' Bit rate: {bit_rate * BIT_RATE_KBPS} kBps') except FileNotFoundError: print('Such file doesn\'t exist. Try another one')
def execute(self): data = {'payload': self._data} print(f'Echoed data from client: {self._data}') message = compose_message(data) self._client.connection.sendall(message)
def execute(self): date = datetime.datetime.now() data = {'payload': date} message = compose_message(data) print(f'Client requested current time. Time is {date}') self._client.connection.sendall(message)
def execute(self): data = {'payload': self._data} self._mutex.acquire() print(f'Echoed data from client: {self._data}') self._mutex.release() message = compose_message(data) self._client.connection.sendall(message)
def execute(self): data = {'type': Commands.ECHO.value, 'payload': self._data} message = compose_message(data) self._connection.sendall(message) response = get_message(self._connection, PACKET_SIZE) echoed_data = response['payload'] print(f'Echoed data: {echoed_data}')
def execute(self): data = {'type': Commands.TIME.value} message = compose_message(data) self._connection.sendall(message) response = get_message(self._connection, PACKET_SIZE) time = response['payload'] print(f'Time, according to server, is {time}')
def _send_request_message(self, file_name: str, file_size: int): data = {'type': Commands.DOWNLOAD.value, 'file_name': file_name, 'file_size': file_size} message = compose_message(data) self._client.connection.send(message) response = get_message(self._client.connection) if not response['start']: print('Client denied download!') raise FileExchangeDenial
def execute(self): start_time = perf_counter() if os.path.exists(self._file_name): os.remove(self._file_name) message = compose_message({'start': True}) self._client.connection.send(message) self._get_file() end_time = perf_counter() if (end_time - start_time) > 0: bit_rate = self._file_size / float((end_time - start_time)) else: bit_rate = -1 self._mutex.acquire() print( f'\nFile {self._file_name} has been successfully uploaded by client,' f' Bit rate: {bit_rate * BIT_RATE_KBPS} kBps') self._mutex.release()