def configure(self, config, protected = False):

        attributes = dict((a["name"], a) for a in get_node_info(self)["attributes"])

        for attribute, value in config.items():
            info = attributes.get(attribute)

            if not info:
                continue
                # raise KeyError("Unknown attribute '%s' in node %s" % (attribute, str(type(self))))

            if protected and info.get("protected"):
                # FIXME: use some custom exception
                raise Exception("Trying to set protected attribute '%s' of node '%s'" %
                                        (attribute, str(type(self))))
            else:
                setattr(self, attribute, value)
Set text value
dataset/ETHPy150Open Stiivi/brewery/brewery/nodes/base.py/Node.configure--crossover with--dataset/ETHPy150Open Blazemeter/taurus/bzt/jmx.py/JMX.set_text