Skip to content

Commit 2c584e7

Browse files
authored
Merge pull request #5332 from FlorentinD/improve-optional-handling
Make Optional expectations clear
2 parents 2a749e5 + 382d757 commit 2c584e7

File tree

11 files changed

+18
-28
lines changed

11 files changed

+18
-28
lines changed

algo/src/main/java/org/neo4j/gds/paths/delta/DeltaStepping.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -353,9 +353,8 @@ private static Stream<PathResult> pathResults(
353353
long sourceNode,
354354
int concurrency
355355
) {
356-
assert tentativeDistances.predecessors().isPresent();
357356
var distances = tentativeDistances.distances();
358-
var predecessors = tentativeDistances.predecessors().get();
357+
var predecessors = tentativeDistances.predecessors().orElseThrow();
359358

360359
var pathIndex = new AtomicLong(0L);
361360

algo/src/main/java/org/neo4j/gds/similarity/nodesim/NodeSimilarityResult.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ public interface NodeSimilarityResult {
3232
Optional<SimilarityGraphResult> maybeGraphResult();
3333

3434
default Stream<SimilarityResult> streamResult() {
35-
return maybeStreamResult().get();
35+
return maybeStreamResult().orElseThrow();
3636
}
3737

3838
default SimilarityGraphResult graphResult() {
39-
return maybeGraphResult().get();
39+
return maybeGraphResult().orElseThrow();
4040
}
4141
}

core-test-utils/src/main/java/org/neo4j/gds/core/PortFinder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public boolean supportsParameter(ParameterContext parameterContext, ExtensionCon
7575
@Override
7676
public Object resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext)
7777
throws ParameterResolutionException {
78-
return freePortFromStore(extensionContext, parameterContext.findAnnotation(FreePort.class).get());
78+
return freePortFromStore(extensionContext, parameterContext.findAnnotation(FreePort.class).orElseThrow());
7979
}
8080

8181
@Override

core/src/main/java/org/neo4j/gds/core/huge/UnionGraph.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ public GraphSchema schema() {
9292
.stream()
9393
.map(Graph::schema)
9494
.reduce(GraphSchema::union)
95-
.get();
95+
.orElseThrow(() -> new IllegalArgumentException("no graphs"));
9696
}
9797

9898
@Override

core/src/main/java/org/neo4j/gds/core/loading/CSRGraphStoreUtil.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ private static Map<RelationshipType, RelationshipPropertyStore> constructRelatio
134134
.values()
135135
.stream()
136136
.findFirst()
137-
.get();
137+
.orElseThrow();
138138

139139
String propertyKey = relationshipProperty.get();
140140
relationshipProperties = singletonMap(
@@ -145,7 +145,7 @@ private static Map<RelationshipType, RelationshipPropertyStore> constructRelatio
145145
propertyKey,
146146
NumberType.FLOATING_POINT,
147147
relationshipPropertySchema.state(),
148-
relationships.properties().get(),
148+
relationships.properties().orElseThrow(),
149149
relationshipPropertySchema.defaultValue().isUserDefined()
150150
? relationshipPropertySchema.defaultValue()
151151
: ValueTypes.fromNumberType(NumberType.FLOATING_POINT).fallbackValue(),

core/src/main/java/org/neo4j/gds/core/loading/ScanningNodesImporter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public static ScanningNodesImporter scanningNodesImporter(
7777

7878
LabelInformation.Builder labelInformationBuilder;
7979
if (graphProjectConfig.nodeProjections().allProjections().size() == 1) {
80-
var singleLabel = graphProjectConfig.nodeProjections().projections().keySet().stream().findFirst().get();
80+
var singleLabel = graphProjectConfig.nodeProjections().projections().keySet().iterator().next();
8181
labelInformationBuilder = LabelInformation.single(singleLabel);
8282
} else {
8383
labelInformationBuilder = LabelInformation.builder(expectedCapacity, labelTokenNodeLabelMapping);

pipeline/src/main/java/org/neo4j/gds/ml/pipeline/TrainingStatistics.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ public double getBestTrialScore() {
133133
.stream()
134134
.map(stats -> stats.validationStats().get(evaluationMetric()).avg())
135135
.max(evaluationMetric().comparator())
136-
.get();
136+
.orElseThrow(() -> new IllegalStateException("Empty validation stats."));
137137
}
138138

139139
public TrainerConfig bestParameters() {

pregel-proc-generator/src/main/java/org/neo4j/gds/beta/pregel/PregelValidation.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -198,12 +198,9 @@ private boolean configHasFactoryMethod(Element pregelElement) {
198198
}
199199

200200
private TypeMirror config(Element pregelElement) {
201-
var maybeInterface = pregelComputation(pregelElement);
202-
return maybeInterface.get()
203-
.getTypeArguments()
204-
.stream()
205-
.findFirst()
206-
.get();
201+
return pregelComputation(pregelElement)
202+
.map(declaredType -> declaredType.getTypeArguments().get(0))
203+
.orElseThrow(() -> new IllegalStateException("Could not find a pregel computation"));
207204
}
208205

209206
@ValueClass

pregel/src/main/java/org/neo4j/gds/beta/pregel/NodeValue.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,8 @@ static NodeValue of(PregelSchema schema, long nodeCount, int concurrency) {
6363
));
6464

6565
if (properties.size() == 1) {
66-
var element = schema.elements().stream().findFirst().get();
67-
var property = properties.values().stream().findFirst().get();
66+
var element = schema.elements().iterator().next();
67+
var property = properties.values().iterator().next();
6868
return new SingleNodeValue(schema, element, property);
6969
}
7070

string-formatting/src/main/java/org/neo4j/gds/utils/StringJoining.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public static String joinVerbose(Collection<String> alternatives) {
7171
}
7272
return joinVerbose(List.of(
7373
join(alternatives.stream().limit(alternatives.size() - 1), ", "),
74-
alternatives.stream().skip(alternatives.size() - 1).findFirst().get()
74+
alternatives.stream().skip(alternatives.size() - 1).findFirst().orElseThrow(() -> new IllegalStateException("No alternatives found."))
7575
));
7676
}
7777
}

0 commit comments

Comments
 (0)