api,modem: deprecate the 'MaxBearers' property

This property was never initialized with a correct value, we would
always use the same value as used for MaxActiveBearers, which isn't
technically right. Just suggest to ignore this property, and flag
it as deprecated.

In addition to deprecating the API property, we will internally no
longer limit the amount of bearer objects that may be created with
different connection settings. The bearer object exposed in DBus is a
representation of the connection that may be setup, and so we can hold
as many representations as we want as long as the amount of connected
bearers doesn't exceed the maximum amount for each modem.

Leaving around the disconnected modems also serves another purpose.
Each bearer holds information about the amount of times a connection
with it has been attempted, and the amount of data transferred through
it. If we use the Simple.Connect() method to connect the modem using
different bearer settings, we won't lose the information of the past
connection attempts with different settings.
This commit is contained in:
Aleksander Morgado
2021-03-10 10:59:22 +01:00
parent 064e92e9b7
commit 35e20a48c8
7 changed files with 42 additions and 152 deletions
+9
View File
@@ -395,6 +395,8 @@ mm_modem_get_current_capabilities (MMModem *self)
/*****************************************************************************/
#ifndef MM_DISABLE_DEPRECATED
/**
* mm_modem_get_max_bearers:
* @self: a #MMModem.
@@ -412,6 +414,11 @@ mm_modem_get_current_capabilities (MMModem *self)
* Returns: the maximum number of defined packet data bearers.
*
* Since: 1.0
* Deprecated: 1.18. There is no way to query the modem how many bearers
* it supports, so the value exposed in this property in all the different
* implementations is always equal to the one retrieved with
* mm_modem_get_max_active_bearers(), so there is no point in using this
* method.
*/
guint
mm_modem_get_max_bearers (MMModem *self)
@@ -421,6 +428,8 @@ mm_modem_get_max_bearers (MMModem *self)
return mm_gdbus_modem_get_max_bearers (MM_GDBUS_MODEM (self));
}
#endif /* MM_DISABLE_DEPRECATED */
/*****************************************************************************/
/**
+3
View File
@@ -89,7 +89,10 @@ gboolean mm_modem_get_supported_capabilities (MMModem *self,
MMModemCapability mm_modem_get_current_capabilities (MMModem *self);
#ifndef MM_DISABLE_DEPRECATED
G_DEPRECATED
guint mm_modem_get_max_bearers (MMModem *self);
#endif /* MM_DISABLE_DEPRECATED */
guint mm_modem_get_max_active_bearers (MMModem *self);