iface-modem-voice: all methods available even if not enabled

This commit is contained in:
Aleksander Morgado
2019-10-17 08:31:46 +00:00
parent ed3a1264af
commit 7971844318
2 changed files with 10 additions and 142 deletions
-5
View File
@@ -168,11 +168,6 @@ context_free (Context *ctx)
static void
ensure_modem_voice (void)
{
if (mm_modem_get_state (mm_object_peek_modem (ctx->object)) < MM_MODEM_STATE_ENABLED) {
g_printerr ("error: modem not enabled yet\n");
exit (EXIT_FAILURE);
}
if (!ctx->modem_voice) {
g_printerr ("error: modem has no voice capabilities\n");
exit (EXIT_FAILURE);
+10 -137
View File
@@ -469,7 +469,6 @@ handle_delete_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleDeleteContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
MMCallList *list = NULL;
GError *error = NULL;
@@ -479,19 +478,6 @@ handle_delete_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot delete call: device not yet enabled");
handle_delete_context_free (ctx);
return;
}
g_object_get (self,
MM_IFACE_MODEM_VOICE_CALL_LIST, &list,
NULL);
@@ -559,7 +545,6 @@ handle_create_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleCreateContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
MMCallList *list = NULL;
GError *error = NULL;
MMCallProperties *properties;
@@ -571,19 +556,6 @@ handle_create_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot create CALL: device not yet enabled");
handle_create_context_free (ctx);
return;
}
/* Parse input properties */
properties = mm_call_properties_new_from_dictionary (ctx->dictionary, &error);
if (!properties) {
@@ -661,21 +633,6 @@ handle_list (MmGdbusModemVoice *skeleton,
{
GStrv paths;
MMCallList *list = NULL;
MMModemState modem_state;
modem_state = MM_MODEM_STATE_UNKNOWN;
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot list CALL messages: "
"device not yet enabled");
return TRUE;
}
g_object_get (self,
MM_IFACE_MODEM_VOICE_CALL_LIST, &list,
@@ -767,9 +724,8 @@ handle_hold_and_accept_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleHoldAndAcceptContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
GError *error = NULL;
MMCallList *list = NULL;
GError *error = NULL;
MMCallList *list = NULL;
if (!mm_base_modem_authorize_finish (self, res, &error)) {
g_dbus_method_invocation_take_error (ctx->invocation, error);
@@ -777,19 +733,6 @@ handle_hold_and_accept_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot hold and accept: device not yet enabled");
handle_hold_and_accept_context_free (ctx);
return;
}
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->hold_and_accept ||
!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->hold_and_accept_finish) {
g_dbus_method_invocation_return_error (ctx->invocation,
@@ -909,9 +852,8 @@ handle_hangup_and_accept_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleHangupAndAcceptContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
GError *error = NULL;
MMCallList *list = NULL;
GError *error = NULL;
MMCallList *list = NULL;
if (!mm_base_modem_authorize_finish (self, res, &error)) {
g_dbus_method_invocation_take_error (ctx->invocation, error);
@@ -919,19 +861,6 @@ handle_hangup_and_accept_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot hangup and accept: device not yet enabled");
handle_hangup_and_accept_context_free (ctx);
return;
}
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->hangup_and_accept ||
!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->hangup_and_accept_finish) {
g_dbus_method_invocation_return_error (ctx->invocation,
@@ -1064,9 +993,8 @@ handle_hangup_all_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleHangupAllContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
GError *error = NULL;
MMCallList *list = NULL;
GError *error = NULL;
MMCallList *list = NULL;
if (!mm_base_modem_authorize_finish (self, res, &error)) {
g_dbus_method_invocation_take_error (ctx->invocation, error);
@@ -1074,19 +1002,6 @@ handle_hangup_all_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot hangup all: device not yet enabled");
handle_hangup_all_context_free (ctx);
return;
}
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->hangup_all ||
!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->hangup_all_finish) {
g_dbus_method_invocation_return_error (ctx->invocation,
@@ -1195,9 +1110,8 @@ handle_transfer_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleTransferContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
GError *error = NULL;
MMCallList *list = NULL;
GError *error = NULL;
MMCallList *list = NULL;
if (!mm_base_modem_authorize_finish (self, res, &error)) {
g_dbus_method_invocation_take_error (ctx->invocation, error);
@@ -1205,19 +1119,6 @@ handle_transfer_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot transfer: device not yet enabled");
handle_transfer_context_free (ctx);
return;
}
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->transfer ||
!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->transfer_finish) {
g_dbus_method_invocation_return_error (ctx->invocation,
@@ -1307,8 +1208,7 @@ handle_call_waiting_setup_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleCallWaitingSetupContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
GError *error = NULL;
GError *error = NULL;
if (!mm_base_modem_authorize_finish (self, res, &error)) {
g_dbus_method_invocation_take_error (ctx->invocation, error);
@@ -1316,19 +1216,6 @@ handle_call_waiting_setup_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot setup call waiting: device not yet enabled");
handle_call_waiting_setup_context_free (ctx);
return;
}
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->call_waiting_setup ||
!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->call_waiting_setup_finish) {
g_dbus_method_invocation_return_error (ctx->invocation,
@@ -1408,8 +1295,7 @@ handle_call_waiting_query_auth_ready (MMBaseModem *self,
GAsyncResult *res,
HandleCallWaitingQueryContext *ctx)
{
MMModemState modem_state = MM_MODEM_STATE_UNKNOWN;
GError *error = NULL;
GError *error = NULL;
if (!mm_base_modem_authorize_finish (self, res, &error)) {
g_dbus_method_invocation_take_error (ctx->invocation, error);
@@ -1417,19 +1303,6 @@ handle_call_waiting_query_auth_ready (MMBaseModem *self,
return;
}
g_object_get (self,
MM_IFACE_MODEM_STATE, &modem_state,
NULL);
if (modem_state < MM_MODEM_STATE_ENABLED) {
g_dbus_method_invocation_return_error (ctx->invocation,
MM_CORE_ERROR,
MM_CORE_ERROR_WRONG_STATE,
"Cannot query call waiting: device not yet enabled");
handle_call_waiting_query_context_free (ctx);
return;
}
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->call_waiting_query ||
!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->call_waiting_query_finish) {
g_dbus_method_invocation_return_error (ctx->invocation,