Skip to content

Commit e1953c1

Browse files
committed
FilesystemImagePersistenceStrategy: use NOPLogger for unit tests to reduce output to console.
No functional changes.
1 parent 7ec1556 commit e1953c1

File tree

3 files changed

+20
-16
lines changed

3 files changed

+20
-16
lines changed

src/main/java/ru/mystamps/web/config/StrategiesConfig.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ class FsStrategiesConfig implements StrategiesConfig {
6262
@Override
6363
public ImagePersistenceStrategy getImagePersistenceStrategy() {
6464
return new FilesystemImagePersistenceStrategy(
65+
LoggerFactory.getLogger(FilesystemImagePersistenceStrategy.class),
6566
env.getRequiredProperty("app.upload.dir"),
6667
env.getRequiredProperty("app.preview.dir")
6768
);

src/main/java/ru/mystamps/web/service/FilesystemImagePersistenceStrategy.java

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import javax.annotation.PostConstruct;
2828

2929
import org.slf4j.Logger;
30-
import org.slf4j.LoggerFactory;
3130

3231
import org.springframework.web.multipart.MultipartFile;
3332

@@ -37,44 +36,44 @@
3736
import ru.mystamps.web.service.exception.ImagePersistenceException;
3837

3938
public class FilesystemImagePersistenceStrategy implements ImagePersistenceStrategy {
40-
private static final Logger LOG =
41-
LoggerFactory.getLogger(FilesystemImagePersistenceStrategy.class);
4239

40+
private final Logger log;
4341
private final File storageDir;
4442
private final File previewDir;
4543

46-
public FilesystemImagePersistenceStrategy(String storageDir, String previewDir) {
44+
public FilesystemImagePersistenceStrategy(Logger logger, String storageDir, String previewDir) {
45+
this.log = logger;
4746
this.storageDir = new File(storageDir);
4847
this.previewDir = new File(previewDir);
4948
}
5049

5150
@PostConstruct
5251
public void init() {
53-
LOG.info("Images will be saved into {} directory", storageDir);
52+
log.info("Images will be saved into {} directory", storageDir);
5453

5554
if (!storageDir.exists()) { // NOPMD: ConfusingTernary (it's ok for me)
56-
LOG.warn("Directory '{}' doesn't exist! Image uploading won't work.", storageDir);
55+
log.warn("Directory '{}' doesn't exist! Image uploading won't work.", storageDir);
5756

5857
} else if (!storageDir.canWrite()) {
59-
LOG.warn(
58+
log.warn(
6059
// TODO(java9): log also user: ProcessHandle.current().info().user()
6160
"Directory '{}' exists but isn't writable for the current user! "
6261
+ "Image uploading won't work.",
6362
storageDir
6463
);
6564
}
6665

67-
LOG.info("Image previews will be saved into {} directory", previewDir);
66+
log.info("Image previews will be saved into {} directory", previewDir);
6867

6968
if (!previewDir.exists()) { // NOPMD: ConfusingTernary (it's ok for me)
70-
LOG.warn(
69+
log.warn(
7170
"Directory '{}' doesn't exist! Image preview generation won't work",
7271
previewDir
7372
);
7473

7574
} else if (!previewDir.canWrite()) {
7675
// TODO(java9): log also user: ProcessHandle.current().info().user()
77-
LOG.warn(
76+
log.warn(
7877
"Directory '{}' exists but isn't writable for the current user! "
7978
+ "Image preview generation won't work",
8079
previewDir
@@ -88,7 +87,7 @@ public void save(MultipartFile file, ImageInfoDto image) {
8887
Path dest = generateFilePath(storageDir, image);
8988
writeToFile(file, dest);
9089

91-
LOG.info("Image data has been written into file {}", dest);
90+
log.info("Image data has been written into file {}", dest);
9291

9392
} catch (IOException ex) {
9493
throw new ImagePersistenceException(ex);
@@ -101,7 +100,7 @@ public void savePreview(byte[] data, ImageInfoDto image) {
101100
Path dest = generateFilePath(previewDir, image);
102101
writeToFile(data, dest);
103102

104-
LOG.info("Image preview data has been written into file {}", dest);
103+
log.info("Image preview data has been written into file {}", dest);
105104

106105
} catch (IOException ex) {
107106
throw new ImagePersistenceException(ex);
@@ -124,7 +123,7 @@ public void removeIfPossible(ImageInfoDto image) {
124123
try {
125124
Files.deleteIfExists(dest);
126125
} catch (Exception ex) { // NOPMD: AvoidCatchingGenericException
127-
LOG.warn("Couldn't delete file {}: {}", dest, ex.getMessage());
126+
log.warn("Couldn't delete file {}: {}", dest, ex.getMessage());
128127
}
129128
}
130129

@@ -164,7 +163,7 @@ private ImageDto get(File dir, ImageInfoDto image, boolean logWarning) {
164163
Path dest = generateFilePath(dir, image);
165164
if (!exists(dest)) {
166165
if (logWarning) {
167-
LOG.warn(
166+
log.warn(
168167
"Image #{}: content not found ({} doesn't exist)",
169168
image.getId(),
170169
dest

src/test/groovy/ru/mystamps/web/service/FilesystemImagePersistenceStrategyTest.groovy

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
*/
1818
package ru.mystamps.web.service
1919

20+
import org.slf4j.helpers.NOPLogger
21+
2022
import org.springframework.web.multipart.MultipartFile
2123

2224
import spock.lang.Specification
@@ -36,8 +38,10 @@ class FilesystemImagePersistenceStrategyTest extends Specification {
3638
private final ImageInfoDto imageInfoDto = TestObjects.createImageInfoDto()
3739
private final Path mockFile = Mock(Path)
3840

39-
private final ImagePersistenceStrategy strategy =
40-
Spy(FilesystemImagePersistenceStrategy, constructorArgs:[STORAGE_DIR, PREVIEW_DIR])
41+
private final ImagePersistenceStrategy strategy = Spy(
42+
FilesystemImagePersistenceStrategy,
43+
constructorArgs:[NOPLogger.NOP_LOGGER, STORAGE_DIR, PREVIEW_DIR]
44+
)
4145

4246
//
4347
// Tests for save()

0 commit comments

Comments
 (0)