dataclass: PoolUrl
This commit is contained in:
@@ -1,4 +1,24 @@
|
|||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
|
from enum import Enum
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
|
|
||||||
|
class Scheme (Enum):
|
||||||
|
STRATUM_V1 = "stratum+tcp"
|
||||||
|
STRATUM_V2 = "stratum2+tcp"
|
||||||
|
|
||||||
|
@dataclass
|
||||||
|
class PoolUrl:
|
||||||
|
scheme: Scheme
|
||||||
|
host: str
|
||||||
|
port: int
|
||||||
|
pubKey: Optional[str] = None
|
||||||
|
|
||||||
|
def __str__(self) -> str:
|
||||||
|
if self.scheme == Scheme.STRATUM_V2 and self.pubKey:
|
||||||
|
return f"{self.scheme.value}://{self.host}:{self.port}/{self.pubKey}"
|
||||||
|
else:
|
||||||
|
return f"{self.scheme.value}://{self.host}:{self.port}"
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass
|
||||||
@@ -19,15 +39,15 @@ class PoolMetrics:
|
|||||||
pool_stale_percent: Percentage of stale shares by the pool.
|
pool_stale_percent: Percentage of stale shares by the pool.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
accepted: int = None
|
accepted: int
|
||||||
rejected: int = None
|
rejected: int
|
||||||
get_failures: int = None
|
get_failures: int
|
||||||
remote_failures: int = None
|
remote_failures: int
|
||||||
active: bool = None
|
active: bool
|
||||||
alive: bool = None
|
alive: bool
|
||||||
url: str = None
|
url: PoolUrl
|
||||||
index: int = None
|
index: int
|
||||||
user: str = None
|
user: str
|
||||||
pool_rejected_percent: float = field(init=False)
|
pool_rejected_percent: float = field(init=False)
|
||||||
pool_stale_percent: float = field(init=False)
|
pool_stale_percent: float = field(init=False)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user