from lnx.logicnode.lnx_nodes import *

class DefaultIfNullNode(LnxLogicTreeNode):
    """Returns the connected value only if it is not `null`, otherwise the `default` value is returned.

    @input Value: the one that will be eventually null
    @input Default: will be returned in case the primary value is null
    """
    bl_idname = 'LNDefaultIfNullNode'
    bl_label = 'Default if Null'
    lnx_version = 1

    def lnx_init(self, context):
        self.inputs.new('LnxDynamicSocket', 'Value In')
        self.inputs.new('LnxDynamicSocket', 'Default')

        self.outputs.new('LnxDynamicSocket', 'Value Out')