diff --git a/core-jdk8/src/main/java/org/bsc/langgraph4j/Node.java b/core-jdk8/src/main/java/org/bsc/langgraph4j/Node.java index eb922ecd..7bee6975 100644 --- a/core-jdk8/src/main/java/org/bsc/langgraph4j/Node.java +++ b/core-jdk8/src/main/java/org/bsc/langgraph4j/Node.java @@ -30,6 +30,23 @@ class Node { AsyncNodeActionWithConfig actionWithConfig; + public Node( String id ) { + this.id = id; + this.action = null; + this.actionWithConfig = null; + + } + public Node( String id, AsyncNodeAction action ) { + this.id = id; + this.action = action; + this.actionWithConfig = null; + } + public Node( String id, AsyncNodeActionWithConfig actionWithConfig ) { + this.id = id; + this.action = null; + this.actionWithConfig = actionWithConfig; + + } /** * Checks if this node is equal to another object. * diff --git a/core-jdk8/src/main/java/org/bsc/langgraph4j/StateGraph.java b/core-jdk8/src/main/java/org/bsc/langgraph4j/StateGraph.java index 022d5502..4ced1362 100644 --- a/core-jdk8/src/main/java/org/bsc/langgraph4j/StateGraph.java +++ b/core-jdk8/src/main/java/org/bsc/langgraph4j/StateGraph.java @@ -203,7 +203,7 @@ public StateGraph addNode(String id, AsyncNodeAction action) throw if (Objects.equals(id, END)) { throw Errors.invalidNodeIdentifier.exception(END); } - Node node = new Node(id, action, null); + Node node = new Node(id, action); if (nodes.contains(node)) { throw Errors.duplicateNodeError.exception(id); @@ -217,7 +217,7 @@ public StateGraph addNode(String id, AsyncNodeActionWithConfig act if (Objects.equals(id, END)) { throw Errors.invalidNodeIdentifier.exception(END); } - Node node = new Node(id, null, actionWithConfig); + Node node = new Node(id, actionWithConfig); if (nodes.contains(node)) { throw Errors.duplicateNodeError.exception(id); @@ -292,7 +292,7 @@ public StateGraph addConditionalEdges(String sourceId, AsyncEdgeAction nodeById(String id) { - return new Node<>(id, null, null); + return new Node<>(id); } /**