[telepathy-gabble/master] Add canned capability sets for geoloc and OLPC +notify

Simon McVittie simon.mcvittie at collabora.co.uk
Tue Sep 8 04:10:09 PDT 2009


---
 src/capabilities.c |   22 ++++++++++++++++++++++
 src/capabilities.h |    4 +++-
 2 files changed, 25 insertions(+), 1 deletions(-)

diff --git a/src/capabilities.c b/src/capabilities.c
index 57a7d27..8583abb 100644
--- a/src/capabilities.c
+++ b/src/capabilities.c
@@ -87,6 +87,8 @@ static GabbleCapabilitySet *any_audio_caps = NULL;
 static GabbleCapabilitySet *any_video_caps = NULL;
 static GabbleCapabilitySet *any_transport_caps = NULL;
 static GabbleCapabilitySet *initial_caps = NULL;
+static GabbleCapabilitySet *geoloc_caps = NULL;
+static GabbleCapabilitySet *olpc_caps = NULL;
 
 const GabbleCapabilitySet *
 gabble_capabilities_get_bundle_voice_v1 (void)
@@ -124,6 +126,18 @@ gabble_capabilities_get_initial_caps (void)
   return initial_caps;
 }
 
+const GabbleCapabilitySet *
+gabble_capabilities_get_geoloc_notify (void)
+{
+  return geoloc_caps;
+}
+
+const GabbleCapabilitySet *
+gabble_capabilities_get_olpc_notify (void)
+{
+  return olpc_caps;
+}
+
 static gboolean
 omits_content_creators (LmMessageNode *identity)
 {
@@ -210,6 +224,10 @@ gabble_capabilities_init (GabbleConnection *conn)
           if (feat->feature_type == FEATURE_FIXED)
             gabble_capability_set_add (initial_caps, feat->ns);
         }
+
+      geoloc_caps = gabble_capability_set_new_from_flags (
+          PRESENCE_CAP_GEOLOCATION);
+      olpc_caps = gabble_capability_set_new_from_flags (PRESENCE_CAP_OLPC_1);
     }
 
   g_assert (feature_handles != NULL);
@@ -230,6 +248,8 @@ gabble_capabilities_finalize (GabbleConnection *conn)
       gabble_capability_set_free (any_video_caps);
       gabble_capability_set_free (any_transport_caps);
       gabble_capability_set_free (initial_caps);
+      gabble_capability_set_free (geoloc_caps);
+      gabble_capability_set_free (olpc_caps);
 
       voice_v1_caps = NULL;
       video_v1_caps = NULL;
@@ -237,6 +257,8 @@ gabble_capabilities_finalize (GabbleConnection *conn)
       any_video_caps = NULL;
       any_transport_caps = NULL;
       initial_caps = NULL;
+      geoloc_caps = NULL;
+      olpc_caps = NULL;
 
       g_object_unref (feature_handles);
       feature_handles = NULL;
diff --git a/src/capabilities.h b/src/capabilities.h
index fa73acb..56d2ce8 100644
--- a/src/capabilities.h
+++ b/src/capabilities.h
@@ -92,10 +92,12 @@ typedef gboolean (*GabbleCapabilitySetPredicate) (
 #define gabble_capability_set_predicate_at_least \
   ((GabbleCapabilitySetPredicate) gabble_capability_set_at_least)
 
-/* Some useful capability sets for Jingle */
+/* Some useful capability sets for Jingle etc. */
 const GabbleCapabilitySet *gabble_capabilities_get_any_audio (void);
 const GabbleCapabilitySet *gabble_capabilities_get_any_video (void);
 const GabbleCapabilitySet *gabble_capabilities_get_any_transport (void);
+const GabbleCapabilitySet *gabble_capabilities_get_geoloc_notify (void);
+const GabbleCapabilitySet *gabble_capabilities_get_olpc_notify (void);
 
 /* XEP-0115 version 1.3:
  *
-- 
1.5.6.5




More information about the telepathy-commits mailing list