Skip to main content
uniac.Node is the base class for dependency references. You don’t subclass Node directly — uniac install generates a Node subclass for every published Service you depend on, and you import the generated class.
from uniac import Node            # base class
from logger import Logger         # generated Node subclass

Construction

Node subclasses take zero arguments:
self.logger = Logger()
You initialize Nodes in your __init__. The framework asserts (via _uniac_validate) that every annotated Node slot is filled with the right type.

Runtime attributes

After load hydrates the spec, each Node instance exposes:
AttributeTypeMeaning
.urlstr or NoneLive HTTP URL of the deployed dependency. None if accessed before load().
.namestrThe published Service identifier.
In uniac dev, .url points at the local simulator instance. After uniac deploy, it points at the production endpoint of the dep.

Class-level fields

Each generated Node subclass carries:
AttributeMeaning
_uniac_primitiveThe published lib name.
_uniac_versionPublished version (default latest).
These are set by the projection generator; user code does not assign them.