Skip to content

Commit 3961ed1

Browse files
committed
rename methods
1 parent fce74d6 commit 3961ed1

6 files changed

Lines changed: 33 additions & 32 deletions

File tree

src/main/java/io/apimatic/core/HttpRequest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -325,13 +325,13 @@ public static class Builder {
325325
private Parameter.Builder parameterBuilder = new Parameter.Builder();
326326

327327
/**
328-
* Update the request parameters using a setter.
328+
* Update the request parameters using a setter thats called via a JSON pointer.
329329
*
330330
* @param pointer A JSON pointer pointing to any request field.
331331
* @param setter A function that takes in an old value and returns a new value.
332332
* @return The updated instance of current request builder.
333333
*/
334-
public Builder updateByReference(String pointer, UnaryOperator<Object> setter) {
334+
public Builder updateParameterByJsonPointer(String pointer, UnaryOperator<Object> setter) {
335335
if (pointer == null) {
336336
return this;
337337
}
@@ -369,7 +369,7 @@ private void updateBodyParams(UnaryOperator<Object> setter, String point) {
369369
String serializedBody = bodySerializer.supply();
370370
String newSerializedBody = setter.apply(serializedBody).toString();
371371
bodySerializer = () -> newSerializedBody;
372-
} catch (IOException e) {
372+
} catch (Exception e) {
373373
// Empty block
374374
}
375375
return;

src/main/java/io/apimatic/core/types/pagination/CursorPagination.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package io.apimatic.core.types.pagination;
22

3+
import java.util.concurrent.atomic.AtomicBoolean;
4+
35
import io.apimatic.core.HttpRequest.Builder;
46
import io.apimatic.core.utilities.CoreHelper;
57
import io.apimatic.coreinterfaces.http.response.Response;
@@ -22,13 +24,13 @@ public CursorPagination(final String output, final String input) {
2224
public Builder apply(PaginatedData<?, ?, ?, ?> paginatedData) {
2325
Response response = paginatedData.getResponse();
2426
Builder reqBuilder = paginatedData.getRequestBuilder();
25-
final boolean[] isUpdated = {false};
27+
AtomicBoolean isUpdated = new AtomicBoolean(false);
2628

27-
reqBuilder.updateByReference(input, old -> {
29+
reqBuilder.updateParameterByJsonPointer(input, old -> {
2830

2931
if (response == null) {
3032
currentRequestCursor = (String) old;
31-
isUpdated[0] = true;
33+
isUpdated.set(true);
3234
return old;
3335
}
3436

@@ -39,15 +41,15 @@ public Builder apply(PaginatedData<?, ?, ?, ?> paginatedData) {
3941
}
4042

4143
currentRequestCursor = cursorValue;
42-
isUpdated[0] = true;
44+
isUpdated.set(true);
4345
return cursorValue;
4446
});
4547

46-
if (!isUpdated[0] && response == null) {
48+
if (!isUpdated.get() && response == null) {
4749
return reqBuilder;
4850
}
4951

50-
return isUpdated[0] ? reqBuilder : null;
52+
return isUpdated.get() ? reqBuilder : null;
5153
}
5254

5355
@Override

src/main/java/io/apimatic/core/types/pagination/OffsetPagination.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package io.apimatic.core.types.pagination;
22

3+
import java.util.concurrent.atomic.AtomicBoolean;
4+
35
import io.apimatic.core.HttpRequest.Builder;
46
import io.apimatic.coreinterfaces.http.response.Response;
57

@@ -18,28 +20,28 @@ public OffsetPagination(final String input) {
1820
public Builder apply(PaginatedData<?, ?, ?, ?> paginatedData) {
1921
Response response = paginatedData.getResponse();
2022
Builder reqBuilder = paginatedData.getRequestBuilder();
21-
final boolean[] isUpdated = {false};
23+
AtomicBoolean isUpdated = new AtomicBoolean(false);
2224

23-
reqBuilder.updateByReference(input, old -> {
25+
reqBuilder.updateParameterByJsonPointer(input, old -> {
2426
int oldValue = Integer.parseInt("" + old);
2527

2628
if (response == null) {
2729
currentRequestOffset = oldValue;
28-
isUpdated[0] = true;
30+
isUpdated.set(true);
2931
return old;
3032
}
3133

3234
int newValue = oldValue + paginatedData.getPageSize();
3335
currentRequestOffset = newValue;
34-
isUpdated[0] = true;
36+
isUpdated.set(true);
3537
return newValue;
3638
});
3739

38-
if (!isUpdated[0] && response == null) {
40+
if (!isUpdated.get() && response == null) {
3941
return reqBuilder;
4042
}
4143

42-
return isUpdated[0] ? reqBuilder : null;
44+
return isUpdated.get() ? reqBuilder : null;
4345
}
4446

4547
@Override

src/main/java/io/apimatic/core/types/pagination/PagePagination.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package io.apimatic.core.types.pagination;
22

3+
import java.util.concurrent.atomic.AtomicBoolean;
4+
35
import io.apimatic.core.HttpRequest.Builder;
46
import io.apimatic.coreinterfaces.http.response.Response;
57

@@ -18,28 +20,28 @@ public PagePagination(final String input) {
1820
public Builder apply(PaginatedData<?, ?, ?, ?> paginatedData) {
1921
Response response = paginatedData.getResponse();
2022
Builder reqBuilder = paginatedData.getRequestBuilder();
21-
final boolean[] isUpdated = {false};
23+
AtomicBoolean isUpdated = new AtomicBoolean(false);
2224

23-
reqBuilder.updateByReference(input, old -> {
25+
reqBuilder.updateParameterByJsonPointer(input, old -> {
2426
int oldValue = Integer.parseInt("" + old);
2527

2628
if (response == null) {
2729
currentRequestPageNumber = oldValue;
28-
isUpdated[0] = true;
30+
isUpdated.set(true);
2931
return old;
3032
}
3133

3234
int newValue = oldValue + 1;
3335
currentRequestPageNumber = newValue;
34-
isUpdated[0] = true;
36+
isUpdated.set(true);
3537
return newValue;
3638
});
3739

38-
if (!isUpdated[0] && response == null) {
40+
if (!isUpdated.get() && response == null) {
3941
return reqBuilder;
4042
}
4143

42-
return isUpdated[0] ? reqBuilder : null;
44+
return isUpdated.get() ? reqBuilder : null;
4345
}
4446

4547
@Override

src/main/java/io/apimatic/core/types/pagination/PaginatedData.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,7 @@ public <T> T getPage(Function<CheckedSupplier<P, ExceptionType>, T> pageSupplier
7979
* @return An Iterator of items of type T
8080
*/
8181
public <T> Iterator<T> items(Function<CheckedSupplier<I, ExceptionType>, T> itemSupplier) {
82-
PaginatedData<I, P, Res, ExceptionType> paginatedData = new PaginatedData<>(
83-
firstApiCall, pageCreator, itemsCreator, strategies);
82+
PaginatedData<I, P, Res, ExceptionType> paginatedData = copy();
8483

8584
return new Iterator<T>() {
8685
@Override
@@ -107,8 +106,7 @@ public T next() {
107106
* @return An Iterator of pages of type T
108107
*/
109108
public <T> Iterator<T> pages(Function<CheckedSupplier<P, ExceptionType>, T> pageSupplier) {
110-
PaginatedData<I, P, Res, ExceptionType> paginatedData = new PaginatedData<>(
111-
firstApiCall, pageCreator, itemsCreator, strategies);
109+
PaginatedData<I, P, Res, ExceptionType> paginatedData = copy();
112110

113111
return new Iterator<T>() {
114112
@Override
@@ -132,6 +130,10 @@ public T next() {
132130
}
133131
};
134132
}
133+
134+
public PaginatedData<I, P, Res, ExceptionType> copy() {
135+
return new PaginatedData<>(firstApiCall, pageCreator, itemsCreator, strategies);
136+
}
135137

136138
public CompletableFuture<Boolean> fetchNextPageAsync() {
137139
if (dataClosed) {

src/test/java/apimatic/core/type/pagination/OffsetPaginationTest.java

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,21 @@
33
import static org.junit.Assert.assertEquals;
44
import static org.junit.Assert.assertNotNull;
55
import static org.junit.Assert.assertNull;
6-
import static org.junit.Assert.assertTrue;
7-
import static org.junit.Assert.fail;
86
import static org.mockito.Mockito.mock;
97
import static org.mockito.Mockito.when;
108

119
import java.io.File;
1210
import java.io.IOException;
13-
import java.lang.reflect.Field;
1411
import java.util.HashMap;
1512
import java.util.Map;
16-
import java.util.function.Supplier;
17-
import java.util.function.UnaryOperator;
1813

1914
import org.junit.Rule;
2015
import org.junit.Test;
2116
import org.mockito.junit.MockitoJUnit;
2217
import org.mockito.junit.MockitoRule;
2318

24-
import io.apimatic.core.GlobalConfiguration;
2519
import io.apimatic.core.HttpRequest;
2620
import io.apimatic.core.HttpRequest.Builder;
27-
import io.apimatic.core.types.OptionalNullable.Serializer;
2821
import io.apimatic.core.types.pagination.OffsetPagination;
2922
import io.apimatic.core.types.pagination.PageWrapper;
3023
import io.apimatic.core.types.pagination.PaginatedData;

0 commit comments

Comments
 (0)