Skip to content

Commit 9bd6511

Browse files
committed
🎨 Use Java 8 Features
Use java.util.Optional.ifPresent method in order to avoid nullPointerException
1 parent 8dd2bb4 commit 9bd6511

File tree

2 files changed

+8
-9
lines changed

2 files changed

+8
-9
lines changed

src/main/java/io/asfjava/ui/core/FormDefinitionGeneratorFactory.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package io.asfjava.ui.core;
22

33
import java.util.Map;
4+
import java.util.Optional;
45
import java.util.concurrent.ConcurrentHashMap;
56

67
import io.asfjava.ui.core.generators.FormDefinitionGenerator;
78

89
public final class FormDefinitionGeneratorFactory {
910

10-
public FormDefinitionGenerator getGenerator(String annotationName) {
11-
return GENERATORS.get(annotationName);
11+
public Optional<FormDefinitionGenerator> getGenerator(String annotationName) {
12+
return Optional.ofNullable(GENERATORS.get(annotationName));
1213
}
1314

1415
void register(String annotationName, FormDefinitionGenerator generator) {

src/main/java/io/asfjava/ui/core/schema/UiFormSchemaGenerator.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
import com.fasterxml.jackson.module.jsonSchema.JsonSchemaGenerator;
1414

1515
import io.asfjava.ui.core.FormDefinitionGeneratorFactory;
16-
import io.asfjava.ui.core.generators.FormDefinitionGenerator;
1716
import io.asfjava.ui.dto.UiForm;
1817

1918
public final class UiFormSchemaGenerator {
@@ -40,12 +39,11 @@ private void buildFormDefinition(ObjectMapper mapper, ArrayNode formDefinitions,
4039
private void buildFieldDefinition(Field field, Annotation annotation, ObjectMapper mapper,
4140
ArrayNode formDefinitions) {
4241
ObjectNode fieldFormDefinition = mapper.createObjectNode();
43-
FormDefinitionGenerator generator = FormDefinitionGeneratorFactory.getInstance()
44-
.getGenerator(annotation.annotationType().getName());
45-
if (generator != null) {
46-
generator.generate(fieldFormDefinition, field);
47-
formDefinitions.add(fieldFormDefinition);
48-
}
42+
FormDefinitionGeneratorFactory.getInstance().getGenerator(annotation.annotationType().getName())
43+
.ifPresent(generator -> {
44+
generator.generate(fieldFormDefinition, field);
45+
formDefinitions.add(fieldFormDefinition);
46+
});
4947
}
5048

5149
public static UiFormSchemaGenerator get() {

0 commit comments

Comments
 (0)