Ejemplo n.º 1
0
    def __init__(self,
                 node_type,
                 name,
                 parent=None,
                 connection=None,
                 create=False,
                 **keys):
        if connection is None:
            connection = client.get_cache(db=1)
        db_name = '%s:%s' % (parent.db_name, name) if parent else name
        self._data = Struct(db_name, connection=connection)
        info_hash_name = '%s_info' % db_name
        self._info = HashObjSetting(info_hash_name, connection=connection)
        self.db_connection = connection

        if create:
            self._data.name = name
            self._data.db_name = db_name
            self._data.node_type = node_type
            if parent:
                self._data.parent = parent.db_name
                parent.add_children(self)
            self._ttl_setter = _TTL_setter(self.db_name)
        else:
            self._ttl_setter = None
Ejemplo n.º 2
0
 def __init__(self, name, config):
     self.__name = name
     self.__config = config
     self._external_ctrl = config.get('external-control')
     self.__settings = HashObjSetting('shutter:%s' % name)
     self.__initialized_hw = Cache(self, "initialized", default_value=False)
     self.__state = Cache(self, "state", default_value=Shutter.UNKNOWN)
     self._init_flag = False
     self.__lock = lock.Semaphore()
Ejemplo n.º 3
0
    def __init__(self, name, config_tree):
        self.name = name
        self._boards = OrderedDict()
        self.__outputs = OrderedDict()

        all_config = static.get_config()

        for board in config_tree['boards']:
            board_name = board.get('name')
            self._boards[board_name] = all_config.get(board_name)

        for output_config in config_tree['outputs']:
            output = Output(self, output_config)
            self.__outputs[output.name()] = output

        self.__stat = HashObjSetting('multiplexer.%s' % name)
        self.__debug = False