summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2018-12-07 16:50:41 +0100
committercyBerta <cyberta@riseup.net>2018-12-07 16:50:41 +0100
commit9b832c4386f0f839006df68dd75d98fc173344d0 (patch)
tree378cfcb2e03885f786f41ffb04aef0eaf0d971a3 /app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java
parent1f5095b59c93b04120a2e10f0b083b4f6846ca68 (diff)
first shot gatewayselection
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java b/app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java
index 19735483..2bca5c9b 100644
--- a/app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java
+++ b/app/src/main/java/se/leap/bitmaskclient/eip/EipCommand.java
@@ -10,10 +10,13 @@ import android.support.annotation.VisibleForTesting;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+import se.leap.bitmaskclient.Provider;
+
import static se.leap.bitmaskclient.Constants.EIP_ACTION_CHECK_CERT_VALIDITY;
import static se.leap.bitmaskclient.Constants.EIP_ACTION_START;
import static se.leap.bitmaskclient.Constants.EIP_ACTION_STOP;
import static se.leap.bitmaskclient.Constants.EIP_EARLY_ROUTES;
+import static se.leap.bitmaskclient.Constants.EIP_N_CLOSEST_GATEWAY;
import static se.leap.bitmaskclient.Constants.EIP_RECEIVER;
/**
@@ -22,7 +25,7 @@ import static se.leap.bitmaskclient.Constants.EIP_RECEIVER;
public class EipCommand {
- public static void execute(@NotNull Context context, @NotNull String action) {
+ private static void execute(@NotNull Context context, @NotNull String action) {
execute(context, action, null, null);
}
@@ -33,7 +36,7 @@ public class EipCommand {
* filter for the EIP class
* @param resultReceiver The resultreceiver to reply to
*/
- public static void execute(@NotNull Context context, @NotNull String action, @Nullable ResultReceiver resultReceiver, @Nullable Intent vpnIntent) {
+ private static void execute(@NotNull Context context, @NotNull String action, @Nullable ResultReceiver resultReceiver, @Nullable Intent vpnIntent) {
// TODO validate "action"...how do we get the list of intent-filters for a class via Android API?
if (vpnIntent == null) {
vpnIntent = new Intent();
@@ -48,6 +51,14 @@ public class EipCommand {
public static void startVPN(@NonNull Context context, boolean earlyRoutes) {
Intent baseIntent = new Intent();
baseIntent.putExtra(EIP_EARLY_ROUTES, earlyRoutes);
+ baseIntent.putExtra(EIP_N_CLOSEST_GATEWAY, 0);
+ execute(context, EIP_ACTION_START, null, baseIntent);
+ }
+
+ public static void startVPN(@NonNull Context context, boolean earlyRoutes, int nClosestGateway) {
+ Intent baseIntent = new Intent();
+ baseIntent.putExtra(EIP_EARLY_ROUTES, earlyRoutes);
+ baseIntent.putExtra(EIP_N_CLOSEST_GATEWAY, nClosestGateway);
execute(context, EIP_ACTION_START, null, baseIntent);
}