GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.
Completed
Push — master ( a6d1a2...d5449d )
by Benjamin
01:12
created

Node.addEventListener()   A

Complexity

Conditions 1

Size

Total Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
c 2
b 0
f 0
dl 0
loc 2
rs 10
cc 1
1
import threading
2
from time import sleep
3
4
5
class Network:
6
    def __init__(self, key=b'\x00' * 8, name=None):
7
        self.key = key
8
        self.name = name
9
        self.number = 0
10
11
    def __str__(self):
12
        return self.name + self.key
13
14
15
class Pump(threading.Thread):
16
    def __init__(self, driver):
17
        super().__init__()
18
        self._stop = threading.Event()
19
        self._driver = driver
20
21
    def stop(self):
22
        self._stop.set()
23
24
    def stopped(self):
25
        return self._stop.isSet()
26
27
    def run(self):
28
        with self._driver as driver:
29
            while not self._stop.is_set():
30
                buf = driver.read(20)
31
                print(buf)
32
                # TODO: do stuff here
33
                sleep(0.01)
34
35
36
class Node:
37
    def __init__(self, driver, name=None):
38
        self._driver = driver
39
        self._name = name
40
        self._pump = Pump(driver)
41
42
    def __enter__(self):
43
        return self
44
45
    def __exit__(self, exc_type, exc_val, exc_tb):
46
        self.stop()
47
48
    def start(self):
49
        if not self.isRunning():
50
            self._pump.start()
51
52
    def stop(self):
53
        if self.isRunning():
54
            self._pump.stop()
55
            self._pump.join()
56
57
    def isRunning(self):
58
        return self._pump.is_alive()
59
60
    def reset(self):
61
        self.stop()
62
        # TODO: reset device
63
64
    def getCapabilities(self):
65
        pass
66