boss.factory
============

.. py:module:: boss.factory


Classes
-------

.. autoapisummary::

   boss.factory.BOSSObject
   boss.factory.Factory
   boss.factory.HEROFactory
   boss.factory.DatasourceHEROFactory
   boss.factory.PolledDatasourceHEROFactory


Module Contents
---------------

.. py:class:: BOSSObject

   .. py:method:: _stop(boss: heros.RemoteHERO)


.. py:class:: Factory

   .. py:method:: _build(classname: str, name: str, arg_dict: dict | None = None, extra_decorators: dict | None = None, realm='heros', session_manager=None, tags: list | None = None)
      :classmethod:



   .. py:method:: _get_init_replacement(classname: str, name: str, realm: str, session_manager, tags: list | None) -> Callable
      :classmethod:

      :abstractmethod:



   .. py:method:: _decorate_methods(source_class: Any, extra_decorators: list[tuple[str, str]]) -> Any
      :staticmethod:


      Wrap methods on the class before instantiation.



.. py:class:: HEROFactory

   Bases: :py:obj:`Factory`


   .. py:attribute:: _mixin_class


   .. py:method:: build(classname: str, name: str, arg_dict: dict | None = None, extra_decorators: dict | None = None, realm='heros', session_manager=None, tags: list | None = None)
      :classmethod:



   .. py:method:: _get_init_replacement(classname: str, name: str, realm: str, session_manager, tags: list | None) -> Callable
      :classmethod:



.. py:class:: DatasourceHEROFactory

   Bases: :py:obj:`HEROFactory`


   .. py:attribute:: _mixin_class


   .. py:method:: build(classname: str, name: str, arg_dict: dict | None = None, extra_decorators: dict | None = None, observables: dict | None = None, realm='heros', session_manager=None, tags: list | None = None)
      :classmethod:



   .. py:method:: _get_init_replacement(classname: str, name: str, realm: str, session_manager, tags: list | None) -> Callable
      :classmethod:



.. py:class:: PolledDatasourceHEROFactory

   Bases: :py:obj:`Factory`


   .. py:attribute:: _mixin_class


   .. py:method:: build(classname: str, name: str, arg_dict: dict | None = None, extra_decorators: dict | None = None, loop: asyncio.AbstractEventLoop = asyncio.new_event_loop(), interval: float = 5, observables: dict | None = None, realm='heros', session_manager=None, tags: list | None = None)
      :classmethod:



   .. py:method:: _get_init_replacement(classname: str, name: str, realm: str, session_manager, tags: list | None) -> Callable
      :classmethod:



