Skip to content

Commit 2b677b3

Browse files
committed
make RequestTool#errorHandling() static
1 parent 9de9962 commit 2b677b3

File tree

3 files changed

+44
-48
lines changed

3 files changed

+44
-48
lines changed

src/main/java/com/bhyoo/onedrive/client/Client.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -379,7 +379,7 @@ public RemoteItem[] getShared() throws ErrorResponseException {
379379
SyncResponse response = requestTool.postMetadata(api, content);
380380

381381
// if not 202 Accepted raise ErrorResponseException
382-
requestTool.errorHandling(response, HTTP_ACCEPTED);
382+
RequestTool.errorHandling(response, HTTP_ACCEPTED);
383383

384384
return new AsyncJobMonitor(response.getHeader().get("Location").get(0));
385385
}
@@ -548,7 +548,7 @@ private DownloadFuture _downloadAsync(@NotNull String api, @NotNull Path downloa
548548

549549
Files.createDirectories(downloadFolder);
550550

551-
return new AsyncDownloadClient(requestTool, RequestTool.api2Uri(api), downloadFolder, newName).execute();
551+
return new AsyncDownloadClient(getFullToken(), RequestTool.api2Uri(api), downloadFolder, newName).execute();
552552
}
553553

554554

@@ -687,14 +687,14 @@ public void deleteItem(@NotNull String id) throws ErrorResponseException {
687687
SyncResponse response = requestTool.newRequest(Client.ITEM_ID_PREFIX + id).doDelete();
688688

689689
// if response isn't 204 No Content
690-
requestTool.errorHandling(response, HTTP_NO_CONTENT);
690+
RequestTool.errorHandling(response, HTTP_NO_CONTENT);
691691
}
692692

693693
public void deleteItem(@NotNull BasePointer pointer) throws ErrorResponseException {
694694
SyncResponse response = requestTool.newRequest(pointer.toASCIIApi()).doDelete();
695695

696696
// if response isn't 204 No Content
697-
requestTool.errorHandling(response, HTTP_NO_CONTENT);
697+
RequestTool.errorHandling(response, HTTP_NO_CONTENT);
698698
}
699699

700700

src/main/java/com/bhyoo/onedrive/client/RequestTool.java

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,39 @@ public static URL api2Url(@NotNull String api) {
164164
}
165165
}
166166

167+
public static void errorHandling(@NotNull SyncResponse response, int expectedCode) throws ErrorResponseException {
168+
if (response.getCode() != expectedCode) {
169+
try {
170+
JsonParser parser = jsonFactory.createParser(response.getContent());
171+
parser.nextToken();
172+
ErrorResponse error = ErrorResponse.deserialize(parser, true);
173+
throw new ErrorResponseException(expectedCode, response.getCode(),
174+
error.getCode(), error.getMessage());
175+
}
176+
catch (IOException e) {
177+
// FIXME: custom exception
178+
throw new RuntimeException("DEV: Unrecognizable json response.", e);
179+
}
180+
}
181+
}
182+
183+
public static void errorHandling(@NotNull HttpResponse response, @NotNull ByteBufStream byteBufStream,
184+
int expectedCode) throws ErrorResponseException {
185+
if (response.status().code() != expectedCode) {
186+
try {
187+
JsonParser parser = jsonFactory.createParser(byteBufStream);
188+
parser.nextToken();
189+
ErrorResponse error = ErrorResponse.deserialize(parser, true);
190+
throw new ErrorResponseException(expectedCode, response.status().code(),
191+
error.getCode(), error.getMessage());
192+
}
193+
catch (IOException e) {
194+
// FIXME: custom exception
195+
throw new RuntimeException("DEV: Unrecognizable json response.", e);
196+
}
197+
}
198+
}
199+
167200

168201
/**
169202
* <h1>Refrain to use this method. you can find API that wants to process in {@link Client}.</h1>
@@ -499,39 +532,6 @@ private void uploadSession(@NotNull String api, @NotNull Path filePath) {
499532

500533
}
501534

502-
public void errorHandling(@NotNull SyncResponse response, int expectedCode) throws ErrorResponseException {
503-
if (response.getCode() != expectedCode) {
504-
try {
505-
JsonParser parser = jsonFactory.createParser(response.getContent());
506-
parser.nextToken();
507-
ErrorResponse error = ErrorResponse.deserialize(parser, true);
508-
throw new ErrorResponseException(expectedCode, response.getCode(),
509-
error.getCode(), error.getMessage());
510-
}
511-
catch (IOException e) {
512-
// FIXME: custom exception
513-
throw new RuntimeException("DEV: Unrecognizable json response.", e);
514-
}
515-
}
516-
}
517-
518-
public void errorHandling(@NotNull HttpResponse response, @NotNull ByteBufStream byteBufStream,
519-
int expectedCode) throws ErrorResponseException {
520-
if (response.status().code() != expectedCode) {
521-
try {
522-
JsonParser parser = jsonFactory.createParser(byteBufStream);
523-
parser.nextToken();
524-
ErrorResponse error = ErrorResponse.deserialize(parser, true);
525-
throw new ErrorResponseException(expectedCode, response.status().code(),
526-
error.getCode(), error.getMessage());
527-
}
528-
catch (IOException e) {
529-
// FIXME: custom exception
530-
throw new RuntimeException("DEV: Unrecognizable json response.", e);
531-
}
532-
}
533-
}
534-
535535
public @NotNull DriveItem parseDriveItemAndHandle(@NotNull SyncResponse response, int expectedCode)
536536
throws ErrorResponseException {
537537
return parseDriveItem(response, expectedCode, client);

src/main/java/com/bhyoo/onedrive/network/async/AsyncDownloadClient.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,19 +28,17 @@
2828
public class AsyncDownloadClient extends AbstractClient {
2929
private final @NotNull String accessToken;
3030
private final @NotNull Path downloadFolder;
31-
private final @NotNull RequestTool requestTool;
3231
private final @Nullable String newName;
3332

3433

35-
public AsyncDownloadClient(@NotNull RequestTool requestTool, @NotNull URI itemURI, @NotNull Path downloadFolder) {
36-
this(requestTool, itemURI, downloadFolder, null);
34+
public AsyncDownloadClient(@NotNull String accessToken, @NotNull URI itemURI, @NotNull Path downloadFolder) {
35+
this(accessToken, itemURI, downloadFolder, null);
3736
}
3837

39-
public AsyncDownloadClient(@NotNull RequestTool requestTool, @NotNull URI itemURI,
38+
public AsyncDownloadClient(@NotNull String accessToken, @NotNull URI itemURI,
4039
@NotNull Path downloadFolder, @Nullable String newName) {
4140
super(HttpMethod.GET, itemURI, null);
42-
this.requestTool = requestTool;
43-
this.accessToken = requestTool.getClient().getFullToken();
41+
this.accessToken = accessToken;
4442
this.downloadFolder = downloadFolder;
4543
this.newName = newName;
4644
}
@@ -62,7 +60,7 @@ public DownloadFuture execute() {
6260
DownloadPromise downloadPromise = new DefaultDownloadPromise(group.next())
6361
.setPath(downloadFolder);
6462

65-
DownloadListener listener = new DownloadListener(downloadPromise, request, requestTool, newName);
63+
DownloadListener listener = new DownloadListener(downloadPromise, request, newName);
6664

6765
new AsyncClient(group, method, uri)
6866
.setHeader(HttpHeaderNames.AUTHORIZATION, accessToken)
@@ -75,14 +73,12 @@ public DownloadFuture execute() {
7573
static class DownloadListener implements ResponseFutureListener {
7674
private final DownloadPromise promise;
7775
private final DefaultFullHttpRequest request;
78-
private final RequestTool requestTool;
7976
private final @Nullable String newName;
8077

8178
DownloadListener(DownloadPromise promise, DefaultFullHttpRequest request,
82-
RequestTool requestTool, @Nullable String newName) {
79+
@Nullable String newName) {
8380
this.promise = promise;
8481
this.request = request;
85-
this.requestTool = requestTool;
8682
this.newName = newName;
8783
}
8884

@@ -124,7 +120,7 @@ else if (response.status().code() == HTTP_MOVED_TEMP) {
124120
}
125121
else {
126122
try {
127-
requestTool.errorHandling(response, result, HTTP_MOVED_TEMP);
123+
RequestTool.errorHandling(response, result, HTTP_MOVED_TEMP);
128124
}
129125
catch (Exception e) {
130126
promise.setFailure(e);

0 commit comments

Comments
 (0)