[telepathy-mission-control/master] McdDispatchOperation: add accessors for the channels we're processing
Simon McVittie
simon.mcvittie at collabora.co.uk
Mon Nov 2 06:41:31 PST 2009
---
src/mcd-dispatch-operation-priv.h | 7 +++++++
src/mcd-dispatch-operation.c | 26 ++++++++++++++++++++++++++
2 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/src/mcd-dispatch-operation-priv.h b/src/mcd-dispatch-operation-priv.h
index 1f9256c..30990a7 100644
--- a/src/mcd-dispatch-operation-priv.h
+++ b/src/mcd-dispatch-operation-priv.h
@@ -76,6 +76,13 @@ G_GNUC_INTERNAL void _mcd_dispatch_operation_approve
G_GNUC_INTERNAL McdDispatchOperation *_mcd_dispatch_operation_new (
McdClientRegistry *client_registry, gboolean needs_approval,
GList *channels, const gchar * const *possible_handlers);
+
+G_GNUC_INTERNAL gboolean _mcd_dispatch_operation_has_channel (
+ McdDispatchOperation *self, McdChannel *channel);
+G_GNUC_INTERNAL const GList *_mcd_dispatch_operation_peek_channels (
+ McdDispatchOperation *self);
+G_GNUC_INTERNAL GList *_mcd_dispatch_operation_dup_channels (
+ McdDispatchOperation *self);
G_GNUC_INTERNAL void _mcd_dispatch_operation_lose_channel (
McdDispatchOperation *self, McdChannel *channel, GList **channels);
diff --git a/src/mcd-dispatch-operation.c b/src/mcd-dispatch-operation.c
index d9e11fd..04806f0 100644
--- a/src/mcd-dispatch-operation.c
+++ b/src/mcd-dispatch-operation.c
@@ -1215,3 +1215,29 @@ _mcd_dispatch_operation_set_approved (McdDispatchOperation *self)
g_return_if_fail (MCD_IS_DISPATCH_OPERATION (self));
self->priv->approved = TRUE;
}
+
+gboolean
+_mcd_dispatch_operation_has_channel (McdDispatchOperation *self,
+ McdChannel *channel)
+{
+ g_return_val_if_fail (MCD_IS_DISPATCH_OPERATION (self), FALSE);
+ return (g_list_find (self->priv->channels, channel) != NULL);
+}
+
+const GList *
+_mcd_dispatch_operation_peek_channels (McdDispatchOperation *self)
+{
+ g_return_val_if_fail (MCD_IS_DISPATCH_OPERATION (self), NULL);
+ return self->priv->channels;
+}
+
+GList *
+_mcd_dispatch_operation_dup_channels (McdDispatchOperation *self)
+{
+ GList *copy;
+
+ g_return_val_if_fail (MCD_IS_DISPATCH_OPERATION (self), NULL);
+ copy = g_list_copy (self->priv->channels);
+ g_list_foreach (copy, (GFunc) g_object_ref, NULL);
+ return copy;
+}
--
1.5.6.5
More information about the telepathy-commits
mailing list