コード例 #1
0
ファイル: xferpool.py プロジェクト: bloodywing/bareftp
    def __init__(self, ftpfile=None, sender=None, receiver=None):
        super(Xfer, self).__init__()
        threading.Thread.__init__(self)
        # sender and receiver is a connection_manager

        self.status = ''
        self.transferred_bytes = 0
        self.transfer_rate = ''
        self.bytes_since_speed_calc = 0
        self.elapsed_time = ''
        self.bps = 0
        self.timestamp = None
        self.direction = ''
        self.sleeptime = 0.0
        self.lock = threading.Lock()

        if not ftpfile:
            self.xid = -1
            self.filename = 'Connection'
            self.icon = None
            self.size = 0
            self.ftpfile = None
            return

        self.filename = ftpfile.filename
        self.icon = ftpfile.icon
        self.size = ftpfile.size
        self.conn_r = receiver.get_connection()
        self.conn_s = sender.get_connection()
        if sender.side == 'RIGHT':
            self.direction = '<-'
        else:
            self.direction = '->'
        self.ftpfile = ftpfile
        self.repeater = RepeatTimer(0.5, self.xfer_event)