wireguard: Implement enabling/disabling app using a stored flag

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Sunil Mohan Adapa 2020-01-15 11:00:16 -08:00 committed by James Valleroy
parent 642d44aced
commit 0bc097f37d
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808

View File

@ -84,6 +84,24 @@ class WireguardApp(app_module.App):
ports=['wireguard-freedombox'], is_external=True)
self.add(firewall)
def enable(self):
"""Enable the app by simply storing a flag in key/value store."""
from plinth import kvstore
super().enable()
kvstore.set('wireguard-enabled', True)
def disable(self):
"""Disable the app by simply storing a flag in key/value store."""
from plinth import kvstore
super().disable()
kvstore.set('wireguard-enabled', False)
def is_enabled(self):
"""Return whether all leader components are enabled and flag is set."""
from plinth import kvstore
enabled = super().is_enabled()
return enabled and kvstore.get_default('wireguard-enabled', False)
def init():
"""Initialize the module."""