1717 * You should have received a copy of the GNU General Public License
1818 * along with this program. If not, see <http://www.gnu.org/licenses/>.
1919 */
20- package org .neo4j .gds .applications . algorithms . pathfinding ;
20+ package org .neo4j .gds .pathfinding ;
2121
2222import org .neo4j .gds .api .Graph ;
2323import org .neo4j .gds .api .GraphStore ;
2929import org .neo4j .gds .core .utils .progress .JobId ;
3030import org .neo4j .gds .spanningtree .SpanningGraph ;
3131import org .neo4j .gds .spanningtree .SpanningTree ;
32- import org .neo4j .gds .spanningtree .SpanningTreeWriteConfig ;
3332
34- class SpanningTreeWriteStep implements WriteStep <SpanningTree , RelationshipsWritten > {
33+ import java .util .Optional ;
34+ import java .util .function .Function ;
35+
36+ public class SpanningTreeWriteStep implements WriteStep <SpanningTree , RelationshipsWritten > {
3537 private final WriteRelationshipService writeRelationshipService ;
36- private final SpanningTreeWriteConfig configuration ;
38+ private final String writeRelationshipType ;
39+ private final String writeProperty ;
40+ private final Function <ResultStore , Optional <ResultStore >> resultStoreResolver ;
41+ private final JobId jobId ;
3742
38- SpanningTreeWriteStep (
43+ public SpanningTreeWriteStep (
3944 WriteRelationshipService writeRelationshipService ,
40- SpanningTreeWriteConfig configuration
45+ String writeRelationshipType ,
46+ String writeProperty ,
47+ Function <ResultStore , Optional <ResultStore >> resultStoreResolver ,
48+ JobId jobId
4149 ) {
4250 this .writeRelationshipService = writeRelationshipService ;
43- this .configuration = configuration ;
51+ this .writeRelationshipType = writeRelationshipType ;
52+ this .writeProperty = writeProperty ;
53+ this .resultStoreResolver = resultStoreResolver ;
54+ this .jobId = jobId ;
4455 }
4556
4657 @ Override
@@ -53,16 +64,15 @@ public RelationshipsWritten execute(
5364 ) {
5465 var spanningGraph = new SpanningGraph (graph , result );
5566
56-
5767 return writeRelationshipService .writeFromGraph (
58- configuration . writeRelationshipType () ,
59- configuration . writeProperty () ,
68+ writeRelationshipType ,
69+ writeProperty ,
6070 spanningGraph ,
6171 graph ,
6272 AlgorithmLabel .SpanningTree .asString (),
63- configuration . resolveResultStore (resultStore ),
73+ resultStoreResolver . apply (resultStore ),
6474 (a ,b ,c )-> true ,
65- configuration .jobId ()
75+ this .jobId
6676 );
6777 }
6878}
0 commit comments