NucelarMonitor/Python/Models/IterationModel.py

93 lines
2.5 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from typing import Self
class CPUModel:
def __init__(self:Self,
_in:float,
_out:float,
maximum:float,
minimum:float,
average:float
) -> None:
self._in:float = _in
self.out:float = _out
self.maximum:float = maximum
self.minimum:float = minimum
self.average:float = average
class MemoryModel:
def __init__(self:Self,
total:int,
_in:int,
_out:int,
maximum:int,
minimum:int,
average:float
) -> None:
self.total:int = total
self._in:int = _in
self.out:int = _out
self.maximum:int = maximum
self.minimum:int = minimum
self.average:float = average
class NetUseModel:
def __init__(self:Self, _bytes:int, packets:int, errors:int) -> None:
self.bytes:int = _bytes
self.packets:int = packets
self.errors:int = errors
class InterfaceModel:
def __init__(self:Self,
position:int,
name:str,
is_ipv6:bool,
ip:str,
mask:int,
received:NetUseModel,
transmitted:NetUseModel
) -> None:
self.position:int = position
self.name:str = name
self.is_ipv6:bool = is_ipv6
self.ip:str = ip
self.mask:int = mask
self.name:str = name
self.received:NetUseModel = received
self.transmitted:NetUseModel = transmitted
class DiskModel:
def __init__(self:Self, name:str, total:int, free:int, mount:str|None) -> None:
self.name:str = name
self.total:int = total
self.free:int = free
self.mount:str|None = mount
class CandleTimeModel:
def __init__(self:Self, start:int, end:int) -> None:
self.start:int = start
self.end:int = end
class IterationModel:
def __init__(self:Self,
key:str,
hostnames:list[str],
domain:str|None,
interfaces:list[InterfaceModel],
disks:list[DiskModel],
iterations:int,
candle_time:CandleTimeModel,
cpu:CPUModel,
memory:MemoryModel
) -> None:
self.key:str = key
self.hostnames:list[str] = hostnames
self.domain:str|None = domain
self.interfaces:list[InterfaceModel] = interfaces
self.disks:list[DiskModel] = disks
self.iterations:int = iterations
self.candle_time:CandleTimeModel = candle_time
self.cpu:CPUModel = cpu
self.memory:MemoryModel = memory