Interface NodeMetadata
@Immutable
public interface NodeMetadata
Complete metadata for a node type.
Contains all information needed to render the node in a client
without hardcoded knowledge of specific node types.
-
Method Summary
Modifier and TypeMethodDescriptionstatic com.soulfiremc.server.script.ImmutableNodeMetadata.Builderbuilder()Convenience builder starting point.category()Category for organizing in the palette.@Nullable Stringcolor()Optional color hint (hex code).default booleanWhether this node is deprecated.@Nullable StringIf deprecated, what to use instead.default StringDescription of what the node does.Human-readable name for display.default Stringicon()Icon identifier (required).default List<PortDefinition> inputs()Input port definitions.static List<PortDefinition> inputs(PortDefinition... ports) Convenience method to create an input list from varargs.default booleanWhether this is a layout node (reroute, frame, etc.).default booleanWhether this is a trigger (entry point) node.keywords()Search keywords.default List<PortDefinition> outputs()Output port definitions.static List<PortDefinition> outputs(PortDefinition... ports) Convenience method to create an output list from varargs.default booleanWhether this node can be muted (bypassed during execution).default booleanWhether this node supports inline preview of its output.type()The unique type identifier for this node.
-
Method Details
-
builder
static com.soulfiremc.server.script.ImmutableNodeMetadata.Builder builder()Convenience builder starting point. -
inputs
Convenience method to create an input list from varargs. -
outputs
Convenience method to create an output list from varargs. -
type
String type()The unique type identifier for this node. -
displayName
String displayName()Human-readable name for display. -
description
Description of what the node does. -
category
NodeCategory category()Category for organizing in the palette. -
isTrigger
@Default default boolean isTrigger()Whether this is a trigger (entry point) node. -
inputs
Input port definitions. -
outputs
Output port definitions. -
icon
Icon identifier (required). -
color
@Nullable String color()Optional color hint (hex code). -
keywords
-
deprecated
@Default default boolean deprecated()Whether this node is deprecated. -
deprecationMessage
@Nullable String deprecationMessage()If deprecated, what to use instead. -
isLayoutNode
@Default default boolean isLayoutNode()Whether this is a layout node (reroute, frame, etc.). Layout nodes have special minimal rendering and don't execute logic. -
supportsMuting
@Default default boolean supportsMuting()Whether this node can be muted (bypassed during execution). When muted, inputs pass through to outputs unchanged. -
supportsPreview
@Default default boolean supportsPreview()Whether this node supports inline preview of its output.
-