コード例 #1
0
from abc import ABCMeta, abstractmethod
from utilities.logger import Logger
import socket

logger = Logger.instance()


class TransportClient(metaclass=ABCMeta):
    """
    Abstract class for client
    """
    def __init__(self, ip, port, timeout, packet_size):
        self.ip = ip
        self.port = int(port)
        self.timeout = int(timeout) if timeout is not None else None
        self.packet_size = int(packet_size)

    # abstract methods
    @abstractmethod
    def _init(self):
        pass

    @abstractmethod
    def _send(self):
        pass

    @abstractmethod
    def _wait_for_response(self):
        pass

    def run_client(self):