aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/org/pacien/tincapp/intent
diff options
context:
space:
mode:
authorpacien2018-02-16 18:23:01 +0100
committerpacien2018-02-16 18:23:01 +0100
commitc359d78bcd45cb506bac51a616ef62af0845df85 (patch)
treee526bbf710d301310fdee6a0da6399fb79c71f66 /app/src/main/java/org/pacien/tincapp/intent
parent680fe07b6ea000ee29ac28e2f48665433e7011df (diff)
downloadtincapp-c359d78bcd45cb506bac51a616ef62af0845df85.tar.gz
Refactor activities and service, locking app at daemon startup and shutdown
Diffstat (limited to 'app/src/main/java/org/pacien/tincapp/intent')
-rw-r--r--app/src/main/java/org/pacien/tincapp/intent/Actions.kt19
-rw-r--r--app/src/main/java/org/pacien/tincapp/intent/SimpleBroadcastReceiver.kt19
-rw-r--r--app/src/main/java/org/pacien/tincapp/intent/action/Actions.kt14
3 files changed, 38 insertions, 14 deletions
diff --git a/app/src/main/java/org/pacien/tincapp/intent/Actions.kt b/app/src/main/java/org/pacien/tincapp/intent/Actions.kt
new file mode 100644
index 0000000..4650952
--- /dev/null
+++ b/app/src/main/java/org/pacien/tincapp/intent/Actions.kt
@@ -0,0 +1,19 @@
1package org.pacien.tincapp.intent
2
3import android.net.Uri
4import org.pacien.tincapp.BuildConfig
5
6/**
7 * @author pacien
8 */
9object Actions {
10 const val PREFIX = "${BuildConfig.APPLICATION_ID}.intent.action"
11 const val ACTION_CONNECT = "$PREFIX.CONNECT"
12 const val ACTION_DISCONNECT = "$PREFIX.DISCONNECT"
13 const val EVENT_CONNECTED = "$PREFIX.CONNECTED"
14 const val EVENT_DISCONNECTED = "$PREFIX.DISCONNECTED"
15 const val TINC_SCHEME = "tinc"
16
17 fun buildNetworkUri(netName: String, passphrase: String? = null): Uri =
18 Uri.Builder().scheme(Actions.TINC_SCHEME).opaquePart(netName).fragment(passphrase).build()
19}
diff --git a/app/src/main/java/org/pacien/tincapp/intent/SimpleBroadcastReceiver.kt b/app/src/main/java/org/pacien/tincapp/intent/SimpleBroadcastReceiver.kt
new file mode 100644
index 0000000..fb77174
--- /dev/null
+++ b/app/src/main/java/org/pacien/tincapp/intent/SimpleBroadcastReceiver.kt
@@ -0,0 +1,19 @@
1package org.pacien.tincapp.intent
2
3import android.content.BroadcastReceiver
4import android.content.Context
5import android.content.Intent
6import android.content.IntentFilter
7import android.support.v4.content.LocalBroadcastManager
8import org.pacien.tincapp.context.App
9
10/**
11 * @author pacien
12 */
13class SimpleBroadcastReceiver(private val intentFilter: IntentFilter, private val eventHandler: () -> Unit) : BroadcastReceiver() {
14 private val broadcastManager = LocalBroadcastManager.getInstance(App.getContext())
15
16 fun register() = broadcastManager.registerReceiver(this, intentFilter)
17 fun unregister() = broadcastManager.unregisterReceiver(this)
18 override fun onReceive(context: Context?, intent: Intent?) = eventHandler()
19}
diff --git a/app/src/main/java/org/pacien/tincapp/intent/action/Actions.kt b/app/src/main/java/org/pacien/tincapp/intent/action/Actions.kt
deleted file mode 100644
index ece9b68..0000000
--- a/app/src/main/java/org/pacien/tincapp/intent/action/Actions.kt
+++ /dev/null
@@ -1,14 +0,0 @@
1package org.pacien.tincapp.intent.action
2
3import org.pacien.tincapp.BuildConfig
4
5/**
6 * @author pacien
7 */
8
9private val PREFIX = "${BuildConfig.APPLICATION_ID}.intent.action"
10
11val ACTION_CONNECT = "$PREFIX.CONNECT"
12val ACTION_DISCONNECT = "$PREFIX.DISCONNECT"
13
14val TINC_SCHEME = "tinc"