Skip to content

Commit d7f899a

Browse files
committed
SeriesInfoExtractorServiceImpl: refactor code to use Stream API for getting unique candidates.
Prerequsite to #821 No functional changes.
1 parent b8a04ed commit d7f899a

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

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

+8-5
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@
1818
package ru.mystamps.web.service;
1919

2020
import java.math.BigDecimal;
21+
import java.util.Arrays;
2122
import java.util.Collections;
22-
import java.util.HashSet;
2323
import java.util.List;
2424
import java.util.Set;
2525
import java.util.regex.Matcher;
2626
import java.util.regex.Pattern;
27+
import java.util.stream.Collectors;
2728

2829
import org.apache.commons.lang3.StringUtils;
2930

@@ -89,8 +90,9 @@ protected List<Integer> extractCategory(String fragment) {
8990
log.debug("Determining category from a fragment: '{}'", fragment);
9091

9192
String[] candidates = StringUtils.split(fragment, "\n\t ,");
92-
Set<String> uniqueCandidates = new HashSet<>();
93-
Collections.addAll(uniqueCandidates, candidates);
93+
Set<String> uniqueCandidates = Arrays.stream(candidates)
94+
.distinct()
95+
.collect(Collectors.toSet());
9496

9597
log.debug("Possible candidates: {}", uniqueCandidates);
9698

@@ -122,8 +124,9 @@ protected List<Integer> extractCountry(String fragment) {
122124
log.debug("Determining country from a fragment: '{}'", fragment);
123125

124126
String[] candidates = StringUtils.split(fragment, "\n\t ,");
125-
Set<String> uniqueCandidates = new HashSet<>();
126-
Collections.addAll(uniqueCandidates, candidates);
127+
Set<String> uniqueCandidates = Arrays.stream(candidates)
128+
.distinct()
129+
.collect(Collectors.toSet());
127130

128131
log.debug("Possible candidates: {}", uniqueCandidates);
129132

0 commit comments

Comments
 (0)