Components¶
A Component represents a fundamental unit of interface and should generally map to a logical unit of control. This could be interaction with an actual physical device or peripheral such as a sensor, a motor, an Arduino, a DMX controller, etc. Or it could be something more virtual such as a set of system calls, internet/intranet queries, a managed subprocess and more.
Two basic device patterns are implemented: SerialComponent and AsyncComponent. Use of SerialComponent is recommended when the underlying work must be strictly serial (meaning non-parallel). AsyncComponent is suitable when multiple executions of the handler can safely run simultaneously.
-
class
arkady.components.
AsyncComponent
(*args, **kwargs)¶ -
requests_runner
()¶ Responsible for taking jobs out of the jobs queue and executing them.
Not implemented in this base class, must be overridden.
Returns:
-
-
class
arkady.components.
Component
(*args, loop=None, **kwargs)¶ The Base Component from which all other devices derive, whether they have synchronous or asynchronous underlying work.
-
requests_runner
()¶ Responsible for taking jobs out of the jobs queue and executing them.
Not implemented in this base class, must be overridden.
Returns:
-
-
class
arkady.components.
DummyAsyncDevice
(*args, **kwargs)¶
-
class
arkady.components.
DummySerialDevice
(*args, **kwargs)¶