Skip to content

Commit 4b98c05

Browse files
committed
Fix ServiceUserRepository according to pagination changes in the external service repository
1 parent 5bb8caf commit 4b98c05

File tree

3 files changed

+28
-2
lines changed

3 files changed

+28
-2
lines changed

kafka-connect-fitbit-source/src/main/java/org/radarbase/connect/rest/fitbit/user/ServiceUserRepository.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ public boolean hasPendingUpdates() {
150150
@Override
151151
public void applyPendingUpdates() throws IOException {
152152
logger.info("Requesting user information from webservice");
153-
Request request = requestFor("users?source-type=FitBit").build();
153+
Request request = requestFor("users?source-type=FitBit?page=1&size=" + Integer.MAX_VALUE).build();
154154
this.timedCachedUsers =
155155
this.<Users>makeRequest(request, USER_LIST_READER).getUsers().stream()
156156
.filter(u -> u.isComplete()

kafka-connect-fitbit-source/src/main/java/org/radarbase/connect/rest/fitbit/user/Users.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,20 @@
1919

2020
import com.fasterxml.jackson.annotation.JsonCreator;
2121
import com.fasterxml.jackson.annotation.JsonProperty;
22+
import org.radarbase.connect.rest.fitbit.util.Page;
23+
2224
import java.util.ArrayList;
2325
import java.util.List;
2426

2527
public class Users {
2628
private final List<LocalUser> users;
29+
private final Page metadata;
2730

2831

2932
@JsonCreator
30-
public Users(@JsonProperty("users") List<LocalUser> users) {
33+
public Users(@JsonProperty("users") List<LocalUser> users, @JsonProperty("metadata") Page metadata) {
3134
this.users = new ArrayList<>(users);
35+
this.metadata = metadata;
3236
}
3337

3438
public List<? extends User> getUsers() {
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package org.radarbase.connect.rest.fitbit.util;
2+
3+
import com.fasterxml.jackson.annotation.JsonProperty;
4+
5+
public class Page {
6+
7+
public int pageNumber;
8+
public int pageSize;
9+
public long totalElements;
10+
public int offset;
11+
12+
public Page(@JsonProperty("pageNumber") int pageNumber,
13+
@JsonProperty("pageSize") int pageSize,
14+
@JsonProperty("totalElements") long totalElements,
15+
@JsonProperty("offset") int offset) {
16+
this.pageNumber = pageNumber;
17+
this.pageSize = pageSize;
18+
this.totalElements = totalElements;
19+
this.offset = offset;
20+
}
21+
22+
}

0 commit comments

Comments
 (0)