Skip to content

Commit 7de6d86

Browse files
Mats-SXFlorentinD
andcommitted
Turn ApproxKCut result classes into records
Co-authored-by: Florentin Dörre <florentin.dorre@neo4j.com>
1 parent c0fe533 commit 7de6d86

File tree

3 files changed

+13
-56
lines changed

3 files changed

+13
-56
lines changed

procedures/algorithms-facade/src/main/java/org/neo4j/gds/procedures/algorithms/community/stubs/ApproxMaxKCutResultBuilderForMutateMode.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ public ApproxMaxKCutMutateResult build(
4545
var approxMaxKCutResult = result.get();
4646

4747
return new ApproxMaxKCutMutateResult(
48-
metadata.orElseThrow().value(),
4948
approxMaxKCutResult.cutCost(),
5049
timings.preProcessingMillis,
5150
timings.computeMillis,
5251
0,
5352
timings.sideEffectMillis,
53+
metadata.orElseThrow().value(),
5454
configurationMap
5555
);
5656
}

procedures/facade-api/community-facade-api/src/main/java/org/neo4j/gds/procedures/algorithms/community/ApproxMaxKCutMutateResult.java

Lines changed: 11 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -20,68 +20,32 @@
2020
package org.neo4j.gds.procedures.algorithms.community;
2121

2222
import org.neo4j.gds.applications.algorithms.machinery.AlgorithmProcessingTimings;
23-
import org.neo4j.gds.procedures.algorithms.results.StandardMutateResult;
24-
import org.neo4j.gds.result.AbstractResultBuilder;
23+
import org.neo4j.gds.procedures.algorithms.results.MutateNodePropertiesResult;
2524

2625
import java.util.Map;
2726

28-
public final class ApproxMaxKCutMutateResult extends StandardMutateResult {
29-
public final long nodePropertiesWritten;
30-
public final double cutCost;
31-
32-
public ApproxMaxKCutMutateResult(
33-
long nodePropertiesWritten,
34-
double cutCost,
35-
long preProcessingMillis,
36-
long computeMillis,
37-
long postProcessingMillis,
38-
long mutateMillis,
39-
Map<String, Object> config
40-
) {
41-
super(
42-
preProcessingMillis,
43-
computeMillis,
44-
postProcessingMillis,
45-
mutateMillis,
46-
config
47-
);
48-
this.nodePropertiesWritten = nodePropertiesWritten;
49-
this.cutCost = cutCost;
50-
}
27+
public record ApproxMaxKCutMutateResult(
28+
double cutCost,
29+
long preProcessingMillis,
30+
long computeMillis,
31+
long postProcessingMillis,
32+
long mutateMillis,
33+
long nodePropertiesWritten,
34+
Map<String, Object> configuration
35+
) implements MutateNodePropertiesResult {
5136

5237
public static ApproxMaxKCutMutateResult emptyFrom(
5338
AlgorithmProcessingTimings timings,
5439
Map<String, Object> configurationMap
5540
) {
5641
return new ApproxMaxKCutMutateResult(
57-
0,
5842
0,
5943
timings.preProcessingMillis,
6044
timings.computeMillis,
6145
0,
6246
timings.sideEffectMillis,
47+
0,
6348
configurationMap
6449
);
6550
}
66-
67-
public static final class Builder extends AbstractResultBuilder<ApproxMaxKCutMutateResult> {
68-
private final double cutCost;
69-
70-
public Builder(double cutCost) {
71-
this.cutCost = cutCost;
72-
}
73-
74-
@Override
75-
public ApproxMaxKCutMutateResult build() {
76-
return new ApproxMaxKCutMutateResult(
77-
nodePropertiesWritten,
78-
cutCost,
79-
preProcessingMillis,
80-
computeMillis,
81-
0L,
82-
mutateMillis,
83-
config.toMap()
84-
);
85-
}
86-
}
8751
}

procedures/facade-api/community-facade-api/src/main/java/org/neo4j/gds/procedures/algorithms/community/ApproxMaxKCutStreamResult.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,5 @@
1919
*/
2020
package org.neo4j.gds.procedures.algorithms.community;
2121

22-
public class ApproxMaxKCutStreamResult {
23-
public final long nodeId;
24-
public final long communityId;
25-
26-
public ApproxMaxKCutStreamResult(long nodeId, long communityId) {
27-
this.nodeId = nodeId;
28-
this.communityId = communityId;
29-
}
22+
public record ApproxMaxKCutStreamResult(long nodeId, long communityId) {
3023
}

0 commit comments

Comments
 (0)