diff --git a/src/pluginlib/__init__.py b/src/pluginlib/__init__.py index be26989..265aef5 100644 --- a/src/pluginlib/__init__.py +++ b/src/pluginlib/__init__.py @@ -1 +1,2 @@ -from . import plugin_init \ No newline at end of file +from . import pluginlib_init +from . import pluginlib_relay \ No newline at end of file diff --git a/src/pluginlib/pluginlib.ini b/src/pluginlib/pluginlib.ini index d70cedb..e34a86c 100644 --- a/src/pluginlib/pluginlib.ini +++ b/src/pluginlib/pluginlib.ini @@ -1,3 +1,3 @@ [pluginlib] -build = 3 +build = 5 diff --git a/src/pluginlib/plugin_init.py b/src/pluginlib/pluginlib_init.py similarity index 100% rename from src/pluginlib/plugin_init.py rename to src/pluginlib/pluginlib_init.py diff --git a/src/pluginlib/pluginlib_relay.py b/src/pluginlib/pluginlib_relay.py new file mode 100644 index 0000000..c0f5af0 --- /dev/null +++ b/src/pluginlib/pluginlib_relay.py @@ -0,0 +1,24 @@ +from abc import ABCMeta, abstractmethod + + +class RelayBase(metaclass=ABCMeta): + """Base class for relay plugins""" + + def __init__(self) -> None: + """Define base attributes.""" + self.connected = False + + @abstractmethod + def disconnect(self) -> None: + """Disconnects relay.""" + + @abstractmethod + def connect(self) -> None: + """Connects relay.""" + + @abstractmethod + def reconnect(self, seconds: int) -> None: + """Disconnects for specified time and reconnects. + Args: + seconds (int): Amount of time to sleep between disconnect and connect. + """ \ No newline at end of file