Skip to content

Commit 0ee52d7

Browse files
Optimise getClient()
1 parent 585e27d commit 0ee52d7

File tree

2 files changed

+8
-25
lines changed

2 files changed

+8
-25
lines changed

kafka-connect-fitbit-source/src/main/java/org/radarbase/connect/rest/fitbit/request/FitbitRequestGenerator.java

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,7 @@
2323
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
2424
import io.confluent.connect.avro.AvroData;
2525
import java.io.IOException;
26-
import java.util.ArrayList;
27-
import java.util.Arrays;
28-
import java.util.Collections;
29-
import java.util.HashMap;
30-
import java.util.List;
31-
import java.util.Map;
26+
import java.util.*;
3227
import java.util.stream.Collectors;
3328
import java.util.stream.Stream;
3429
import okhttp3.OkHttpClient;
@@ -96,15 +91,11 @@ private List<RequestRoute> getRoutes(FitbitRestSourceConnectorConfig config) {
9691
return localRoutes;
9792
}
9893

99-
public OkHttpClient getClient(User user) throws IOException, NoSuchMethodException {
100-
for(UserRepository userRepository: userRepositories) {
101-
if(userRepository.stream().distinct().anyMatch(u -> u.equals(user))) {
102-
return clients.computeIfAbsent(user.getId(), u -> baseClient.newBuilder()
103-
.authenticator(new TokenAuthenticator(user, userRepository))
104-
.build());
105-
}
106-
}
107-
throw new NoSuchMethodException("User " + user + " is not present in any user repository.");
94+
public OkHttpClient getClient(User user, UserRepository userRepository) {
95+
96+
return clients.computeIfAbsent(user.getId(), u -> baseClient.newBuilder()
97+
.authenticator(new TokenAuthenticator(user, userRepository))
98+
.build());
10899
}
109100

110101
public Map<String, Map<String, Object>> getPartitions(String route) {

kafka-connect-fitbit-source/src/main/java/org/radarbase/connect/rest/fitbit/route/FitbitPollingRoute.java

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,7 @@
3131
import java.time.ZonedDateTime;
3232
import java.time.format.DateTimeFormatter;
3333
import java.time.temporal.TemporalAmount;
34-
import java.util.AbstractMap;
35-
import java.util.Comparator;
36-
import java.util.HashMap;
37-
import java.util.Map;
38-
import java.util.Objects;
39-
import java.util.Set;
34+
import java.util.*;
4035
import java.util.concurrent.ConcurrentHashMap;
4136
import java.util.stream.Collectors;
4237
import java.util.stream.Stream;
@@ -220,15 +215,12 @@ protected FitbitRestRequest newRequest(User user, DateRange dateRange,
220215
.header("Authorization", "Bearer " + userRepository.getAccessToken(user))
221216
.build();
222217
return new FitbitRestRequest(this, request, user, getPartition(user),
223-
generator.getClient(user), dateRange,
218+
generator.getClient(user, userRepository), dateRange,
224219
req -> !tooManyRequestsForUser.contains(((FitbitRestRequest)req).getUser()));
225220
} catch (NotAuthorizedException | IOException ex) {
226221
logger.warn("User {} does not have a configured access token: {}. Skipping.",
227222
user, ex.toString());
228223
return null;
229-
} catch (NoSuchMethodException ex) {
230-
logger.warn("User not found: {}. Skipping.", ex.toString());
231-
return null;
232224
}
233225
}
234226

0 commit comments

Comments
 (0)