base-modem: allow retrieving non-connected data ports

Bearers will ask for data ports that can be used for connections. Right now,
only one data port is expected to be handled, but we don't impose any
restriction in the API.
This commit is contained in:
Aleksander Morgado
2012-03-15 14:14:34 +01:00
parent 88077cbbe8
commit c133c3284d
2 changed files with 14 additions and 3 deletions
+13 -3
View File
@@ -302,9 +302,6 @@ mm_base_modem_grab_port (MMBaseModem *self,
if (!self->priv->data || MM_IS_AT_SERIAL_PORT (self->priv->data)) {
g_clear_object (&self->priv->data);
self->priv->data = g_object_ref (port);
/* TODO: */
/* check_valid (self); */
}
mm_dbg ("(%s/%s) port grabbed by %s",
@@ -420,6 +417,19 @@ mm_base_modem_get_port_qcdm (MMBaseModem *self)
return self->priv->qcdm;
}
MMPort *
mm_base_modem_get_best_data_port (MMBaseModem *self)
{
g_return_val_if_fail (MM_IS_BASE_MODEM (self), NULL);
/* TODO: sometime we'll have a list of available data ports to use instead
* of a single one */
return (mm_port_get_connected (self->priv->data) ?
NULL :
self->priv->data);
}
gboolean
mm_base_modem_auth_request (MMBaseModem *self,
const gchar *authorization,
+1
View File
@@ -107,6 +107,7 @@ gboolean mm_base_modem_owns_port (MMBaseModem *self,
MMAtSerialPort *mm_base_modem_get_port_primary (MMBaseModem *self);
MMAtSerialPort *mm_base_modem_get_port_secondary (MMBaseModem *self);
MMQcdmSerialPort *mm_base_modem_get_port_qcdm (MMBaseModem *self);
MMPort *mm_base_modem_get_best_data_port (MMBaseModem *self);
void mm_base_modem_set_valid (MMBaseModem *self,
gboolean valid);