summaryrefslogtreecommitdiff
path: root/src/nm-keep-alive.c
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2018-11-20 13:24:30 +0100
committerThomas Haller <thaller@redhat.com>2018-12-09 14:47:31 +0100
commit7578e59ba973a9b51a216d562cc9d1cb83ea3a91 (patch)
tree03a66366ac5497b0e7f157bd1f8b836b30af771e /src/nm-keep-alive.c
parenta1e811b427e63b8db5be01300f3eb50ff72fd37c (diff)
downloadNetworkManager-7578e59ba973a9b51a216d562cc9d1cb83ea3a91.tar.gz
keep-alive: rename nm_keep_alive_sink() to nm_keep_alive_arm()
The names "floating" and "sink()" are well known and good. However, "disarm()" seems the best name for the counterpart operation, better than "float()", "unsink()", or "freeze()". Since we have "nm_keep_alive_disarm()", for consitency rename - "floating" -> (not) "armed" - "sink()" -> "arm()"
Diffstat (limited to 'src/nm-keep-alive.c')
-rw-r--r--src/nm-keep-alive.c48
1 files changed, 33 insertions, 15 deletions
diff --git a/src/nm-keep-alive.c b/src/nm-keep-alive.c
index 320b9e5b98..0b3b7fabd7 100644
--- a/src/nm-keep-alive.c
+++ b/src/nm-keep-alive.c
@@ -41,7 +41,7 @@ typedef struct {
GCancellable *dbus_client_confirm_cancellable;
guint subscription_id;
- bool floating:1;
+ bool armed:1;
bool disarmed:1;
bool forced:1;
@@ -79,8 +79,14 @@ _is_alive (NMKeepAlive *self)
{
NMKeepAlivePrivate *priv = NM_KEEP_ALIVE_GET_PRIVATE (self);
- if ( priv->floating
- || priv->forced)
+ nm_assert (!priv->disarmed);
+
+ if (!priv->armed) {
+ /* before arming, the instance is always alive. */
+ return TRUE;
+ }
+
+ if (priv->forced)
return TRUE;
if ( priv->connection
@@ -122,17 +128,6 @@ nm_keep_alive_is_alive (NMKeepAlive *self)
/*****************************************************************************/
void
-nm_keep_alive_sink (NMKeepAlive *self)
-{
- NMKeepAlivePrivate *priv = NM_KEEP_ALIVE_GET_PRIVATE (self);
-
- if (priv->floating) {
- priv->floating = FALSE;
- _notify_alive (self);
- }
-}
-
-void
nm_keep_alive_set_forced (NMKeepAlive *self, gboolean forced)
{
NMKeepAlivePrivate *priv = NM_KEEP_ALIVE_GET_PRIVATE (self);
@@ -333,6 +328,30 @@ nm_keep_alive_set_dbus_client_watch (NMKeepAlive *self,
/*****************************************************************************/
/**
+ * nm_keep_alive_arm:
+ * @self: the #NMKeepAlive
+ *
+ * A #NMKeepAlive instance is unarmed by default. That means, it's
+ * alive and stays alive until being armed. Arming means, that the conditions
+ * start to be actively evaluated, that the alive state may change, and
+ * that property changed signals are emitted.
+ *
+ * The opposite is nm_keep_alive_disarm() which freezes the alive state
+ * for good. Once disarmed, the instance cannot be armed again. Arming an
+ * instance multiple times has no effect. Arming an already disarmed instance
+ * also has no effect. */
+void
+nm_keep_alive_arm (NMKeepAlive *self)
+{
+ NMKeepAlivePrivate *priv = NM_KEEP_ALIVE_GET_PRIVATE (self);
+
+ if (!priv->armed) {
+ priv->armed = TRUE;
+ _notify_alive (self);
+ }
+}
+
+/**
* nm_keep_alive_disarm:
* @self: the #NMKeepAlive instance
*
@@ -384,7 +403,6 @@ nm_keep_alive_init (NMKeepAlive *self)
{
NMKeepAlivePrivate *priv = NM_KEEP_ALIVE_GET_PRIVATE (self);
- priv->floating = TRUE;
priv->alive = TRUE;
nm_assert (priv->alive == _is_alive (self));