4040import org .neo4j .gds .embeddings .node2vec .Node2VecStreamConfig ;
4141import org .neo4j .gds .embeddings .node2vec .Node2VecWriteConfig ;
4242import org .neo4j .gds .procedures .algorithms .configuration .UserSpecificConfigurationParser ;
43- import org .neo4j .gds .procedures .algorithms .embeddings .stubs .FastRPMutateStub ;
44- import org .neo4j .gds .procedures .algorithms .embeddings .stubs .GraphSageMutateStub ;
45- import org .neo4j .gds .procedures .algorithms .embeddings .stubs .HashGnnMutateStub ;
4643import org .neo4j .gds .procedures .algorithms .embeddings .stubs .LocalFastRPMutateStub ;
4744import org .neo4j .gds .procedures .algorithms .embeddings .stubs .LocalGraphSageMutateStub ;
4845import org .neo4j .gds .procedures .algorithms .embeddings .stubs .LocalHashGnnMutateStub ;
4946import org .neo4j .gds .procedures .algorithms .embeddings .stubs .LocalNode2VecMutateStub ;
50- import org .neo4j .gds .procedures .algorithms .embeddings .stubs .Node2VecMutateStub ;
47+ import org .neo4j .gds .procedures .algorithms .embeddings .stubs .NodeEmbeddingsStubs ;
5148import org .neo4j .gds .procedures .algorithms .stubs .GenericStub ;
5249
5350import java .util .Map ;
5653
5754public final class LocalNodeEmbeddingsProcedureFacade implements NodeEmbeddingsProcedureFacade {
5855
59- private final FastRPMutateStub fastRPMutateStub ;
60- private final GraphSageMutateStub graphSageMutateStub ;
61- private final HashGnnMutateStub hashGnnMutateStub ;
62- private final Node2VecMutateStub node2VecMutateStub ;
63-
56+ private final NodeEmbeddingsStubs stubs ;
6457 private final NodeEmbeddingAlgorithmsEstimationModeBusinessFacade estimationModeBusinessFacade ;
6558 private final NodeEmbeddingAlgorithmsStatsModeBusinessFacade statsModeBusinessFacade ;
6659 private final NodeEmbeddingAlgorithmsStreamModeBusinessFacade streamModeBusinessFacade ;
6760 private final NodeEmbeddingAlgorithmsTrainModeBusinessFacade trainModeBusinessFacade ;
6861 private final NodeEmbeddingAlgorithmsWriteModeBusinessFacade writeModeBusinessFacade ;
69-
7062 private final UserSpecificConfigurationParser configurationParser ;
7163 private final User user ;
7264
7365 private LocalNodeEmbeddingsProcedureFacade (
74- FastRPMutateStub fastRPMutateStub ,
75- GraphSageMutateStub graphSageMutateStub ,
76- HashGnnMutateStub hashGnnMutateStub ,
77- Node2VecMutateStub node2VecMutateStub ,
66+ NodeEmbeddingsStubs stubs ,
7867 NodeEmbeddingAlgorithmsEstimationModeBusinessFacade estimationModeBusinessFacade ,
7968 NodeEmbeddingAlgorithmsStatsModeBusinessFacade statsModeBusinessFacade ,
8069 NodeEmbeddingAlgorithmsStreamModeBusinessFacade streamModeBusinessFacade ,
@@ -83,10 +72,7 @@ private LocalNodeEmbeddingsProcedureFacade(
8372 UserSpecificConfigurationParser configurationParser ,
8473 User user
8574 ) {
86- this .fastRPMutateStub = fastRPMutateStub ;
87- this .graphSageMutateStub = graphSageMutateStub ;
88- this .hashGnnMutateStub = hashGnnMutateStub ;
89- this .node2VecMutateStub = node2VecMutateStub ;
75+ this .stubs = stubs ;
9076 this .estimationModeBusinessFacade = estimationModeBusinessFacade ;
9177 this .statsModeBusinessFacade = statsModeBusinessFacade ;
9278 this .streamModeBusinessFacade = streamModeBusinessFacade ;
@@ -128,10 +114,12 @@ public static NodeEmbeddingsProcedureFacade create(
128114 );
129115
130116 return new LocalNodeEmbeddingsProcedureFacade (
131- fastRPMutateStub ,
132- graphSageMutateStub ,
133- hashGnnMutateStub ,
134- node2VecMutateStub ,
117+ new NodeEmbeddingsStubs (
118+ fastRPMutateStub ,
119+ graphSageMutateStub ,
120+ hashGnnMutateStub ,
121+ node2VecMutateStub
122+ ),
135123 applicationsFacade .nodeEmbeddings ().estimate (),
136124 applicationsFacade .nodeEmbeddings ().stats (),
137125 applicationsFacade .nodeEmbeddings ().stream (),
@@ -142,9 +130,10 @@ public static NodeEmbeddingsProcedureFacade create(
142130 );
143131 }
144132
133+
145134 @ Override
146- public FastRPMutateStub fastRPMutateStub () {
147- return fastRPMutateStub ;
135+ public NodeEmbeddingsStubs stubs () {
136+ return stubs ;
148137 }
149138
150139 @ Override
@@ -200,6 +189,20 @@ public Stream<MemoryEstimateResult> fastRPStreamEstimate(
200189 return Stream .of (result );
201190 }
202191
192+ @ Override
193+ public Stream <DefaultNodeEmbeddingMutateResult > fastRPMutate (String graphName , Map <String , Object > configuration ) {
194+ return stubs .fastRP ().execute (graphName ,configuration );
195+ }
196+
197+ @ Override
198+ public Stream <MemoryEstimateResult > fastRPMutateEstimate (
199+ Object graphNameOrConfiguration ,
200+ Map <String , Object > algorithmConfiguration
201+ ) {
202+ return stubs .fastRP ().estimate (graphNameOrConfiguration , algorithmConfiguration );
203+
204+ }
205+
203206 @ Override
204207 public Stream <DefaultNodeEmbeddingsWriteResult > fastRPWrite (
205208 String graphName ,
@@ -226,10 +229,6 @@ public Stream<MemoryEstimateResult> fastRPWriteEstimate(
226229 return Stream .of (result );
227230 }
228231
229- @ Override
230- public GraphSageMutateStub graphSageMutateStub () {
231- return graphSageMutateStub ;
232- }
233232
234233 @ Override
235234 public Stream <DefaultNodeEmbeddingsStreamResult > graphSageStream (
@@ -267,6 +266,22 @@ public Stream<MemoryEstimateResult> graphSageStreamEstimate(
267266 return Stream .of (result );
268267 }
269268
269+ @ Override
270+ public Stream <DefaultNodeEmbeddingMutateResult > graphSageMutate (
271+ String graphName ,
272+ Map <String , Object > configuration
273+ ) {
274+ return stubs .graphSage ().execute (graphName ,configuration );
275+ }
276+
277+ @ Override
278+ public Stream <MemoryEstimateResult > graphSageMutateEstimate (
279+ Object graphNameOrConfiguration ,
280+ Map <String , Object > algorithmConfiguration
281+ ) {
282+ return stubs .graphSage ().estimate (graphNameOrConfiguration , algorithmConfiguration );
283+ }
284+
270285 @ Override
271286 public Stream <GraphSageTrainResult > graphSageTrain (
272287 String graphName ,
@@ -336,10 +351,6 @@ public Stream<MemoryEstimateResult> graphSageWriteEstimate(
336351 return Stream .of (result );
337352 }
338353
339- @ Override
340- public HashGnnMutateStub hashGnnMutateStub () {
341- return hashGnnMutateStub ;
342- }
343354
344355 @ Override
345356 public Stream <DefaultNodeEmbeddingsStreamResult > hashGnnStream (
@@ -368,13 +379,27 @@ public Stream<MemoryEstimateResult> hashGnnStreamEstimate(
368379 return Stream .of (result );
369380 }
370381
382+ @ Override
383+ public Stream <DefaultNodeEmbeddingMutateResult > hashGnnMutate (String graphName , Map <String , Object > configuration ) {
384+ return stubs .hashGnn ().execute (graphName ,configuration );
385+ }
386+
387+ @ Override
388+ public Stream <MemoryEstimateResult > hashGnnMutateEstimate (
389+ Object graphNameOrConfiguration ,
390+ Map <String , Object > algorithmConfiguration
391+ ) {
392+ return stubs .hashGnn ().estimate (graphNameOrConfiguration ,algorithmConfiguration );
393+ }
394+
371395 @ Override
372396 public Stream <DefaultNodeEmbeddingsWriteResult > hashGnnWrite (String graphName , Map <String , Object > configuration ) {
373397 var resultBuilder = new HashGNNResultBuilderForWriteMode ();
374398 return writeModeBusinessFacade .hashGnn (
375399 GraphName .parse (graphName ),
376400 configurationParser .parseConfiguration (configuration , HashGNNWriteConfig ::of ),
377- resultBuilder );
401+ resultBuilder
402+ );
378403 }
379404
380405 @ Override
@@ -389,11 +414,6 @@ public Stream<MemoryEstimateResult> hashGnnWriteEstimate(
389414 return Stream .of (result );
390415 }
391416
392- @ Override
393- public Node2VecMutateStub node2VecMutateStub () {
394- return node2VecMutateStub ;
395- }
396-
397417 @ Override
398418 public Stream <DefaultNodeEmbeddingsStreamResult > node2VecStream (
399419 String graphName ,
@@ -420,6 +440,19 @@ public Stream<MemoryEstimateResult> node2VecStreamEstimate(
420440 return Stream .of (result );
421441 }
422442
443+ @ Override
444+ public Stream <Node2VecMutateResult > node2VecMutate (String graphName , Map <String , Object > configuration ) {
445+ return stubs .node2Vec ().execute (graphName , configuration );
446+ }
447+
448+ @ Override
449+ public Stream <MemoryEstimateResult > node2VecMutateEstimate (
450+ Object graphNameOrConfiguration ,
451+ Map <String , Object > algorithmConfiguration
452+ ) {
453+ return stubs .node2Vec ().estimate (graphNameOrConfiguration , algorithmConfiguration );
454+ }
455+
423456 @ Override
424457 public Stream <Node2VecWriteResult > node2VecWrite (
425458 String graphName ,
0 commit comments