From ddcafe0f2b6704b03ab4c46090035d5c571e7160 Mon Sep 17 00:00:00 2001 From: UpstreamData Date: Mon, 12 Sep 2022 15:27:51 -0600 Subject: [PATCH] finish abstracting `BaseMiner` by implementing `get_data()` as abstract --- pyasic/miners/_backends/bosminer_old.py | 4 ++++ pyasic/miners/base.py | 1 + pyasic/miners/unknown.py | 4 ++++ 3 files changed, 9 insertions(+) diff --git a/pyasic/miners/_backends/bosminer_old.py b/pyasic/miners/_backends/bosminer_old.py index eb28ec61..9768c1c9 100644 --- a/pyasic/miners/_backends/bosminer_old.py +++ b/pyasic/miners/_backends/bosminer_old.py @@ -20,6 +20,7 @@ from typing import Union from pyasic.API.bosminer import BOSMinerAPI from pyasic.miners.base import BaseMiner from pyasic.config import MinerConfig +from pyasic.data import MinerData class BOSMinerOld(BaseMiner): @@ -96,3 +97,6 @@ class BOSMinerOld(BaseMiner): async def send_config(self, config: MinerConfig, user_suffix: str = None) -> None: return None + + async def get_data(self) -> MinerData: + return MinerData(ip=str(self.ip)) diff --git a/pyasic/miners/base.py b/pyasic/miners/base.py index 5706565b..3828da31 100644 --- a/pyasic/miners/base.py +++ b/pyasic/miners/base.py @@ -127,6 +127,7 @@ class BaseMiner(ABC): async def get_errors(self) -> list: pass + @abstractmethod async def get_data(self) -> MinerData: return MinerData(ip=str(self.ip)) diff --git a/pyasic/miners/unknown.py b/pyasic/miners/unknown.py index d09227c0..555110d5 100644 --- a/pyasic/miners/unknown.py +++ b/pyasic/miners/unknown.py @@ -15,6 +15,7 @@ from pyasic.API.unknown import UnknownAPI from pyasic.miners.base import BaseMiner from pyasic.config import MinerConfig +from pyasic.data import MinerData class UnknownMiner(BaseMiner): @@ -61,3 +62,6 @@ class UnknownMiner(BaseMiner): async def send_config(self, config: MinerConfig, user_suffix: str = None) -> None: return None + + async def get_data(self) -> MinerData: + return MinerData(ip=str(self.ip))