Skip to content

Commit 19c5647

Browse files
author
Vladimir Kotal
committed
reuse ModelMapper instance
1 parent 5341e56 commit 19c5647

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

opengrok-web/src/main/java/org/opengrok/web/api/v1/controller/RepositoriesController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import org.opengrok.indexer.configuration.RuntimeEnvironment;
2626
import org.opengrok.indexer.history.RepositoryInfo;
2727
import org.opengrok.indexer.util.ClassUtil;
28-
import org.opengrok.web.util.DTO;
28+
import org.opengrok.web.util.DTOUtil;
2929

3030
import javax.ws.rs.GET;
3131
import javax.ws.rs.Path;
@@ -45,7 +45,7 @@ public class RepositoriesController {
4545
private Object getRepositoryInfoData(String repositoryPath) {
4646
for (RepositoryInfo ri : env.getRepositories()) {
4747
if (ri.getDirectoryNameRelative().equals(repositoryPath)) {
48-
return DTO.createDTO(ri);
48+
return DTOUtil.createDTO(ri);
4949
}
5050
}
5151

opengrok-web/src/main/java/org/opengrok/web/util/DTO.java renamed to opengrok-web/src/main/java/org/opengrok/web/util/DTOUtil.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,15 @@
2828

2929
import java.lang.reflect.Field;
3030

31-
public class DTO {
32-
private DTO() {
31+
public class DTOUtil {
32+
private DTOUtil() {
3333
// private to ensure static
3434
}
3535

36+
// ModelMapper is thread-safe and we only need to convert different object types for now
37+
// so it should be safe to reuse its instance.
38+
private static final ModelMapper modelMapper = new ModelMapper();
39+
3640
/**
3741
* Generate Data Transfer Object from an object. Any field in the input object
3842
* that is annotated with <code>DTOElement</code> will be brought along.
@@ -49,7 +53,6 @@ public static Object createDTO(Object object) {
4953
}
5054
Object bean = beanGenerator.create();
5155

52-
ModelMapper modelMapper = new ModelMapper();
5356
return modelMapper.map(object, bean.getClass());
5457
}
5558
}

0 commit comments

Comments
 (0)