diff --git a/bramble-android/src/main/java/org/briarproject/bramble/network/AndroidNetworkManager.java b/bramble-android/src/main/java/org/briarproject/bramble/network/AndroidNetworkManager.java index f8e52e965aa3ee473aa44932d9ee066999baf76b..490f8b4ec35213135bb9d8b4fc888d01461d9d6b 100644 --- a/bramble-android/src/main/java/org/briarproject/bramble/network/AndroidNetworkManager.java +++ b/bramble-android/src/main/java/org/briarproject/bramble/network/AndroidNetworkManager.java @@ -13,6 +13,8 @@ import org.briarproject.bramble.api.lifecycle.Service; import org.briarproject.bramble.api.network.NetworkManager; import org.briarproject.bramble.api.network.NetworkStatus; import org.briarproject.bramble.api.network.event.NetworkStatusEvent; +import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault; +import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault; import org.briarproject.bramble.api.system.Scheduler; import java.util.concurrent.Future; @@ -22,6 +24,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicReference; import java.util.logging.Logger; +import javax.annotation.Nullable; import javax.inject.Inject; import static android.content.Context.CONNECTIVITY_SERVICE; @@ -35,6 +38,8 @@ import static java.util.concurrent.TimeUnit.MINUTES; import static java.util.concurrent.TimeUnit.SECONDS; import static java.util.logging.Level.INFO; +@MethodsNotNullByDefault +@ParametersNotNullByDefault class AndroidNetworkManager implements NetworkManager, Service { private static final Logger LOG = @@ -122,7 +127,7 @@ class AndroidNetworkManager implements NetworkManager, Service { } } - private boolean isSleepOrDozeEvent(String action) { + private boolean isSleepOrDozeEvent(@Nullable String action) { boolean isSleep = ACTION_SCREEN_ON.equals(action) || ACTION_SCREEN_OFF.equals(action); boolean isDoze = SDK_INT >= 23 && @@ -130,7 +135,7 @@ class AndroidNetworkManager implements NetworkManager, Service { return isSleep || isDoze; } - private boolean isApEvent(String action) { + private boolean isApEvent(@Nullable String action) { return WIFI_AP_STATE_CHANGED_ACTION.equals(action); } } diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkManager.java b/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkManager.java index 5299c81267e53b67664a1b265611c7b6c2bd7f4f..f95eddc7d77df9fa71a042fda440b7f4d2307aa8 100644 --- a/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkManager.java +++ b/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkManager.java @@ -1,5 +1,8 @@ package org.briarproject.bramble.api.network; +import org.briarproject.bramble.api.nullsafety.NotNullByDefault; + +@NotNullByDefault public interface NetworkManager { NetworkStatus getNetworkStatus(); diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkStatus.java b/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkStatus.java index af3f7f94d68f4e0cb7ebaada98c72740ad2180f9..2cdb22e76899f24bb27cef0b1c530fdeec3481c1 100644 --- a/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkStatus.java +++ b/bramble-api/src/main/java/org/briarproject/bramble/api/network/NetworkStatus.java @@ -1,5 +1,11 @@ package org.briarproject.bramble.api.network; +import org.briarproject.bramble.api.nullsafety.NotNullByDefault; + +import javax.annotation.concurrent.Immutable; + +@Immutable +@NotNullByDefault public class NetworkStatus { private final boolean connected, wifi; diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/network/event/NetworkStatusEvent.java b/bramble-api/src/main/java/org/briarproject/bramble/api/network/event/NetworkStatusEvent.java index 8ecf08ada1692bad75176cc435aeb5b782904bf7..f37bff94dc848584c70e032e47005d63da6ba9d5 100644 --- a/bramble-api/src/main/java/org/briarproject/bramble/api/network/event/NetworkStatusEvent.java +++ b/bramble-api/src/main/java/org/briarproject/bramble/api/network/event/NetworkStatusEvent.java @@ -2,7 +2,12 @@ package org.briarproject.bramble.api.network.event; import org.briarproject.bramble.api.event.Event; import org.briarproject.bramble.api.network.NetworkStatus; +import org.briarproject.bramble.api.nullsafety.NotNullByDefault; +import javax.annotation.concurrent.Immutable; + +@Immutable +@NotNullByDefault public class NetworkStatusEvent extends Event { private final NetworkStatus status;