Skip to content

Commit 8bfd3b2

Browse files
committed
More annotations
1 parent d454b11 commit 8bfd3b2

3 files changed

Lines changed: 21 additions & 8 deletions

File tree

library/src/main/java/com/proxerme/library/connection/ErrorHandler.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.proxerme.library.connection;
22

3+
import android.support.annotation.CheckResult;
34
import android.support.annotation.NonNull;
45

56
import com.afollestad.bridge.BridgeException;
@@ -31,6 +32,7 @@ class ErrorHandler {
3132
*/
3233
@SuppressWarnings("UnusedParameters")
3334
@NonNull
35+
@CheckResult
3436
public static ProxerException handleException(@NonNull JSONException jsonException) {
3537
return new ProxerException(UNPARSEABLE);
3638
}
@@ -41,6 +43,7 @@ public static ProxerException handleException(@NonNull JSONException jsonExcepti
4143
* @return The appropriate {@link ProxerException}.
4244
*/
4345
@NonNull
46+
@CheckResult
4447
public static ProxerException handleException(@NonNull BridgeException bridgeException) {
4548
ProxerException exception;
4649

library/src/main/java/com/proxerme/library/connection/ProxerConnection.java

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
package com.proxerme.library.connection;
22

3+
import android.support.annotation.CheckResult;
34
import android.support.annotation.IntRange;
45
import android.support.annotation.NonNull;
6+
import android.support.annotation.RequiresPermission;
7+
import android.support.annotation.WorkerThread;
58

69
import com.afollestad.bridge.Bridge;
710
import com.afollestad.bridge.BridgeException;
@@ -48,6 +51,7 @@ public class ProxerConnection {
4851
* @return A {@link NewsRequest} to work with.
4952
*/
5053
@NonNull
54+
@CheckResult
5155
public static NewsRequest loadNews(@IntRange(from = 1) int page) {
5256
return new NewsRequest(page);
5357
}
@@ -59,6 +63,7 @@ public static NewsRequest loadNews(@IntRange(from = 1) int page) {
5963
* @return A {@link LoginRequest} to work with.
6064
*/
6165
@NonNull
66+
@CheckResult
6267
public static LoginRequest login(@NonNull LoginUser user) {
6368
return new LoginRequest(user);
6469
}
@@ -69,6 +74,7 @@ public static LoginRequest login(@NonNull LoginUser user) {
6974
* @return A {@link LogoutRequest} to work with.
7075
*/
7176
@NonNull
77+
@CheckResult
7278
public static LogoutRequest logout() {
7379
return new LogoutRequest();
7480
}
@@ -80,6 +86,7 @@ public static LogoutRequest logout() {
8086
* @return A {@link ConferencesRequest} to work with.
8187
*/
8288
@NonNull
89+
@CheckResult
8390
public static ConferencesRequest loadConferences(@IntRange(from = 1) int page) {
8491
return new ConferencesRequest(page);
8592
}
@@ -184,7 +191,7 @@ public static abstract class ProxerRequest<T> {
184191
* @return The {@link RequestBuilder} to use for further invocations.
185192
*/
186193
@NonNull
187-
protected abstract RequestBuilder buildRequest(Bridge bridge);
194+
protected abstract RequestBuilder buildRequest(@NonNull Bridge bridge);
188195

189196
/**
190197
* Returns the {@link ProxerTag} of this request.
@@ -198,7 +205,8 @@ public static abstract class ProxerRequest<T> {
198205
* @see #executeSynchronized()
199206
* @param callback The callback for notifications about the Result.
200207
*/
201-
public void execute(@NonNull final ResultCallback<T> callback) {
208+
@RequiresPermission(android.Manifest.permission.INTERNET)
209+
public final void execute(@NonNull final ResultCallback<T> callback) {
202210
buildRequest(Bridge.client()).tag(getTag()).request(new Callback() {
203211
@Override
204212
public void response(Request request, Response response, BridgeException exception) {
@@ -225,7 +233,9 @@ public void response(Request request, Response response, BridgeException excepti
225233
* @return The result, specified by this class.
226234
* @throws ProxerException An Exception, which might occur, while executing the request.
227235
*/
228-
public T executeSynchronized() throws ProxerException {
236+
@WorkerThread
237+
@RequiresPermission(android.Manifest.permission.INTERNET)
238+
public final T executeSynchronized() throws ProxerException {
229239
try {
230240
JSONObject result = buildRequest(Bridge.client()).tag(getTag() + 1).asJsonObject();
231241

@@ -259,7 +269,7 @@ public NewsRequest(@IntRange(from = 1) int page) {
259269

260270
@NonNull
261271
@Override
262-
protected RequestBuilder buildRequest(Bridge bridge) {
272+
protected RequestBuilder buildRequest(@NonNull Bridge bridge) {
263273
return bridge.get(UrlHolder.getNewsUrl(page));
264274
}
265275

@@ -288,7 +298,7 @@ public LoginRequest(@NonNull LoginUser user) {
288298

289299
@NonNull
290300
@Override
291-
protected RequestBuilder buildRequest(Bridge bridge) {
301+
protected RequestBuilder buildRequest(@NonNull Bridge bridge) {
292302
Form loginCredentials = new Form().add(FORM_USERNAME, user.getUsername())
293303
.add(FORM_PASSWORD, user.getPassword());
294304

@@ -317,7 +327,7 @@ public static class LogoutRequest extends ProxerRequest<Void> {
317327

318328
@NonNull
319329
@Override
320-
protected RequestBuilder buildRequest(Bridge bridge) {
330+
protected RequestBuilder buildRequest(@NonNull Bridge bridge) {
321331
return bridge.get(UrlHolder.getLogoutUrl());
322332
}
323333

@@ -346,7 +356,7 @@ public ConferencesRequest(@IntRange(from = 1) int page) {
346356

347357
@NonNull
348358
@Override
349-
protected RequestBuilder buildRequest(Bridge bridge) {
359+
protected RequestBuilder buildRequest(@NonNull Bridge bridge) {
350360
return bridge.get(UrlHolder.getConferencesUrl(page));
351361
}
352362

library/src/main/java/com/proxerme/library/entity/LoginData.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public LoginData[] newArray(int size) {
3030
* @param id The id of the user.
3131
* @param image The profile picture of the user.
3232
*/
33-
public LoginData(String id, String image) {
33+
public LoginData(@NonNull String id, @NonNull String image) {
3434
this.id = id;
3535
this.imageLink = image;
3636
}

0 commit comments

Comments
 (0)